// Copyright 2008 Simon Edwards // Generated by twine // This program is free software; you can redistribute it and/or modify // it under the terms of the GNU Library General Public License as // published by the Free Software Foundation; either version 2, or // (at your option) any later version. // This program is distributed in the hope that it will be useful, // but WITHOUT ANY WARRANTY; without even the implied warranty of // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the // GNU General Public License for more details // You should have received a copy of the GNU Library General Public // License along with this program; if not, write to the // Free Software Foundation, Inc., // 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. namespace Plasma { class DataEngineScript : Plasma::ScriptEngine { %TypeHeaderCode #include %End public: explicit DataEngineScript (QObject* parent /TransferThis/ = 0); void setDataEngine (Plasma::DataEngine* dataEngine); Plasma::DataEngine* dataEngine () const; virtual QStringList sources () const; virtual bool sourceRequestEvent (const QString& name); virtual bool updateSourceEvent (const QString& source); virtual Plasma::Service* serviceForSource (const QString& source); protected: QString mainScript () const; const Plasma::Package* package () const; void setData (const QString& source, const QString& key, const QVariant& value); void setData (const QString& source, const QVariant& value); void removeAllData (const QString& source); void removeData (const QString& source, const QString& key); void setMaxSourceCount (uint limit); void setMinimumPollingInterval (int minimumMs); int minimumPollingInterval () const; void setPollingInterval (uint frequency); void removeAllSources (); public: ~DataEngineScript (); protected: void addSource (Plasma::DataContainer* source); Plasma::DataEngine::SourceDict containerDict () const; void setName (const QString& name); void setIcon (const QString& icon); void scheduleSourcesUpdated (); void removeSource (const QString& source); void updateAllSources (); void forceImmediateUpdateOfAllVisualizations (); KPluginInfo description () const; void setData (const QString& source, const Plasma::DataEngine::Data& values); }; // DataEngineScript }; // Plasma