-rw-r--r-- | libkdepim/ksyncprofile.cpp | 134 |
1 files changed, 76 insertions, 58 deletions
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp index fcbb326..15dc152 100644 --- a/libkdepim/ksyncprofile.cpp +++ b/libkdepim/ksyncprofile.cpp @@ -30,8 +30,13 @@ #include "ksyncprofile.h" -KSyncProfile::KSyncProfile( const char * name): QObject (0, name ) +KSyncProfile::KSyncProfile( const char * identifier): QObject (0, identifier ) { + setIdentifier( identifier ); + + if (getIdentifier().isEmpty()) + setIdentifier( "noID" ); + setDefault(); } KSyncProfile::~KSyncProfile() @@ -63,13 +68,13 @@ KSyncProfile* KSyncProfile::clone() myClone->setIsLocalFileSync( mIsLocalFileSync ); myClone->setIsPhoneSync( mIsPhoneSync ); myClone->setName( "noName" ); + myClone->setIdentifier( "noID" ); return myClone; } void KSyncProfile::setDefault() { - mName = "noName"; mPreSyncCommand = i18n("command for downloading remote file to local device"); mPostSyncCommand = i18n("command for uploading local temp file to remote device"); mLocalTempFile = "/tmp/mycalendar.ics"; @@ -88,72 +93,85 @@ void KSyncProfile::setDefault() mIncludeInRingSyncAB = false; mSyncPrefs = SYNC_PREF_ASK; mIsLocalFileSync = true; + mName = "noName"; mIsPhoneSync = false; mPhoneDevice = "/dev/ircomm"; mPhoneConnection = "irda"; mPhoneModel = "6310i"; - } void KSyncProfile::readConfig(KConfig *config ) { - config->setGroup(mName); - QString prefix = ""; - //mName = config->readEntry( prefix+ "Name", mName ); - mPreSyncCommand = config->readEntry( prefix+ "PreSyncCommand",mPreSyncCommand ); - mPostSyncCommand = config->readEntry( prefix+ "PostSyncCommand", mPostSyncCommand );; - mLocalTempFile = config->readEntry( prefix+ "LocalTempFile", mLocalTempFile ); - mRemoteFileName = config->readEntry( prefix+ "RemoteFileName", mRemoteFileName ); - - mPreSyncCommandAB = config->readEntry( prefix+ "PreSyncCommandAB",mPreSyncCommandAB ); - mPostSyncCommandAB = config->readEntry( prefix+ "PostSyncCommandAB", mPostSyncCommandAB ); - mLocalTempFileAB = config->readEntry( prefix+ "LocalTempFileAB", mLocalTempFileAB ); - mRemoteFileNameAB = config->readEntry( prefix+ "RemoteFileNameAB", mRemoteFileNameAB ); - - - mPhoneDevice = config->readEntry( prefix+ "PhoneDevice", mPhoneDevice ); - mPhoneConnection = config->readEntry( prefix+ "PhoneConnection", mPhoneConnection ); - mPhoneModel = config->readEntry( prefix+ "PhoneModel", mPhoneModel ); - - mIncludeInRingSync = config->readBoolEntry( prefix+ "IncludeInRingSync",mIncludeInRingSync ); - mIncludeInRingSyncAB = config->readBoolEntry( prefix+ "IncludeInRingSyncAB",mIncludeInRingSyncAB ); - mShowSummaryAfterSync = config->readBoolEntry( prefix+ "ShowSummaryAfterSync", mShowSummaryAfterSync ); - mAskForPreferences = config->readBoolEntry( prefix+ "AskForPreferences",mAskForPreferences ); - mWriteBackExisting = config->readBoolEntry( prefix+ "WriteBackExisting",mWriteBackExisting ); - mWriteBackFuture = config->readBoolEntry( prefix+ "WriteBackFuture",mWriteBackFuture ); - mSyncPrefs = config->readNumEntry( prefix+ "SyncPrefs", mSyncPrefs ); - mWriteBackFutureWeeks = config->readNumEntry( prefix+ "WriteBackFutureWeeks", mWriteBackFutureWeeks ); - mIsLocalFileSync= config->readBoolEntry( prefix+ "IsLocalFileSync", mIsLocalFileSync ); - mIsPhoneSync= config->readBoolEntry( prefix+ "IsPhoneSync", mIsPhoneSync ); + if (config) + { + + config->setGroup("SyncProfile_" + mIdentifier); + + mName = config->readEntry( "Name", mName ); + mPreSyncCommand = config->readEntry( "PreSyncCommand",mPreSyncCommand ); + mPostSyncCommand = config->readEntry( "PostSyncCommand", mPostSyncCommand ); + mLocalTempFile = config->readEntry( "LocalTempFile", mLocalTempFile ); + mRemoteFileName = config->readEntry( "RemoteFileName", mRemoteFileName ); + + mPreSyncCommandAB = config->readEntry( "PreSyncCommandAB",mPreSyncCommandAB ); + mPostSyncCommandAB = config->readEntry( "PostSyncCommandAB", mPostSyncCommandAB ); + mLocalTempFileAB = config->readEntry( "LocalTempFileAB", mLocalTempFileAB ); + mRemoteFileNameAB = config->readEntry( "RemoteFileNameAB", mRemoteFileNameAB ); + + mPhoneDevice = config->readEntry( "PhoneDevice", mPhoneDevice ); + mPhoneConnection = config->readEntry( "PhoneConnection", mPhoneConnection ); + mPhoneModel = config->readEntry( "PhoneModel", mPhoneModel ); + + mIncludeInRingSync = config->readBoolEntry( "IncludeInRingSync",mIncludeInRingSync ); + mIncludeInRingSyncAB = config->readBoolEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB ); + mShowSummaryAfterSync = config->readBoolEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync ); + mAskForPreferences = config->readBoolEntry( "AskForPreferences",mAskForPreferences ); + mWriteBackExisting = config->readBoolEntry( "WriteBackExisting",mWriteBackExisting ); + mWriteBackFuture = config->readBoolEntry( "WriteBackFuture",mWriteBackFuture ); + mSyncPrefs = config->readNumEntry( "SyncPrefs", mSyncPrefs ); + mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks ); + mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync ); + mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync ); } + else + { + setDefault(); + } +} + +void KSyncProfile::deleteConfig(KConfig *config ) +{ + config->deleteGroup( "SyncProfile_" + mIdentifier ); +} + void KSyncProfile::writeConfig( KConfig * config ) { - config->setGroup(mName ); - QString prefix = ""; - // config->writeEntry( prefix+ "Name", mName ); - config->writeEntry( prefix+ "PreSyncCommand",mPreSyncCommand ); - config->writeEntry( prefix+ "PostSyncCommand", mPostSyncCommand ); - config->writeEntry( prefix+ "LocalTempFile", mLocalTempFile ); - config->writeEntry( prefix+ "RemoteFileName", mRemoteFileName ); - - config->writeEntry( prefix+ "PreSyncCommandAB",mPreSyncCommandAB ); - config->writeEntry( prefix+ "PostSyncCommandAB", mPostSyncCommandAB ); - config->writeEntry( prefix+ "LocalTempFileAB", mLocalTempFileAB ); - config->writeEntry( prefix+ "RemoteFileNameAB", mRemoteFileNameAB ); - - config->writeEntry( prefix+ "PhoneDevice", mPhoneDevice ); - config->writeEntry( prefix+ "PhoneConnection", mPhoneConnection ); - config->writeEntry( prefix+ "PhoneModel", mPhoneModel ); - - config->writeEntry( prefix+ "IncludeInRingSync",mIncludeInRingSync ); - config->writeEntry( prefix+ "IncludeInRingSyncAB",mIncludeInRingSyncAB ); - config->writeEntry( prefix+ "ShowSummaryAfterSync", mShowSummaryAfterSync ); - config->writeEntry( prefix+ "AskForPreferences",mAskForPreferences ); - config->writeEntry( prefix+ "WriteBackExisting",mWriteBackExisting ); - config->writeEntry( prefix+ "WriteBackFuture",mWriteBackFuture ); - config->writeEntry( prefix+ "SyncPrefs", mSyncPrefs ); - config->writeEntry( prefix+ "WriteBackFutureWeeks", mWriteBackFutureWeeks); - config->writeEntry( prefix+ "IsLocalFileSync", mIsLocalFileSync ); - config->writeEntry( prefix+ "IsPhoneSync", mIsPhoneSync ); + config->setGroup("SyncProfile_" + mIdentifier); + + config->writeEntry( "Name", mName ); + config->writeEntry( "PreSyncCommand",mPreSyncCommand ); + config->writeEntry( "PostSyncCommand", mPostSyncCommand ); + config->writeEntry( "LocalTempFile", mLocalTempFile ); + config->writeEntry( "RemoteFileName", mRemoteFileName ); + + config->writeEntry( "PreSyncCommandAB",mPreSyncCommandAB ); + config->writeEntry( "PostSyncCommandAB", mPostSyncCommandAB ); + config->writeEntry( "LocalTempFileAB", mLocalTempFileAB ); + config->writeEntry( "RemoteFileNameAB", mRemoteFileNameAB ); + + config->writeEntry( "PhoneDevice", mPhoneDevice ); + config->writeEntry( "PhoneConnection", mPhoneConnection ); + config->writeEntry( "PhoneModel", mPhoneModel ); + + config->writeEntry( "IncludeInRingSync",mIncludeInRingSync ); + config->writeEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB ); + config->writeEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync ); + config->writeEntry( "AskForPreferences",mAskForPreferences ); + config->writeEntry( "WriteBackExisting",mWriteBackExisting ); + config->writeEntry( "WriteBackFuture",mWriteBackFuture ); + config->writeEntry( "SyncPrefs", mSyncPrefs ); + config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks); + config->writeEntry( "IsLocalFileSync", mIsLocalFileSync ); + config->writeEntry( "IsPhoneSync", mIsPhoneSync ); } /* |