[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    playground/base/plasma/plasmate
From:       Marco Martin <notmart () gmail ! com>
Date:       2010-10-28 13:58:46
Message-ID: 20101028135846.0ABC4AC899 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1190668 by mart:

add an option to create qml plasmoids


 M  +2 -0      editors/metadata/metadataeditor.cpp  
 M  +1 -0      mainwindow.cpp  
 M  +15 -0     startpage.cpp  
 M  +1 -0      startpage.h  
 M  +10 -0     startpage.ui  
 M  +1 -0      templates/CMakeLists.txt  
 A             templates/mainPlasmoid.qml   [License: LGPL (v2+)]


--- trunk/playground/base/plasma/plasmate/editors/metadata/metadataeditor.cpp \
#1190667:1190668 @@ -193,6 +193,8 @@
             apiNames.append("Webkit");
         else if (api == QString())
             apiNames.append("C++");
+        else if (api == QString("declarativeappletscript"))
+            apiNames.append("declarativeappletscript");
         else {
             kWarning() << "Unknown API " << api;
             apiNames.append(api);
--- trunk/playground/base/plasma/plasmate/mainwindow.cpp #1190667:1190668
@@ -474,6 +474,7 @@
     preferences.writeEntry("radioButtonJsChecked", \
                m_startPage->selectedJsRadioButton());
     preferences.writeEntry("radioButtonPyChecked", \
                m_startPage->selectedPyRadioButton());
     preferences.writeEntry("radioButtonRbChecked", \
m_startPage->selectedRbRadioButton()); +    \
preferences.writeEntry("radioButtonDeChecked", m_startPage->selectedDeRadioButton()); \
preferences.sync();  
     QString packagePath = KStandardDirs::locateLocal("appdata", name + '/');
--- trunk/playground/base/plasma/plasmate/startpage.cpp #1190667:1190668
@@ -81,6 +81,7 @@
     ui->radioButtonJs->setChecked(cg.readEntry("radioButtonJsChecked", true));
     ui->radioButtonPy->setChecked(cg.readEntry("radioButtonPyChecked", false));
     ui->radioButtonRb->setChecked(cg.readEntry("radioButtonRbChecked", false));
+    ui->radioButtonDe->setChecked(cg.readEntry("radioButtonDeChecked", false));
 
     // Enforce the security restriction from package.cpp in the input field
     connect(ui->projectName, SIGNAL(textEdited(const QString&)),
@@ -156,22 +157,26 @@
         // also check this radio to prevent any disabled radios from
         // being checked due to previous setting!
         ui->radioButtonRb->setEnabled(true);
+        ui->radioButtonDe->setEnabled(true);
         ui->newProjectButton->setEnabled(!ui->projectName->text().isEmpty()); // in \
case previously falsed  } else if (sender.row() == 2) {
         ui->radioButtonJs->setEnabled(true);
         ui->radioButtonJs->setChecked(true);
         ui->radioButtonPy->setEnabled(true);
         ui->radioButtonRb->setEnabled(false);
+        ui->radioButtonDe->setEnabled(true);
         ui->newProjectButton->setEnabled(!ui->projectName->text().isEmpty()); // in \
case previously falsed  
     } else if (sender.row() == 3) {
         ui->radioButtonJs->setEnabled(false);
         ui->radioButtonPy->setEnabled(false);
         ui->radioButtonRb->setEnabled(false);
+        ui->radioButtonDe->setEnabled(false);
         ui->newProjectButton->setEnabled(false); // disable the create button too.
     } else /* if (sender.row() == 0) */ {
         ui->radioButtonJs->setEnabled(true);
         ui->radioButtonJs->setChecked(true);
+        ui->radioButtonDe->setEnabled(true);
         ui->radioButtonPy->setEnabled(true);
         ui->radioButtonRb->setEnabled(true);
         ui->newProjectButton->setEnabled(!ui->projectName->text().isEmpty()); // in \
case previously falsed @@ -206,6 +211,11 @@
     return ui->radioButtonPy->isChecked();
 }
 
+bool StartPage::selectedDeRadioButton()
+{
+    return ui->radioButtonDe->isChecked();
+}
+
 void StartPage::resetStatus()
 {
     kDebug() << "Reset status!";
@@ -320,6 +330,11 @@
         projectFolderName = generateProjectFolderName(projectNameSnakeCase);
         projectFileExtension = ".rb";
         mainScriptName = QString("main_") + projectNameSnakeCase + \
projectFileExtension; +    } else if (ui->radioButtonDe->isChecked()) {
+        metadata.setImplementationApi("declarativeappletscript");
+        projectFolderName = generateProjectFolderName(projectNameLowerCase);
+        projectFileExtension = ".qml";
+        mainScriptName = projectNameLowerCase + projectFileExtension;
     } else {
         metadata.setImplementationApi("javascript");
         projectFolderName = generateProjectFolderName(projectNameLowerCase);
--- trunk/playground/base/plasma/plasmate/startpage.h #1190667:1190668
@@ -47,6 +47,7 @@
 
     bool selectedJsRadioButton();
     bool selectedRbRadioButton();
+    bool selectedDeRadioButton();
     bool selectedPyRadioButton();
 
     void resetStatus();
--- trunk/playground/base/plasma/plasmate/startpage.ui #1190667:1190668
@@ -348,6 +348,16 @@
                   </widget>
                  </item>
                  <item>
+                  <widget class="QRadioButton" name="radioButtonDe">
+                   <property name="text">
+                    <string>Declarative</string>
+                   </property>
+                   <property name="checked">
+                    <bool>false</bool>
+                   </property>
+                  </widget>
+                 </item>
+                 <item>
                   <widget class="QRadioButton" name="radioButtonPy">
                    <property name="text">
                     <string>Python</string>
--- trunk/playground/base/plasma/plasmate/templates/CMakeLists.txt #1190667:1190668
@@ -4,5 +4,6 @@
   mainDataEngine.rb
   mainPlasmoid.js
   mainPlasmoid.py
+  mainPlasmoid.qml
   mainPlasmoid.rb
   DESTINATION ${DATA_INSTALL_DIR}/plasmate/templates) 


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic