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

List:       kde-commits
Subject:    KDE/kdelibs/plasma
From:       Aaron J. Seigo <aseigo () kde ! org>
Date:       2011-01-12 0:05:13
Message-ID: 20110112000513.DA16FAC8B3 () svn ! kde ! org
[Download RAW message or body]

SVN commit 1213879 by aseigo:

FEATURE: configurable default containment plugin name


 M  +17 -3     corona.cpp  
 M  +12 -0     corona.h  
 M  +1 -0      private/corona_p.h  


--- trunk/KDE/kdelibs/plasma/corona.cpp #1213878:1213879
@@ -92,6 +92,20 @@
     return d->mimetype;
 }
 
+void Corona::setDefaultContainmentPlugin(const QString &name)
+{
+    // we could check if it is in:
+    // Containment::listContainments().contains(name) ||
+    // Containment::listContainments(QString(), \
KGlobal::mainComponent().componentName()).contains(name) +    // but that seems like \
overkill +    d->defaultContainmentPlugin = name;
+}
+
+QString Corona::defaultContainmentPlugin() const
+{
+    return d->defaultContainmentPlugin;
+}
+
 void Corona::saveLayout(const QString &configName) const
 {
     KSharedConfigPtr c;
@@ -744,6 +758,7 @@
     : q(corona),
       immutability(Mutable),
       mimetype("text/x-plasmoidservicename"),
+      defaultContainmentPlugin("desktop"),
       config(0),
       actions(corona)
 {
@@ -874,8 +889,7 @@
     emit q->configSynced();
 }
 
-Containment *CoronaPrivate::addContainment(const QString &name, const QVariantList \
                &args,
-        uint id, bool delayedInit)
+Containment *CoronaPrivate::addContainment(const QString &name, const QVariantList \
&args, uint id, bool delayedInit)  {
     QString pluginName = name;
     Containment *containment = 0;
@@ -885,7 +899,7 @@
 
     if (pluginName.isEmpty() || pluginName == "default") {
         // default to the desktop containment
-        pluginName = "desktop";
+        pluginName = defaultContainmentPlugin;
     }
 
     bool loadingNull = pluginName == "null";
--- trunk/KDE/kdelibs/plasma/corona.h #1213878:1213879
@@ -67,6 +67,12 @@
     QString appletMimeType();
 
     /**
+     * @return the default containment plugin type
+     * @since 4.7
+     */
+    QString defaultContainmentPlugin() const;
+
+    /**
      * @return all containments on this Corona
      */
     QList<Containment*> containments() const;
@@ -479,6 +485,12 @@
      */
     void setPreferredToolBoxPlugin(const Containment::Type type, const QString \
&plugin);  
+    /**
+     * Sets the default containment plugin to try and load
+     * @since 4.7
+     */
+    void setDefaultContainmentPlugin(const QString &name);
+
     //Reimplemented from QGraphicsScene
     void dragEnterEvent(QGraphicsSceneDragDropEvent *event);
     void dragLeaveEvent(QGraphicsSceneDragDropEvent *event);
--- trunk/KDE/kdelibs/plasma/private/corona_p.h #1213878:1213879
@@ -54,6 +54,7 @@
     ImmutabilityType immutability;
     QString mimetype;
     QString configName;
+    QString defaultContainmentPlugin;
     KSharedConfigPtr config;
     QTimer configSyncTimer;
     QList<Containment*> containments;


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

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