summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore 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
@@ -156,12 +156,15 @@ void KSyncPrefsDialog::setupSyncAlgTab()
156 QVGroupBox* gb0 = new QVGroupBox( i18n("Sync algo options"), topFrame); 156 QVGroupBox* gb0 = new QVGroupBox( i18n("Sync algo options"), topFrame);
157 topLayout->addMultiCellWidget(gb0, iii,iii,0,1); 157 topLayout->addMultiCellWidget(gb0, iii,iii,0,1);
158 ++iii; 158 ++iii;
159 QButtonGroup* gr; 159 QButtonGroup* gr;
160 { 160 {
161 QVGroupBox* topFrame = gb0; 161 QVGroupBox* topFrame = gb0;
162
163
164
162 mAskForPreferences = new QCheckBox( i18n("Ask for preferences before sync"), topFrame ); 165 mAskForPreferences = new QCheckBox( i18n("Ask for preferences before sync"), topFrame );
163 //topLayout->addMultiCellWidget(mAskForPreferences, iii,iii,0,1); 166 //topLayout->addMultiCellWidget(mAskForPreferences, iii,iii,0,1);
164 //++iii; 167 //++iii;
165 gr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Sync preferences"), topFrame); 168 gr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Sync preferences"), topFrame);
166 //topLayout->addMultiCellWidget(gr, iii,iii,0,1); 169 //topLayout->addMultiCellWidget(gr, iii,iii,0,1);
167 //++iii; 170 //++iii;
@@ -174,22 +177,37 @@ void KSyncPrefsDialog::setupSyncAlgTab()
174 // both = new QRadioButton ( i18n("Take both on conflict"), gr ); 177 // both = new QRadioButton ( i18n("Take both on conflict"), gr );
175 178
176 mShowSummaryAfterSync = new QCheckBox( i18n("Show summary after sync"), topFrame ); 179 mShowSummaryAfterSync = new QCheckBox( i18n("Show summary after sync"), topFrame );
177 //topLayout->addMultiCellWidget(mShowSummaryAfterSync, iii,iii,0,1); 180 //topLayout->addMultiCellWidget(mShowSummaryAfterSync, iii,iii,0,1);
178 //++iii; 181 //++iii;
179 182
183 QHGroupBox* gb5 = new QHGroupBox( i18n("Apply filter when adding data to local:"), topFrame);
184 QVBox * fibo2 = new QVBox ( gb5 );
185 new QLabel ( i18n("Incoming calendar filter:"), fibo2 );
186 mFilterInCal = new QComboBox( fibo2 );
187 fibo2 = new QVBox ( gb5 );
188 new QLabel ( i18n("Incoming adressbook filter:"), fibo2 );
189 mFilterInAB = new QComboBox( fibo2 );
190
180 mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame ); 191 mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame );
181 // topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1); 192 // topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1);
182 // ++iii; 193 // ++iii;
183 194
184 QVGroupBox* gb2 = new QVGroupBox( i18n("Write back options"), topFrame); 195 QVGroupBox* gb2 = new QVGroupBox( i18n("Write back options"), topFrame);
185 //topLayout->addMultiCellWidget(gb2, iii,iii,0,1); 196 //topLayout->addMultiCellWidget(gb2, iii,iii,0,1);
186 //++iii; 197 //++iii;
187 { 198 {
188 QVGroupBox*topFrame = gb2; 199 QVGroupBox*topFrame = gb2;
189 mWriteBackExisting= new QCheckBox( i18n("Write back (on remote) existing entries only"), topFrame ); 200 mWriteBackExisting= new QCheckBox( i18n("Write back (on remote) existing entries only"), topFrame );
201 QHGroupBox* gb4 = new QHGroupBox( i18n("Apply filter when adding data to remote:"), topFrame);
202 QVBox * fibo = new QVBox ( gb4 );
203 new QLabel ( i18n("Outgoing calendar filter:"), fibo );
204 mFilterOutCal = new QComboBox( fibo );
205 fibo = new QVBox ( gb4 );
206 new QLabel ( i18n("Outgoing addressbook filter:"), fibo );
207 mFilterOutAB = new QComboBox( fibo );
190 //topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1); 208 //topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1);
191 //++iii; 209 //++iii;
192 mWriteBackFuture= new QCheckBox( i18n("Write back (calendar) entries for time period only"), topFrame ); 210 mWriteBackFuture= new QCheckBox( i18n("Write back (calendar) entries for time period only"), topFrame );
193 //topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1); 211 //topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1);
194 //++iii; 212 //++iii;
195 QHGroupBox* gb3 = new QHGroupBox( i18n("Time period"), topFrame); 213 QHGroupBox* gb3 = new QHGroupBox( i18n("Time period"), topFrame);
@@ -199,12 +217,13 @@ void KSyncPrefsDialog::setupSyncAlgTab()
199 new QLabel( i18n(" weeks in the past to ") , gb3 ); 217 new QLabel( i18n(" weeks in the past to ") , gb3 );
200 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, gb3); 218 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, gb3);
201 new QLabel( i18n(" weeks in the future ") , gb3 ); 219 new QLabel( i18n(" weeks in the future ") , gb3 );
202 //topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1); 220 //topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1);
203 //++iii; 221 //++iii;
204 gb3->setEnabled( false ); 222 gb3->setEnabled( false );
223 connect ( mWriteBackExisting, SIGNAL( toggled ( bool ) ), gb4, SLOT ( setDisabled ( bool ) ) );
205 } 224 }
206 connect ( mWriteBackFile, SIGNAL( toggled ( bool ) ), gb2, SLOT ( setEnabled ( bool ) ) ); 225 connect ( mWriteBackFile, SIGNAL( toggled ( bool ) ), gb2, SLOT ( setEnabled ( bool ) ) );
207 226
208 } 227 }
209 proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame); 228 proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame);
210 gr = proGr; 229 gr = proGr;
@@ -351,13 +370,25 @@ void KSyncPrefsDialog::readFilter()
351 mFilterKopi.append(i18n("No Filter") ); 370 mFilterKopi.append(i18n("No Filter") );
352 mFilterKapi.append(i18n("No Filter") ); 371 mFilterKapi.append(i18n("No Filter") );
353 KConfig cfgko(locateLocal("config","korganizerrc")); 372 KConfig cfgko(locateLocal("config","korganizerrc"));
354 KConfig cfgka(locateLocal("config","kaddressbookrc")); 373 KConfig cfgka(locateLocal("config","kaddressbookrc"));
355 cfgko.setGroup("General"); 374 cfgko.setGroup("General");
356 mFilterKopi = cfgko.readListEntry("CalendarFilters"); 375 mFilterKopi = cfgko.readListEntry("CalendarFilters");
357 mFilterKopi.prepend(i18n("No Filter") ); 376 mFilterKapi = mFilterKopi;
377 mFilterOutCal->clear();
378 mFilterInCal->clear();
379 mFilterOutAB->clear();
380 mFilterInAB->clear();
381 QStringList temp = mFilterKopi;
382 temp.prepend(i18n("No Filter") );
383 mFilterOutCal->insertStringList( temp );
384 mFilterInCal->insertStringList( temp );
385 temp = mFilterKapi;
386 temp.prepend(i18n("No Filter") );
387 mFilterOutAB->insertStringList( temp );
388 mFilterInAB->insertStringList( temp );
358} 389}
359 390
360 391
361void KSyncPrefsDialog::slotOK() 392void KSyncPrefsDialog::slotOK()
362{ 393{
363 if ( mMyMachineName->text() == "undefined" ) { 394 if ( mMyMachineName->text() == "undefined" ) {
@@ -427,12 +458,13 @@ void KSyncPrefsDialog::textChanged( const QString & s )
427} 458}
428void KSyncPrefsDialog::profileChanged( int item ) 459void KSyncPrefsDialog::profileChanged( int item )
429{ 460{
430 //qDebug("KSyncPrefsDialog::profileChanged before %d, count %d ", item, mProfileBox->count() ); 461 //qDebug("KSyncPrefsDialog::profileChanged before %d, count %d ", item, mProfileBox->count() );
431 KSyncProfile* prof; 462 KSyncProfile* prof;
432 saveProfile(); 463 saveProfile();
464 readFilter();
433 currentSelection = item; 465 currentSelection = item;
434 prof = mSyncProfiles.at(item) ; 466 prof = mSyncProfiles.at(item) ;
435 467
436 mRemotePw->setText(prof->getRemotePw()); 468 mRemotePw->setText(prof->getRemotePw());
437 mRemoteIP->setText(prof->getRemoteIP()); 469 mRemoteIP->setText(prof->getRemoteIP());
438 mRemotePort->setText(prof->getRemotePort()); 470 mRemotePort->setText(prof->getRemotePort());
@@ -473,12 +505,17 @@ void KSyncPrefsDialog::profileChanged( int item )
473 mIncludeInRing->setChecked( prof->getIncludeInRingSync() ); 505 mIncludeInRing->setChecked( prof->getIncludeInRingSync() );
474 mIncludeInRingAB->setChecked( prof->getIncludeInRingSyncAB() ); 506 mIncludeInRingAB->setChecked( prof->getIncludeInRingSyncAB() );
475 mIncludeInRingPWM->setChecked( prof->getIncludeInRingSyncPWM() ); 507 mIncludeInRingPWM->setChecked( prof->getIncludeInRingSyncPWM() );
476 mWriteBackFuture->setChecked( prof->getWriteBackFuture()); 508 mWriteBackFuture->setChecked( prof->getWriteBackFuture());
477 mWriteBackFutureWeeks->setValue( prof->getWriteBackFutureWeeks() ); 509 mWriteBackFutureWeeks->setValue( prof->getWriteBackFutureWeeks() );
478 mWriteBackPastWeeks->setValue( prof->getWriteBackPastWeeks() ); 510 mWriteBackPastWeeks->setValue( prof->getWriteBackPastWeeks() );
511
512 mFilterInCal->setCurrentItem( mFilterKopi.findIndex(prof->getFilterInCal () ) + 1 );
513 mFilterOutCal->setCurrentItem( mFilterKopi.findIndex(prof->getFilterOutCal () ) + 1 );
514 mFilterInAB->setCurrentItem( mFilterKapi.findIndex(prof->getFilterInAB () ) + 1 );
515 mFilterOutAB->setCurrentItem( mFilterKapi.findIndex(prof->getFilterOutAB () ) + 1 );
479 516
480 switch ( prof->getSyncPrefs() ) { 517 switch ( prof->getSyncPrefs() ) {
481 case 0: 518 case 0:
482 loc->setChecked( true); 519 loc->setChecked( true);
483 break; 520 break;
484 case 1: 521 case 1:
@@ -642,15 +679,17 @@ void KSyncPrefsDialog::saveProfile()
642 prof->setWriteBackPastWeeks(mWriteBackPastWeeks->value()); 679 prof->setWriteBackPastWeeks(mWriteBackPastWeeks->value());
643 if ( mWriteContactToSIM ) 680 if ( mWriteContactToSIM )
644 prof->setWriteContactToSIM(mWriteContactToSIM->isChecked()); 681 prof->setWriteContactToSIM(mWriteContactToSIM->isChecked());
645 prof->setPhoneDevice( mPhoneDevice->text() ); 682 prof->setPhoneDevice( mPhoneDevice->text() );
646 prof->setPhoneConnection( mPhoneConnection->text() ); 683 prof->setPhoneConnection( mPhoneConnection->text() );
647 prof->setPhoneModel( mPhoneModel->text() ); 684 prof->setPhoneModel( mPhoneModel->text() );
648 685 prof->setFilterInCal ( mFilterInCal->currentText ());
686 prof->setFilterOutCal ( mFilterOutCal ->currentText ());
687 prof->setFilterInAB ( mFilterInAB ->currentText ());
688 prof->setFilterOutAB ( mFilterOutAB ->currentText ());
649 } 689 }
650
651} 690}
652 691
653void KSyncPrefsDialog::insertProfiles() 692void KSyncPrefsDialog::insertProfiles()
654{ 693{
655 int curItem = mProfileBox->currentItem(); 694 int curItem = mProfileBox->currentItem();
656 mProfileBox->blockSignals( true ); 695 mProfileBox->blockSignals( true );
diff --git a/libkdepim/ksyncprefsdialog.h b/libkdepim/ksyncprefsdialog.h
index 997f524..24543e1 100644
--- a/libkdepim/ksyncprefsdialog.h
+++ b/libkdepim/ksyncprefsdialog.h
@@ -97,12 +97,17 @@ class KSyncPrefsDialog : public KDialog
97 QCheckBox* mIncludeInRingPWM; 97 QCheckBox* mIncludeInRingPWM;
98 void addProfile ( KSyncProfile* ); 98 void addProfile ( KSyncProfile* );
99 void insertProfiles(); 99 void insertProfiles();
100 void saveProfile(); 100 void saveProfile();
101 QButtonGroup* proGr; 101 QButtonGroup* proGr;
102 102
103 QComboBox * mFilterOutCal;
104 QComboBox * mFilterInCal;
105 QComboBox * mFilterOutAB;
106 QComboBox * mFilterInAB;
107
103 QRadioButton* loc, *rem, *newest, *ask, *f_loc,* f_rem, *both; 108 QRadioButton* loc, *rem, *newest, *ask, *f_loc,* f_rem, *both;
104 109
105 110
106 QLineEdit * mRemotePostcommand; 111 QLineEdit * mRemotePostcommand;
107 QLineEdit * mRemotePrecommand; 112 QLineEdit * mRemotePrecommand;
108 QLineEdit * mRemoteFile; 113 QLineEdit * mRemoteFile;
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp
index 9f404cb..0d72fc9 100644
--- a/libkdepim/ksyncprofile.cpp
+++ b/libkdepim/ksyncprofile.cpp
@@ -78,12 +78,16 @@ KSyncProfile* KSyncProfile::clone()
78 myClone->setIsLocalFileSync( mIsLocalFileSync ); 78 myClone->setIsLocalFileSync( mIsLocalFileSync );
79 myClone->setIsPhoneSync( mIsPhoneSync ); 79 myClone->setIsPhoneSync( mIsPhoneSync );
80 myClone->setIsKapiFile( mIsKapiFile ); 80 myClone->setIsKapiFile( mIsKapiFile );
81 myClone->setIsPiSync( mIsPiSync ); 81 myClone->setIsPiSync( mIsPiSync );
82 myClone->setWriteContactToSIM( mWriteContactToSIM ); 82 myClone->setWriteContactToSIM( mWriteContactToSIM );
83 myClone->setName( "noName" ); 83 myClone->setName( "noName" );
84 myClone->setFilterInCal ( mFilterInCal );
85 myClone->setFilterOutCal ( mFilterOutCal );
86 myClone->setFilterInAB ( mFilterInAB );
87 myClone->setFilterOutAB ( mFilterOutAB );
84 //myClone->setIdentifier( "noID" ); 88 //myClone->setIdentifier( "noID" );
85 return myClone; 89 return myClone;
86} 90}
87 91
88 92
89void KSyncProfile::setDefault() 93void KSyncProfile::setDefault()
@@ -130,12 +134,16 @@ void KSyncProfile::setDefault()
130 mIsPiSync = false; 134 mIsPiSync = false;
131 mIsKapiFile = false; 135 mIsKapiFile = false;
132 mWriteContactToSIM = false; 136 mWriteContactToSIM = false;
133 mPhoneDevice = "/dev/ircomm"; 137 mPhoneDevice = "/dev/ircomm";
134 mPhoneConnection = "irda"; 138 mPhoneConnection = "irda";
135 mPhoneModel = "6310i"; 139 mPhoneModel = "6310i";
140 mFilterInCal = "no filter";
141 mFilterOutCal = "no filter";
142 mFilterInAB = "no filter";
143 mFilterOutAB = "no filter";
136} 144}
137void KSyncProfile::readConfig(KConfig *config ) 145void KSyncProfile::readConfig(KConfig *config )
138{ 146{
139 if (config) 147 if (config)
140 { 148 {
141 149
@@ -185,12 +193,18 @@ void KSyncProfile::readConfig(KConfig *config )
185 mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks ); 193 mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks );
186 mWriteBackPastWeeks = config->readNumEntry( "WriteBackPastWeeks", mWriteBackPastWeeks ); 194 mWriteBackPastWeeks = config->readNumEntry( "WriteBackPastWeeks", mWriteBackPastWeeks );
187 mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync ); 195 mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync );
188 mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync ); 196 mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync );
189 mIsPiSync= config->readBoolEntry( "IsPiSync", mIsPiSync ); 197 mIsPiSync= config->readBoolEntry( "IsPiSync", mIsPiSync );
190 mIsKapiFile = config->readBoolEntry( "IsKapiFile", mIsKapiFile ); 198 mIsKapiFile = config->readBoolEntry( "IsKapiFile", mIsKapiFile );
199
200 mFilterInCal = config->readEntry( "FilterInCal", mFilterInCal );
201 mFilterOutCal = config->readEntry( "FilterOutCal", mFilterOutCal );
202 mFilterInAB = config->readEntry( "FilterInAB", mFilterInAB );
203 mFilterOutAB = config->readEntry( "FilterOutAB", mFilterOutAB );
204
191 } 205 }
192 else 206 else
193 { 207 {
194 setDefault(); 208 setDefault();
195 } 209 }
196} 210}
@@ -249,8 +263,13 @@ void KSyncProfile::writeConfig( KConfig * config )
249 config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks); 263 config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks);
250 config->writeEntry( "WriteBackPastWeeks", mWriteBackPastWeeks); 264 config->writeEntry( "WriteBackPastWeeks", mWriteBackPastWeeks);
251 config->writeEntry( "IsLocalFileSync", mIsLocalFileSync ); 265 config->writeEntry( "IsLocalFileSync", mIsLocalFileSync );
252 config->writeEntry( "IsPhoneSync", mIsPhoneSync ); 266 config->writeEntry( "IsPhoneSync", mIsPhoneSync );
253 config->writeEntry( "IsPiSync", mIsPiSync ); 267 config->writeEntry( "IsPiSync", mIsPiSync );
254 config->writeEntry( "IsKapiFile", mIsKapiFile ); 268 config->writeEntry( "IsKapiFile", mIsKapiFile );
269 config->writeEntry( "FilterInCal", mFilterInCal );
270 config->writeEntry( "FilterOutCal", mFilterOutCal );
271 config->writeEntry( "FilterInAB", mFilterInAB );
272 config->writeEntry( "FilterOutAB", mFilterOutAB );
273
255} 274}
256 275
diff --git a/libkdepim/ksyncprofile.h b/libkdepim/ksyncprofile.h
index e970b50..aad63d3 100644
--- a/libkdepim/ksyncprofile.h
+++ b/libkdepim/ksyncprofile.h
@@ -101,12 +101,21 @@ class KSyncProfile : public QObject {
101 QString getPhoneModel( ) { return mPhoneModel;} 101 QString getPhoneModel( ) { return mPhoneModel;}
102 /* 102 /*
103 void set( const QString& n ) { = n;} 103 void set( const QString& n ) { = n;}
104 QString get( ) { return ;} 104 QString get( ) { return ;}
105 */ 105 */
106 106
107 void setFilterInCal (const QString& n ){ mFilterInCal = n;}
108 void setFilterOutCal (const QString& n ){ mFilterOutCal = n;}
109 void setFilterInAB (const QString& n ){ mFilterInAB = n;}
110 void setFilterOutAB (const QString& n ){ mFilterOutAB = n;}
111 QString getFilterInCal () { return mFilterInCal ;}
112 QString getFilterOutCal () { return mFilterOutCal ;}
113 QString getFilterInAB () { return mFilterInAB ;}
114 QString getFilterOutAB () { return mFilterOutAB ;}
115
107 void setName( const QString& n ) {mName = n;} 116 void setName( const QString& n ) {mName = n;}
108 QString getName( ) { return mName;} 117 QString getName( ) { return mName;}
109 void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;} 118 void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;}
110 bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;} 119 bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;}
111 void setAskForPreferences( bool b ) { mAskForPreferences= b;} 120 void setAskForPreferences( bool b ) { mAskForPreferences= b;}
112 bool getAskForPreferences( ) { return mAskForPreferences;} 121 bool getAskForPreferences( ) { return mAskForPreferences;}
@@ -166,12 +175,17 @@ class KSyncProfile : public QObject {
166 QString mRemotePortPWM; 175 QString mRemotePortPWM;
167 176
168 QString mPhoneDevice; 177 QString mPhoneDevice;
169 QString mPhoneConnection; 178 QString mPhoneConnection;
170 QString mPhoneModel; 179 QString mPhoneModel;
171 180
181 QString mFilterInCal;
182 QString mFilterOutCal;
183 QString mFilterInAB;
184 QString mFilterOutAB;
185
172 bool mIncludeInRingSync; 186 bool mIncludeInRingSync;
173 bool mIncludeInRingSyncAB; 187 bool mIncludeInRingSyncAB;
174 bool mIncludeInRingSyncPWM; 188 bool mIncludeInRingSyncPWM;
175 int mSyncPrefs; 189 int mSyncPrefs;
176 bool mWriteBackFile; 190 bool mWriteBackFile;
177 bool mWriteBackExisting; 191 bool mWriteBackExisting;