summaryrefslogtreecommitdiffabout
path: root/libkdepim
Side-by-side diff
Diffstat (limited to 'libkdepim') (more/less context) (show whitespace changes)
-rw-r--r--libkdepim/ksyncprefsdialog.cpp7
-rw-r--r--libkdepim/ksyncprefsdialog.h1
-rw-r--r--libkdepim/ksyncprofile.cpp4
-rw-r--r--libkdepim/ksyncprofile.h3
4 files changed, 14 insertions, 1 deletions
diff --git a/libkdepim/ksyncprefsdialog.cpp b/libkdepim/ksyncprefsdialog.cpp
index 3df2a3b..7c04f48 100644
--- a/libkdepim/ksyncprefsdialog.cpp
+++ b/libkdepim/ksyncprefsdialog.cpp
@@ -111,67 +111,70 @@ void KSyncPrefsDialog::setupSyncAlgTab()
int iii = 0;
//topLayout->addMultiCellWidget(lab , iii,iii,0,1);
//++iii;
mMyMachineName = new QLineEdit(topFrame);
lab = new QLabel(mMyMachineName, i18n("Local device name:"), topFrame);
topLayout->addWidget(lab ,iii,0);
topLayout->addWidget(mMyMachineName,iii,1);
++iii;
QHBox* buttonbox = new QHBox( topFrame);
topLayout->addMultiCellWidget(buttonbox, iii,iii,0,1);
++iii;
button = new QPushButton( i18n("New profile"), buttonbox );
connect ( button, SIGNAL( clicked()), this, SLOT (newProfile() ) );
button = new QPushButton( i18n("Clone profile"), buttonbox );
connect ( button, SIGNAL( clicked()), this, SLOT ( cloneProfile() ) );
button = new QPushButton( i18n("Delete profile"), buttonbox );
connect ( button, SIGNAL( clicked()), this, SLOT (deleteProfile() ) );
mProfileBox = new QComboBox(topFrame);
mProfileBox->setEditable ( true );
connect ( mProfileBox, SIGNAL(activated ( int ) ), this, SLOT (profileChanged( int ) ) );
connect ( mProfileBox, SIGNAL( textChanged ( const QString & ) ), this, SLOT (textChanged( const QString & ) ) );
lab = new QLabel(mProfileBox, i18n("Profile:"), topFrame);
topLayout->addWidget(lab ,iii,0);
topLayout->addWidget(mProfileBox, iii,1);
++iii;
- mIncludeInRing = new QCheckBox( i18n("Include in multiple sync"), topFrame );
+ mIncludeInRing = new QCheckBox( i18n("Include in multiple calendar sync"), topFrame );
topLayout->addMultiCellWidget(mIncludeInRing, iii,iii,0,1);
++iii;
+ mIncludeInRingAB = new QCheckBox( i18n("Include in multiple addressbook sync"), topFrame );
+ topLayout->addMultiCellWidget(mIncludeInRingAB, iii,iii,0,1);
+ ++iii;
mAskForPreferences = new QCheckBox( i18n("Ask for preferences before sync"), topFrame );
topLayout->addMultiCellWidget(mAskForPreferences, iii,iii,0,1);
++iii;
QButtonGroup* gr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Sync preferences"), topFrame);
topLayout->addMultiCellWidget(gr, iii,iii,0,1);
++iii;
loc = new QRadioButton ( i18n("Take local entry on conflict"), gr );
rem = new QRadioButton ( i18n("Take remote entry on conflict"), gr );
newest = new QRadioButton ( i18n("Take newest entry on conflict"), gr );
ask = new QRadioButton ( i18n("Ask for every entry on conflict"), gr );
f_loc= new QRadioButton ( i18n("Force: Take local entry always"), gr );
f_rem = new QRadioButton ( i18n("Force: Take remote entry always"), gr );
// both = new QRadioButton ( i18n("Take both on conflict"), gr );
mShowSummaryAfterSync = new QCheckBox( i18n("Show summary after sync"), topFrame );
topLayout->addMultiCellWidget(mShowSummaryAfterSync, iii,iii,0,1);
++iii;
mWriteBackExisting= new QCheckBox( i18n("Write back existing entries only"), topFrame );
topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1);
++iii;
mWriteBackFile = new QCheckBox( i18n("Write back file"), topFrame );
topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1);
++iii;
proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame);
gr = proGr;
topLayout->addMultiCellWidget(gr, iii,iii,0,1);
++iii;
mIsLocal = new QRadioButton ( i18n("Local file"), gr );
@@ -246,64 +249,65 @@ void KSyncPrefsDialog::textChanged( const QString & s )
{
if ( mProfileBox->count() == 0 )
return;
if ( currentSelection < 3 ) {
//KMessageBox::error(this,i18n("This profil name\ncannot be edited!\n"),i18n("KO/Pi config error"));
mProfileBox->blockSignals( true );
mProfileBox->setCurrentItem(mProfileBox-> currentItem ());
mProfileBox->blockSignals( false );
return;
}
//qDebug("cur i %d ",mProfileBox-> currentItem () );
mProfileBox->changeItem ( s, mProfileBox-> currentItem () ) ;
KSyncProfile* prof = mSyncProfiles.at(mProfileBox-> currentItem ()) ;
prof->setName( s );
mSyncProfileNames[mProfileBox-> currentItem ()] = s;
}
void KSyncPrefsDialog::profileChanged( int item )
{
//qDebug("KSyncPrefsDialog::profileChanged %d ", item );
KSyncProfile* prof;
saveProfile();
currentSelection = item;
prof = mSyncProfiles.at(item) ;
mRemotePrecommand->setText(prof->getPreSyncCommand());
mRemotePostcommand->setText(prof->getPostSyncCommand());
mLocalTempFile->setText(prof->getLocalTempFile());
mRemoteFile->setText(prof->getRemoteFileName()) ;
mShowSummaryAfterSync->setChecked( prof->getShowSummaryAfterSync());
mAskForPreferences->setChecked( prof->getAskForPreferences());
mWriteBackExisting->setChecked( prof->getWriteBackExisting() );
mWriteBackFile->setChecked( prof->getWriteBackFile());
mIncludeInRing->setChecked( prof->getIncludeInRingSync() );
+ mIncludeInRingAB->setChecked( prof->getIncludeInRingSyncAB() );
switch ( prof->getSyncPrefs() ) {
case 0:
loc->setChecked( true);
break;
case 1:
rem->setChecked( true );
break;
case 2:
newest->setChecked( true);
break;
case 3:
ask->setChecked( true);
break;
case 4:
f_loc->setChecked( true);
break;
case 5:
f_rem->setChecked( true);
break;
case 6:
//both->setChecked( true);
break;
default:
break;
}
mIsLocal->setChecked(prof->getIsLocalFileSync()) ;
mIsNotLocal->setChecked(!prof->getIsLocalFileSync());
proGr->setEnabled( item > 2 );
if ( item < 3 ) {
localFileWidget->setEnabled(false);
remoteFileWidget->setEnabled(false);
@@ -332,64 +336,65 @@ void KSyncPrefsDialog::kindChanged( bool b )
remoteFileWidget->setEnabled(!b);
}
void KSyncPrefsDialog::deleteProfile()
{
//qDebug("KSyncPrefsDialog::deleteProfile() ");
if ( currentSelection >= 0 ) {
if ( currentSelection < 3 ) {
KMessageBox::error(this,i18n("This profil cannot be deleted!\n"),i18n("KO/Pi config error"));
return;
}
KSyncProfile* temp = mSyncProfiles.at(currentSelection);
mSyncProfiles.remove( temp );
mSyncProfileNames.remove( mSyncProfileNames.at( currentSelection ));
insertProfiles();
}
}
void KSyncPrefsDialog::saveProfile()
{
KSyncProfile* prof;
if ( currentSelection >= 0 ) {
prof = mSyncProfiles.at(currentSelection) ;
prof->setPreSyncCommand( mRemotePrecommand->text());
prof->setPostSyncCommand( mRemotePostcommand->text() );
prof->setLocalTempFile( mLocalTempFile->text());
prof->setRemoteFileName( mRemoteFile->text() );
prof->setShowSummaryAfterSync( mShowSummaryAfterSync->isChecked() );
prof->setAskForPreferences( mAskForPreferences->isChecked());
prof->setWriteBackExisting(mWriteBackExisting->isChecked() );
prof->setWriteBackFile( mWriteBackFile->isChecked());
prof->setIncludeInRingSync( mIncludeInRing->isChecked() );
+ prof->setIncludeInRingSyncAB( mIncludeInRingAB->isChecked() );
int syncprefs = rem->isChecked()*1+newest->isChecked()*2+ ask->isChecked()*3+ f_loc->isChecked()*4+ f_rem->isChecked()*5 ;//+ both->isChecked()*6 ;
prof->setSyncPrefs( syncprefs);
prof->setIsLocalFileSync( mIsLocal->isChecked() );
}
}
void KSyncPrefsDialog::insertProfiles()
{
int curItem = mProfileBox->currentItem();
mProfileBox->blockSignals( true );
mProfileBox->clear();
mProfileBox->insertStringList (mSyncProfileNames );
int item = mSyncProfileNames.count() -1;
if ( curItem >= 0 && mSyncProfileNames.count() > 0 && curItem < mSyncProfileNames.count() )
mProfileBox->setCurrentItem( curItem );
else if ( item >= 0 ) {
mProfileBox->setCurrentItem( item );
}
currentSelection = -1;
if ( mSyncProfileNames.count() > 0 ) {
//qDebug(" profileChanged( mProfileBox->currentItem() ");
profileChanged( mProfileBox->currentItem() );
currentSelection = mProfileBox->currentItem();
}
mProfileBox->blockSignals( false );
}
void KSyncPrefsDialog::addProfile ( KSyncProfile* temp )
{
saveProfile();
mSyncProfiles.append( temp );
diff --git a/libkdepim/ksyncprefsdialog.h b/libkdepim/ksyncprefsdialog.h
index 90fa286..c663d22 100644
--- a/libkdepim/ksyncprefsdialog.h
+++ b/libkdepim/ksyncprefsdialog.h
@@ -56,55 +56,56 @@ class KSyncPrefsDialog : public KDialog
QString getLocalMachineName ( );
QStringList getSyncProfileNames();
public slots:
protected slots:
void accept();
void deleteProfile();
void newProfile();
void cloneProfile();
void kindChanged(bool);
void fillSSH();
void fillFTP();
void textChanged( const QString & );
void profileChanged( int );
void chooseFile();
void slotOK();
protected:
void usrWriteConfig();
void setupSyncAlgTab();
private:
int currentSelection;
QPtrList<KSyncProfile> mSyncProfiles;
QStringList mSyncProfileNames;
QLineEdit * mMyMachineName;
QComboBox * mProfileBox;
QRadioButton* mIsLocal;
QRadioButton* mIsNotLocal;
QCheckBox* mIncludeInRing;
+ QCheckBox* mIncludeInRingAB;
void addProfile ( KSyncProfile* );
void insertProfiles();
void saveProfile();
QButtonGroup* proGr;
QRadioButton* loc, *rem, *newest, *ask, *f_loc,* f_rem, *both;
QLineEdit * mRemotePostcommand;
QLineEdit * mRemotePrecommand;
QLineEdit * mRemoteFile;
QLineEdit * mLocalTempFile;
QWidget* mSetupSyncAlgTab;
QVBox* localFileWidget;
QVBox* remoteFileWidget;
QCheckBox* mWriteBackFile;
QCheckBox* mWriteBackExisting;
QCheckBox* mAskForPreferences;
QCheckBox* mShowSummaryAfterSync;
};
#endif
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp
index d6d8fa3..ea41a85 100644
--- a/libkdepim/ksyncprofile.cpp
+++ b/libkdepim/ksyncprofile.cpp
@@ -23,103 +23,107 @@
#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 )
{
setDefault();
}
KSyncProfile::~KSyncProfile()
{
}
KSyncProfile* KSyncProfile::clone()
{
KSyncProfile* myClone = new KSyncProfile();
myClone->setPreSyncCommand( mPreSyncCommand );
myClone->setPostSyncCommand( mPostSyncCommand );
myClone->setLocalTempFile( mLocalTempFile);
myClone->setRemoteFileName( mRemoteFileName );
myClone->setShowSummaryAfterSync( mShowSummaryAfterSync );
myClone->setAskForPreferences( mAskForPreferences);
myClone->setWriteBackExisting(mWriteBackExisting );
myClone->setWriteBackFile( mWriteBackFile);
myClone->setIncludeInRingSync( mIncludeInRingSync );
+ myClone->setIncludeInRingSyncAB( mIncludeInRingSyncAB );
myClone->setSyncPrefs( mSyncPrefs);
myClone->setIsLocalFileSync( mIsLocalFileSync );
myClone->setName( "noName" );
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";
mShowSummaryAfterSync = true;
mAskForPreferences = true;
mWriteBackExisting = false;
mWriteBackFile = true;
mIncludeInRingSync = false;
+ mIncludeInRingSyncAB = false;
mSyncPrefs = SYNC_PREF_ASK;
mIsLocalFileSync = true;
}
void KSyncProfile::readConfig(KConfig *config )
{
config->setGroup("SyncProfiles");
QString prefix = "Profile_"+mName+"_";
//mName = config->readEntry( prefix+ "Name", mName );
mPreSyncCommand = config->readEntry( prefix+ "PreSyncCommand",mPreSyncCommand );
mPostSyncCommand = config->readEntry( prefix+ "PostSyncCommand", mPostSyncCommand );
mIncludeInRingSync = config->readBoolEntry( prefix+ "IncludeInRingSync",mIncludeInRingSync );
+ mIncludeInRingSyncAB = config->readBoolEntry( prefix+ "IncludeInRingSyncAB",mIncludeInRingSyncAB );
mLocalTempFile = config->readEntry( prefix+ "LocalTempFile", mLocalTempFile );
mRemoteFileName = config->readEntry( prefix+ "RemoteFileName", mRemoteFileName );
mShowSummaryAfterSync = config->readBoolEntry( prefix+ "ShowSummaryAfterSync", mShowSummaryAfterSync );
mAskForPreferences = config->readBoolEntry( prefix+ "AskForPreferences",mAskForPreferences );
mWriteBackExisting = config->readBoolEntry( prefix+ "WriteBackExisting",mWriteBackExisting );
mSyncPrefs = config->readNumEntry( prefix+ "SyncPrefs", mSyncPrefs );
mIsLocalFileSync= config->readBoolEntry( prefix+ "IsLocalFileSync", mIsLocalFileSync );
}
void KSyncProfile::writeConfig( KConfig * config )
{
config->setGroup("SyncProfiles");
QString prefix = "Profile_"+mName+"_";
// config->writeEntry( prefix+ "Name", mName );
config->writeEntry( prefix+ "PreSyncCommand",mPreSyncCommand );
config->writeEntry( prefix+ "PostSyncCommand", mPostSyncCommand );
config->writeEntry( prefix+ "IncludeInRingSync",mIncludeInRingSync );
+ config->writeEntry( prefix+ "IncludeInRingSyncAB",mIncludeInRingSyncAB );
config->writeEntry( prefix+ "LocalTempFile", mLocalTempFile );
config->writeEntry( prefix+ "RemoteFileName", mRemoteFileName );
config->writeEntry( prefix+ "ShowSummaryAfterSync", mShowSummaryAfterSync );
config->writeEntry( prefix+ "AskForPreferences",mAskForPreferences );
config->writeEntry( prefix+ "WriteBackExisting",mWriteBackExisting );
config->writeEntry( prefix+ "SyncPrefs", mSyncPrefs );
config->writeEntry( prefix+ "IsLocalFileSync", mIsLocalFileSync );
}
/*
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;
};
*/
diff --git a/libkdepim/ksyncprofile.h b/libkdepim/ksyncprofile.h
index 3f7f1ac..df1b49e 100644
--- a/libkdepim/ksyncprofile.h
+++ b/libkdepim/ksyncprofile.h
@@ -50,53 +50,56 @@ class KSyncProfile : public QObject {
~KSyncProfile() ;
KSyncProfile* clone();
void setDefault();
void readConfig(KConfig *);
void writeConfig(KConfig *);
void setName( const QString& n ) {mName = n;}
QString getName( ) { return mName;}
void setPreSyncCommand( const QString& n ) {mPreSyncCommand = n;}
QString getPreSyncCommand( ) { return mPreSyncCommand; }
void setPostSyncCommand( const QString& n ) {mPostSyncCommand = n;}
QString getPostSyncCommand( ) { return mPostSyncCommand;}
void setLocalTempFile( const QString& n ) { mLocalTempFile= n;}
QString getLocalTempFile( ) { return mLocalTempFile;}
void setRemoteFileName( const QString& n ) { mRemoteFileName = n;}
QString getRemoteFileName( ) { return mRemoteFileName;}
/*
void set( const QString& n ) { = n;}
QString get( ) { return ;}
*/
void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;}
bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;}
void setAskForPreferences( bool b ) { mAskForPreferences= b;}
bool getAskForPreferences( ) { return mAskForPreferences;}
void setWriteBackExisting( bool b ) { mWriteBackExisting = b;}
bool getWriteBackExisting( ) { return mWriteBackExisting;}
void setWriteBackFile( bool b ) { mWriteBackFile= b;}
bool getWriteBackFile( ) { return mWriteBackFile;}
void setIncludeInRingSync( bool b ) {mIncludeInRingSync = b;}
bool getIncludeInRingSync( ) { return mIncludeInRingSync;}
+ void setIncludeInRingSyncAB( bool b ) {mIncludeInRingSyncAB = b;}
+ bool getIncludeInRingSyncAB( ) { return mIncludeInRingSyncAB;}
void setSyncPrefs( int n ) { mSyncPrefs= n;}
int getSyncPrefs( ) { return mSyncPrefs;}
void setIsLocalFileSync( bool b ) { mIsLocalFileSync= b;}
bool getIsLocalFileSync( ) { return mIsLocalFileSync;}
private:
QString mName;
QString mPreSyncCommand;
QString mPostSyncCommand;
QString mLocalTempFile;
QString mRemoteFileName;
bool mIncludeInRingSync;
+ bool mIncludeInRingSyncAB;
int mSyncPrefs;
bool mWriteBackFile;
bool mWriteBackExisting;
bool mAskForPreferences;
bool mShowSummaryAfterSync;
bool mIsLocalFileSync;
};
#endif