summaryrefslogtreecommitdiffabout
path: root/libkdepim/ksyncprofile.cpp
Side-by-side diff
Diffstat (limited to 'libkdepim/ksyncprofile.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--libkdepim/ksyncprofile.cpp140
1 files changed, 79 insertions, 61 deletions
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp
index fcbb326..15dc152 100644
--- a/libkdepim/ksyncprofile.cpp
+++ b/libkdepim/ksyncprofile.cpp
@@ -1,173 +1,191 @@
/*
This file is part of KOrganizer.
Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org>
This library 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 of the License, or (at your option) any later version.
This library 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
Library General Public License for more details.
You should have received a copy of the GNU Library General Public License
along with this library; see the file COPYING.LIB. If not, write to
the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
Boston, MA 02111-1307, USA.
*/
// $Id$
#include <qcolor.h>
#include <kconfig.h>
#include <kstandarddirs.h>
#include <kglobal.h>
#include <kdebug.h>
#include "ksyncprofile.h"
-KSyncProfile::KSyncProfile( const char * name): QObject (0, name )
+KSyncProfile::KSyncProfile( const char * identifier): QObject (0, identifier )
{
- setDefault();
+ setIdentifier( identifier );
+
+ if (getIdentifier().isEmpty())
+ setIdentifier( "noID" );
+
+ setDefault();
}
KSyncProfile::~KSyncProfile()
{
}
KSyncProfile* KSyncProfile::clone()
{
KSyncProfile* myClone = new KSyncProfile();
myClone->setPreSyncCommand( mPreSyncCommand );
myClone->setPostSyncCommand( mPostSyncCommand );
myClone->setLocalTempFile( mLocalTempFile);
myClone->setRemoteFileName( mRemoteFileName );
myClone->setPreSyncCommandAB( mPreSyncCommandAB );
myClone->setPostSyncCommandAB( mPostSyncCommandAB );
myClone->setLocalTempFileAB( mLocalTempFileAB);
myClone->setRemoteFileNameAB( mRemoteFileNameAB );
myClone->setShowSummaryAfterSync( mShowSummaryAfterSync );
myClone->setAskForPreferences( mAskForPreferences);
myClone->setWriteBackExisting(mWriteBackExisting );
myClone->setWriteBackFile( mWriteBackFile);
myClone->setWriteBackFuture( mWriteBackFuture );
myClone->setWriteBackFutureWeeks( mWriteBackFutureWeeks );
myClone->setIncludeInRingSync( mIncludeInRingSync );
myClone->setIncludeInRingSyncAB( mIncludeInRingSyncAB );
myClone->setSyncPrefs( mSyncPrefs);
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";
mRemoteFileName = "/home/polo/kdepim/apps/korganizer/localfile.ics";
mPreSyncCommandAB = i18n("command for downloading remote file to local device");
mPostSyncCommandAB = i18n("command for uploading local temp file to remote device");
mLocalTempFileAB = "/tmp/std.vcf";
mRemoteFileNameAB = "/home/polo/kdepim/apps/kabc/localfile.vcf";
mShowSummaryAfterSync = true;
mAskForPreferences = true;
mWriteBackExisting = false;
mWriteBackFuture = false;
mWriteBackFutureWeeks = 12;
mWriteBackFile = true;
mIncludeInRingSync = false;
mIncludeInRingSyncAB = false;
mSyncPrefs = SYNC_PREF_ASK;
mIsLocalFileSync = true;
- mIsPhoneSync = false;
+ 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 );
}
/*
class KPrefsItemInt : public KPrefsItem {
public:
KPrefsItemInt(const QString &group,const QString &name,int *,int defaultValue=0);
virtual ~KPrefsItemInt() {}
-
+
void setDefault();
void readConfig(KConfig *);
void writeConfig(KConfig *);
private:
int *mReference;
int mDefault;
};
*/