summaryrefslogtreecommitdiffabout
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--libkdepim/ksyncprefsdialog.cpp45
-rw-r--r--libkdepim/ksyncprefsdialog.h5
-rw-r--r--libkdepim/ksyncprofile.cpp19
-rw-r--r--libkdepim/ksyncprofile.h14
4 files changed, 80 insertions, 3 deletions
diff --git a/libkdepim/ksyncprefsdialog.cpp b/libkdepim/ksyncprefsdialog.cpp
index 8a3f4cf..6e42fd4 100644
--- a/libkdepim/ksyncprefsdialog.cpp
+++ b/libkdepim/ksyncprefsdialog.cpp
@@ -160,4 +160,7 @@ void KSyncPrefsDialog::setupSyncAlgTab()
{
QVGroupBox* topFrame = gb0;
+
+
+
mAskForPreferences = new QCheckBox( i18n("Ask for preferences before sync"), topFrame );
//topLayout->addMultiCellWidget(mAskForPreferences, iii,iii,0,1);
@@ -178,4 +181,12 @@ void KSyncPrefsDialog::setupSyncAlgTab()
//++iii;
+ QHGroupBox* gb5 = new QHGroupBox( i18n("Apply filter when adding data to local:"), topFrame);
+ QVBox * fibo2 = new QVBox ( gb5 );
+ new QLabel ( i18n("Incoming calendar filter:"), fibo2 );
+ mFilterInCal = new QComboBox( fibo2 );
+ fibo2 = new QVBox ( gb5 );
+ new QLabel ( i18n("Incoming adressbook filter:"), fibo2 );
+ mFilterInAB = new QComboBox( fibo2 );
+
mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame );
// topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1);
@@ -188,4 +199,11 @@ void KSyncPrefsDialog::setupSyncAlgTab()
QVGroupBox*topFrame = gb2;
mWriteBackExisting= new QCheckBox( i18n("Write back (on remote) existing entries only"), topFrame );
+ QHGroupBox* gb4 = new QHGroupBox( i18n("Apply filter when adding data to remote:"), topFrame);
+ QVBox * fibo = new QVBox ( gb4 );
+ new QLabel ( i18n("Outgoing calendar filter:"), fibo );
+ mFilterOutCal = new QComboBox( fibo );
+ fibo = new QVBox ( gb4 );
+ new QLabel ( i18n("Outgoing addressbook filter:"), fibo );
+ mFilterOutAB = new QComboBox( fibo );
//topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1);
//++iii;
@@ -203,4 +221,5 @@ void KSyncPrefsDialog::setupSyncAlgTab()
//++iii;
gb3->setEnabled( false );
+ connect ( mWriteBackExisting, SIGNAL( toggled ( bool ) ), gb4, SLOT ( setDisabled ( bool ) ) );
}
connect ( mWriteBackFile, SIGNAL( toggled ( bool ) ), gb2, SLOT ( setEnabled ( bool ) ) );
@@ -355,5 +374,17 @@ void KSyncPrefsDialog::readFilter()
cfgko.setGroup("General");
mFilterKopi = cfgko.readListEntry("CalendarFilters");
- mFilterKopi.prepend(i18n("No Filter") );
+ mFilterKapi = mFilterKopi;
+ mFilterOutCal->clear();
+ mFilterInCal->clear();
+ mFilterOutAB->clear();
+ mFilterInAB->clear();
+ QStringList temp = mFilterKopi;
+ temp.prepend(i18n("No Filter") );
+ mFilterOutCal->insertStringList( temp );
+ mFilterInCal->insertStringList( temp );
+ temp = mFilterKapi;
+ temp.prepend(i18n("No Filter") );
+ mFilterOutAB->insertStringList( temp );
+ mFilterInAB->insertStringList( temp );
}
@@ -431,4 +462,5 @@ void KSyncPrefsDialog::profileChanged( int item )
KSyncProfile* prof;
saveProfile();
+ readFilter();
currentSelection = item;
prof = mSyncProfiles.at(item) ;
@@ -478,4 +510,9 @@ void KSyncPrefsDialog::profileChanged( int item )
mWriteBackPastWeeks->setValue( prof->getWriteBackPastWeeks() );
+ mFilterInCal->setCurrentItem( mFilterKopi.findIndex(prof->getFilterInCal () ) + 1 );
+ mFilterOutCal->setCurrentItem( mFilterKopi.findIndex(prof->getFilterOutCal () ) + 1 );
+ mFilterInAB->setCurrentItem( mFilterKapi.findIndex(prof->getFilterInAB () ) + 1 );
+ mFilterOutAB->setCurrentItem( mFilterKapi.findIndex(prof->getFilterOutAB () ) + 1 );
+
switch ( prof->getSyncPrefs() ) {
case 0:
@@ -646,7 +683,9 @@ void KSyncPrefsDialog::saveProfile()
prof->setPhoneConnection( mPhoneConnection->text() );
prof->setPhoneModel( mPhoneModel->text() );
-
+ prof->setFilterInCal ( mFilterInCal->currentText ());
+ prof->setFilterOutCal ( mFilterOutCal ->currentText ());
+ prof->setFilterInAB ( mFilterInAB ->currentText ());
+ prof->setFilterOutAB ( mFilterOutAB ->currentText ());
}
-
}
diff --git a/libkdepim/ksyncprefsdialog.h b/libkdepim/ksyncprefsdialog.h
index 997f524..24543e1 100644
--- a/libkdepim/ksyncprefsdialog.h
+++ b/libkdepim/ksyncprefsdialog.h
@@ -101,4 +101,9 @@ class KSyncPrefsDialog : public KDialog
QButtonGroup* proGr;
+ QComboBox * mFilterOutCal;
+ QComboBox * mFilterInCal;
+ QComboBox * mFilterOutAB;
+ QComboBox * mFilterInAB;
+
QRadioButton* loc, *rem, *newest, *ask, *f_loc,* f_rem, *both;
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp
index 9f404cb..0d72fc9 100644
--- a/libkdepim/ksyncprofile.cpp
+++ b/libkdepim/ksyncprofile.cpp
@@ -82,4 +82,8 @@ KSyncProfile* KSyncProfile::clone()
myClone->setWriteContactToSIM( mWriteContactToSIM );
myClone->setName( "noName" );
+ myClone->setFilterInCal ( mFilterInCal );
+ myClone->setFilterOutCal ( mFilterOutCal );
+ myClone->setFilterInAB ( mFilterInAB );
+ myClone->setFilterOutAB ( mFilterOutAB );
//myClone->setIdentifier( "noID" );
return myClone;
@@ -134,4 +138,8 @@ void KSyncProfile::setDefault()
mPhoneConnection = "irda";
mPhoneModel = "6310i";
+ mFilterInCal = "no filter";
+ mFilterOutCal = "no filter";
+ mFilterInAB = "no filter";
+ mFilterOutAB = "no filter";
}
void KSyncProfile::readConfig(KConfig *config )
@@ -189,4 +197,10 @@ void KSyncProfile::readConfig(KConfig *config )
mIsPiSync= config->readBoolEntry( "IsPiSync", mIsPiSync );
mIsKapiFile = config->readBoolEntry( "IsKapiFile", mIsKapiFile );
+
+ mFilterInCal = config->readEntry( "FilterInCal", mFilterInCal );
+ mFilterOutCal = config->readEntry( "FilterOutCal", mFilterOutCal );
+ mFilterInAB = config->readEntry( "FilterInAB", mFilterInAB );
+ mFilterOutAB = config->readEntry( "FilterOutAB", mFilterOutAB );
+
}
else
@@ -253,4 +267,9 @@ void KSyncProfile::writeConfig( KConfig * config )
config->writeEntry( "IsPiSync", mIsPiSync );
config->writeEntry( "IsKapiFile", mIsKapiFile );
+ config->writeEntry( "FilterInCal", mFilterInCal );
+ config->writeEntry( "FilterOutCal", mFilterOutCal );
+ config->writeEntry( "FilterInAB", mFilterInAB );
+ config->writeEntry( "FilterOutAB", mFilterOutAB );
+
}
diff --git a/libkdepim/ksyncprofile.h b/libkdepim/ksyncprofile.h
index e970b50..aad63d3 100644
--- a/libkdepim/ksyncprofile.h
+++ b/libkdepim/ksyncprofile.h
@@ -105,4 +105,13 @@ class KSyncProfile : public QObject {
*/
+ void setFilterInCal (const QString& n ){ mFilterInCal = n;}
+ void setFilterOutCal (const QString& n ){ mFilterOutCal = n;}
+ void setFilterInAB (const QString& n ){ mFilterInAB = n;}
+ void setFilterOutAB (const QString& n ){ mFilterOutAB = n;}
+ QString getFilterInCal () { return mFilterInCal ;}
+ QString getFilterOutCal () { return mFilterOutCal ;}
+ QString getFilterInAB () { return mFilterInAB ;}
+ QString getFilterOutAB () { return mFilterOutAB ;}
+
void setName( const QString& n ) {mName = n;}
QString getName( ) { return mName;}
@@ -170,4 +179,9 @@ class KSyncProfile : public QObject {
QString mPhoneModel;
+ QString mFilterInCal;
+ QString mFilterOutCal;
+ QString mFilterInAB;
+ QString mFilterOutAB;
+
bool mIncludeInRingSync;
bool mIncludeInRingSyncAB;