author | ulf69 <ulf69> | 2004-08-02 18:10:42 (UTC) |
---|---|---|
committer | ulf69 <ulf69> | 2004-08-02 18:10:42 (UTC) |
commit | 09e8e7e5d4c3cafcf2b05511e5c78717fb5380e7 (patch) (side-by-side diff) | |
tree | 4060a8dad4d840c92c62c16f9c51e733da51e33c /microkde/kresources | |
parent | 7520e7cb4f10eb535efd457c539a15a0b7e52137 (diff) | |
download | kdepimpi-09e8e7e5d4c3cafcf2b05511e5c78717fb5380e7.zip kdepimpi-09e8e7e5d4c3cafcf2b05511e5c78717fb5380e7.tar.gz kdepimpi-09e8e7e5d4c3cafcf2b05511e5c78717fb5380e7.tar.bz2 |
add changes that resources can be used for syncing as well
-rw-r--r-- | microkde/kresources/managerimpl.h | 15 | ||||
-rw-r--r-- | microkde/kresources/resource.cpp | 1 | ||||
-rw-r--r-- | microkde/kresources/resource.h | 23 |
3 files changed, 34 insertions, 5 deletions
diff --git a/microkde/kresources/managerimpl.h b/microkde/kresources/managerimpl.h index a049bcc..0425279 100644 --- a/microkde/kresources/managerimpl.h +++ b/microkde/kresources/managerimpl.h @@ -20,8 +20,15 @@ the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ +/* +Enhanced Version of the file for platform independent KDE tools. +Copyright (c) 2004 Ulf Schenk + +$Id$ +*/ + #ifndef KRESOURCES_MANAGERIMPL_H #define KRESOURCES_MANAGERIMPL_H #include <qstring.h> @@ -57,9 +64,9 @@ class ManagerImplListener class ManagerImpl : public QObject { Q_OBJECT public: - ManagerImpl( const QString &family ); + ManagerImpl( const QString &family, bool syncable); ~ManagerImpl(); void readConfig( KConfig * ); void writeConfig( KConfig * ); @@ -82,8 +89,13 @@ class ManagerImpl : public QObject QStringList resourceNames(); void setListener( ManagerImplListener *listener ); + /** + Return true, if the manager manages syncable resources. + */ + bool manageSyncable() const; + public slots: void resourceChanged( Resource *resource ); private: @@ -99,8 +111,9 @@ class ManagerImpl : public QObject Resource *getResource( Resource *resource ); Resource *getResource( const QString& identifier ); QString mFamily; + bool mSyncable; KConfig *mConfig; KConfig *mStdConfig; Resource *mStandard; Factory *mFactory; diff --git a/microkde/kresources/resource.cpp b/microkde/kresources/resource.cpp index 991d53d..4f69540 100644 --- a/microkde/kresources/resource.cpp +++ b/microkde/kresources/resource.cpp @@ -190,4 +190,5 @@ void Resource::dump() const kdDebug(5650) << " ReadOnly: " << ( d->mReadOnly ? "yes" : "no" ) << endl; kdDebug(5650) << " Active: " << ( d->mActive ? "yes" : "no" ) << endl; kdDebug(5650) << " IsOpen: " << ( d->mIsOpen ? "yes" : "no" ) << endl; } + diff --git a/microkde/kresources/resource.h b/microkde/kresources/resource.h index 64e7424..c9202c9 100644 --- a/microkde/kresources/resource.h +++ b/microkde/kresources/resource.h @@ -39,8 +39,9 @@ class KConfig; namespace KRES { class ConfigWidget; +class SyncWidget; /** * @internal * @libdoc The KDE Resource library @@ -319,8 +320,13 @@ class Resource : public QObject * Returns the name of resource. */ virtual QString resourceName() const; + + + virtual bool isSyncable() const = 0; + + /** Sets, if the resource is active. */ void setActive( bool active ); @@ -337,8 +343,9 @@ class Resource : public QObject Print resource information as debug output. */ virtual void dump() const; + protected: /** * Open this resource. When called, the resource must be in * a closed state. @@ -366,33 +373,41 @@ class Resource : public QObject class PluginFactoryBase : public KLibFactory { public: - virtual Resource *resource( const KConfig *config ) = 0; + virtual Resource *resource( const KConfig *config, bool syncable ) = 0; virtual ConfigWidget *configWidget( QWidget *parent ) = 0; + virtual SyncWidget *syncWidget( QWidget *parent ) = 0; + protected: virtual QObject* createObject( QObject*, const char*, const char*, const QStringList & ) { return 0; } }; -template<class TR,class TC> +template<class TR,class TC, class TS> class PluginFactory : public PluginFactoryBase { public: - Resource *resource( const KConfig *config ) + Resource *resource( const KConfig *config, bool syncable ) { - return new TR( config ); + return new TR( config, syncable ); } ConfigWidget *configWidget( QWidget *parent ) { return new TC( parent ); } + + virtual SyncWidget *syncWidget( QWidget *parent ) + { + return new TS( parent ); + } + }; |