[Kst] extragear/graphics/kst/src

Adam Treat treat at kde.org
Tue Nov 28 23:08:30 CET 2006


SVN commit 608916 by treat:

* Modify PluginCollection to return a list of the readable plugin names.
* Adjust the various plugins to all have uniform readable names.
* Upshot is that datamanager and other dialogs can now use the human readable names.


 M  +10 -2     libkstapp/kstdatamanager_i.cpp  
 M  +10 -0     libkstmath/plugincollection.cpp  
 M  +8 -0      libkstmath/plugincollection.h  
 M  +1 -1      plugins/bin/bin.xml  
 M  +1 -1      plugins/chop/chop.xml  
 M  +1 -1      plugins/fits_nonlinear/gaussian/kstfit_gaussian.xml  
 M  +1 -1      plugins/fits_nonlinear/gaussian_weighted/kstfit_gaussian_weighted.xml  
 M  +1 -1      plugins/fits_nonlinear/lorentzian/kstfit_lorentzian.xml  
 M  +1 -1      plugins/fits_nonlinear/lorentzian_weighted/kstfit_lorentzian_weighted.xml  
 M  +1 -1      plugins/interpolations/akima/kstinterp_akima.xml  
 M  +1 -1      plugins/interpolations/akima_periodic/kstinterp_akima_periodic.xml  
 M  +1 -1      plugins/periodogram/periodogram.xml  
 M  +1 -1      plugins/phase/phase.xml  
 M  +1 -1      plugins/statistics/statistics.xml  
 M  +1 -1      plugins/syncbin/syncbin.xml  


--- trunk/extragear/graphics/kst/src/libkstapp/kstdatamanager_i.cpp #608915:608916
@@ -920,7 +920,15 @@
   l += newPlugins;
 
   //The old C style plugins...
-  const QStringList oldPlugins = PluginCollection::self()->pluginNameList().keys();
+  QStringList oldPlugins;
+
+  const QMap<QString,QString> readable =
+    PluginCollection::self()->readableNameList();
+  QMap<QString,QString>::const_iterator it = readable.begin();
+  for (; it != readable.end(); ++it) {
+    oldPlugins << it.key();
+  }
+
   l += oldPlugins;
 
   bool ok = false;
@@ -955,7 +963,7 @@
     KstDataObjectPtr ptr = KstDataObject::plugin(p);
     ptr->showDialog();
   } else if ( oldPlugins.contains( p ) ) {
-      KstPluginDialogI::globalInstance()->showNew(p);
+      KstPluginDialogI::globalInstance()->showNew(readable[p]);
   }
 }
 
--- trunk/extragear/graphics/kst/src/libkstmath/plugincollection.cpp #608915:608916
@@ -96,6 +96,7 @@
 
     _installedPlugins[xmlfile] = _parser->data();
     _installedPluginNames[_parser->data()._name] = xmlfile;
+    _installedReadablePluginNames[_parser->data()._readableName] = _parser->data()._name;
   }
 
   QString name = _installedPlugins[xmlfile]._name;
@@ -192,6 +193,11 @@
 }
 
 
+const QMap<QString, QString>& PluginCollection::readableNameList() const {
+  return _installedReadablePluginNames;
+}
+
+
 void PluginCollection::rescan() {
   // Make me smarter
   scanPlugins();
@@ -202,6 +208,7 @@
   QMap<QString,QString> backup = _installedPluginNames;
   _installedPlugins.clear();
   _installedPluginNames.clear();
+  _installedReadablePluginNames.clear();
   bool changed = false;
 
   QStringList dirs = KGlobal::dirs()->resourceDirs("kstplugins");
@@ -233,6 +240,7 @@
         }
         _installedPlugins[*it + fi->fileName()] = _parser->data();
         _installedPluginNames[_parser->data()._name] = *it + fi->fileName();
