-rw-r--r-- | kabc/resource.cpp | 63 |
1 files changed, 61 insertions, 2 deletions
diff --git a/kabc/resource.cpp b/kabc/resource.cpp index 9a1a5f8..9632a3f 100644 --- a/kabc/resource.cpp +++ b/kabc/resource.cpp @@ -28,15 +28,25 @@ $Id$ #include <kdebug.h> +#include <ksyncprofile.h> + #include "resource.h" using namespace KABC; -Resource::Resource( const KConfig *config ) - : KRES::Resource( config ), mAddressBook( 0 ) +Resource::Resource( const KConfig *config, bool syncable ) + : KRES::Resource( config ), mAddressBook( 0 ), mSyncProfile( 0 ) { + if(syncable == true) { + mSyncProfile = new KSyncProfile( identifier() ); + mSyncProfile->setName(resourceName()); + mSyncProfile->readConfig( (KConfig *)config ); + } } Resource::~Resource() { + if (mSyncProfile != 0) { + delete mSyncProfile; + } } @@ -44,6 +54,10 @@ void Resource::writeConfig( KConfig *config ) { KRES::Resource::writeConfig( config ); + + if(mSyncProfile != 0) + mSyncProfile->writeConfig( config ); } + void Resource::setAddressBook( AddressBook *ab ) { @@ -94,2 +108,47 @@ void Resource::cleanUp() // do nothing } + +bool Resource::isSyncable() const +{ + return (mSyncProfile != 0); +} + +/** + * This method returns the number of elements that are currently in the resource. + */ +int Resource::count() const +{ + return 0; +} + +/** + * This method removes all elements from the resource!! (Not from the addressbook) + */ +bool Resource::clear() +{ + return false; +} + +QString Resource::fileName() const +{ + return mFileName; +} + +void Resource::setFileName( const QString &fileName ) +{ + mFileName = fileName; +} + +/** + * Set the name of resource.You can override this method, + * but also remember to call Resource::setResourceName(). + */ +void Resource::setResourceName( const QString &name ) +{ + KRES::Resource::setResourceName(name); + if(mSyncProfile != 0) { + mSyncProfile->setName( name ); + } + +} + |