+        _installedReadablePluginNames[_parser->data()._readableName] = _parser->data()._name;
         if (!backup.contains(_parser->data()._name)) {
           emit pluginInstalled(_parser->data()._name);
           changed = true;
@@ -260,6 +268,7 @@
 
 int PluginCollection::deletePlugin(const QString& xmlfile, const QString& object) {
   QString pname = _installedPlugins[xmlfile]._name;
+  QString rname = _installedPlugins[xmlfile]._readableName;
   QFile::remove(xmlfile);
   if (object.isEmpty()) {
     QString f = xmlfile;
@@ -271,6 +280,7 @@
 
   _installedPlugins.remove(xmlfile);
   _installedPluginNames.remove(pname);
+  _installedReadablePluginNames.remove(rname);
   emit pluginRemoved(pname);
 
   return 0;
--- trunk/extragear/graphics/kst/src/libkstmath/plugincollection.h #608915:608916
@@ -73,6 +73,12 @@
   const QMap<QString, QString>& pluginNameList() const;
 
   /**
+   *  Returns the map of all plugins available (cheap).
+   *  Map is <ReadableName, PluginName>
+   */
+  const QMap<QString, QString>& readableNameList() const;
+
+  /**
    *  Returns the list of all plugins loaded (cheap).
    */
   QStringList loadedPluginList() const;
@@ -109,6 +115,8 @@
     mutable QMap<QString, Plugin::Data> _installedPlugins;
     // Map: Plugin Name -> XMLFILE
     mutable QMap<QString, QString> _installedPluginNames;
+    // Map: Readable Name -> Plugin Name
+    mutable QMap<QString, QString> _installedReadablePluginNames;
     void scanPlugins() ;
     void loadPluginsFor(const QString& path);
 };
--- trunk/extragear/graphics/kst/src/plugins/bin/bin.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="bin"/>    <!-- The name of the module -->
+<modulename name="bin" readableName="Bin"/>    <!-- The name of the module -->
 <author name="Rick Chern"/> <!-- The name of the author -->
 <description text="Bins data into the given size bins.  Each bin contains the mean of the elements belonging to the bin."/>
                                 <!-- A description of the module -->
--- trunk/extragear/graphics/kst/src/plugins/chop/chop.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="chop"/>
+<modulename name="chop" readableName="Chop"/>
 <author name="Andrew Walker"/>
 <description text="Chops a given data set into odd, even, difference, and Index data sets."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/fits_nonlinear/gaussian/kstfit_gaussian.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="kstfit_gaussian" readableName="Fit Gaussian"/>
+<modulename name="kstfit_gaussian" readableName="Fit gaussian"/>
 <author name="Andrew Walker"/>
 <description text="Generates a Gaussian fit for a set of data."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/fits_nonlinear/gaussian_weighted/kstfit_gaussian_weighted.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="kstfit_gaussian_weighted" readableName="Fit Gaussian weighted"/>
+<modulename name="kstfit_gaussian_weighted" readableName="Fit gaussian weighted"/>
 <author name="Andrew Walker"/>
 <description text="Generates a Gaussian weighted fit for a set of data."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/fits_nonlinear/lorentzian/kstfit_lorentzian.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="kstfit_lorentzian" readableName="Fit Lorentzian"/>
+<modulename name="kstfit_lorentzian" readableName="Fit lorentzian"/>
 <author name="Andrew Walker"/>
 <description text="Generates a Lorentzian fit for a set of data."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/fits_nonlinear/lorentzian_weighted/kstfit_lorentzian_weighted.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="kstfit_lorentzian_weighted" readableName="Fit Lorentzian weighted"/>
+<modulename name="kstfit_lorentzian_weighted" readableName="Fit lorentzian weighted"/>
 <author name="Andrew Walker"/>
 <description text="Generates a Lorentzian weighted fit for a set of data."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/interpolations/akima/kstinterp_akima.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="kstinterp_akima" readableName="Interpolation Akima spline"/>
+<modulename name="kstinterp_akima" readableName="Interpolation akima spline"/>
 <author name="Andrew Walker"/>
 <description text="Generates a non-rounded Akima interpolation for a set of data."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/interpolations/akima_periodic/kstinterp_akima_periodic.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="kstinterp_akima_periodic" readableName="Interpolation Akima spline periodic"/>
+<modulename name="kstinterp_akima_periodic" readableName="Interpolation akima spline periodic"/>
 <author name="Andrew Walker"/>
 <description text="Generates a non-rounded periodic Akima interpolation for a set of data."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/periodogram/periodogram.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="periodogram"/>
+<modulename name="periodogram" readableName="Periodogram"/>
 <author name="Andrew Walker"/>
 <description text="Takes the periodogram of a given data set. The data is not assumed to be sampled at equal time intervals."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/phase/phase.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="phase"/>
+<modulename name="phase" readableName="Phase"/>
 <author name="Andrew Walker"/>
 <description text="Phases a given data set to the specified period and zero phase."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/statistics/statistics.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="statistics"/>
+<modulename name="statistics" readableName="Statistics"/>
 <author name="Andrew Walker"/>
 <description text="Determines statistics for a given data set."/>
 <version minor="1" major="0"/>
--- trunk/extragear/graphics/kst/src/plugins/syncbin/syncbin.xml #608915:608916
@@ -2,7 +2,7 @@
 <!DOCTYPE Module SYSTEM "file:/Repository/Level2/Soft/ProC/moduledef.dtd">
 <module>
 <intro>
-<modulename name="syncbin"/>    <!-- The name of the module -->
+<modulename name="syncbin" readableName="Syncbin"/>    <!-- The name of the module -->
 <author name="Barth Netterfield"/> <!-- The name of the author -->
 <description text="Synchronously coadd vector Y into bins defined by vector X.  Like a 1D map."/>
  <!-- A description of the module -->


More information about the Kst mailing list