summaryrefslogtreecommitdiffabout
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--korganizer/calendarview.cpp4
-rw-r--r--libkdepim/ksyncprefsdialog.cpp6
-rw-r--r--libkdepim/ksyncprefsdialog.h1
-rw-r--r--libkdepim/ksyncprofile.cpp23
-rw-r--r--libkdepim/ksyncprofile.h15
5 files changed, 19 insertions, 30 deletions
diff --git a/korganizer/calendarview.cpp b/korganizer/calendarview.cpp
index 7fae4a9..bc8625d 100644
--- a/korganizer/calendarview.cpp
+++ b/korganizer/calendarview.cpp
@@ -1106,98 +1106,98 @@ bool CalendarView::synchronizeCalendar( Calendar* local, Calendar* remote, int
1106 ++incCounter; 1106 ++incCounter;
1107 uid = inL->uid(); 1107 uid = inL->uid();
1108 bool skipIncidence = false; 1108 bool skipIncidence = false;
1109 if ( uid.left(15) == QString("last-syncEvent-") ) 1109 if ( uid.left(15) == QString("last-syncEvent-") )
1110 skipIncidence = true; 1110 skipIncidence = true;
1111 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL && inL->type() == "Journal" ) 1111 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL && inL->type() == "Journal" )
1112 skipIncidence = true; 1112 skipIncidence = true;
1113 if ( !skipIncidence ) { 1113 if ( !skipIncidence ) {
1114 inR = remote->incidence( uid ); 1114 inR = remote->incidence( uid );
1115 if ( ! inR ) { 1115 if ( ! inR ) {
1116 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL ) { 1116 if ( mGlobalSyncMode == SYNC_MODE_EXTERNAL ) {
1117 if ( !inL->getID(mCurrentSyncDevice).isEmpty() && mode != 4 ) { 1117 if ( !inL->getID(mCurrentSyncDevice).isEmpty() && mode != 4 ) {
1118 checkExternSyncEvent(eventLSyncSharp, inL); 1118 checkExternSyncEvent(eventLSyncSharp, inL);
1119 local->deleteIncidence( inL ); 1119 local->deleteIncidence( inL );
1120 ++deletedEventL; 1120 ++deletedEventL;
1121 } else { 1121 } else {
1122 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) { 1122 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) {
1123 inL->removeID(mCurrentSyncDevice ); 1123 inL->removeID(mCurrentSyncDevice );
1124 ++addedEventR; 1124 ++addedEventR;
1125 //qDebug("remote added Incidence %s ", inL->summary().latin1()); 1125 //qDebug("remote added Incidence %s ", inL->summary().latin1());
1126 inL->setLastModified( modifiedCalendar ); 1126 inL->setLastModified( modifiedCalendar );
1127 inR = inL->clone(); 1127 inR = inL->clone();
1128 inR->setTempSyncStat( SYNC_TEMPSTATE_INITIAL ); 1128 inR->setTempSyncStat( SYNC_TEMPSTATE_INITIAL );
1129 remote->addIncidence( inR ); 1129 remote->addIncidence( inR );
1130 } 1130 }
1131 } 1131 }
1132 } else { 1132 } else {
1133 if ( inL->lastModified() < mLastCalendarSync && mode != 4 ) { 1133 if ( inL->lastModified() < mLastCalendarSync && mode != 4 ) {
1134 checkExternSyncEvent(eventLSyncSharp, inL); 1134 checkExternSyncEvent(eventLSyncSharp, inL);
1135 local->deleteIncidence( inL ); 1135 local->deleteIncidence( inL );
1136 ++deletedEventL; 1136 ++deletedEventL;
1137 } else { 1137 } else {
1138 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) { 1138 if ( ! KOPrefs::instance()->mWriteBackExistingOnly ) {
1139 ++addedEventR; 1139 ++addedEventR;
1140 inL->setLastModified( modifiedCalendar ); 1140 inL->setLastModified( modifiedCalendar );
1141 remote->addIncidence( inL->clone() ); 1141 remote->addIncidence( inL->clone() );
1142 } 1142 }
1143 } 1143 }
1144 } 1144 }
1145 } 1145 }
1146 } 1146 }
1147 inL = el.next(); 1147 inL = el.next();
1148 } 1148 }
1149 int delFut = 0; 1149 int delFut = 0;
1150 if ( KOPrefs::instance()->mWriteBackInFuture ) { 1150 if ( KOPrefs::instance()->mWriteBackInFuture ) {
1151 er = remote->rawIncidences(); 1151 er = remote->rawIncidences();
1152 inR = er.first(); 1152 inR = er.first();
1153 QDateTime dt; 1153 QDateTime dt;
1154 QDateTime cur = QDateTime::currentDateTime(); 1154 QDateTime cur = QDateTime::currentDateTime().addDays( -7 );
1155 QDateTime end = cur.addSecs( KOPrefs::instance()->mWriteBackInFuture * 3600 *24 *7 ); 1155 QDateTime end = cur.addDays( (KOPrefs::instance()->mWriteBackInFuture +1 ) *7 );
1156 while ( inR ) { 1156 while ( inR ) {
1157 if ( inR->type() == "Todo" ) { 1157 if ( inR->type() == "Todo" ) {
1158 Todo * t = (Todo*)inR; 1158 Todo * t = (Todo*)inR;
1159 if ( t->hasDueDate() ) 1159 if ( t->hasDueDate() )
1160 dt = t->dtDue(); 1160 dt = t->dtDue();
1161 else 1161 else
1162 dt = cur.addSecs( 62 ); 1162 dt = cur.addSecs( 62 );
1163 } 1163 }
1164 else if (inR->type() == "Event" ) { 1164 else if (inR->type() == "Event" ) {
1165 bool ok; 1165 bool ok;
1166 dt = inR->getNextOccurence( cur, &ok ); 1166 dt = inR->getNextOccurence( cur, &ok );
1167 if ( !ok ) 1167 if ( !ok )
1168 dt = cur.addSecs( -62 ); 1168 dt = cur.addSecs( -62 );
1169 } 1169 }
1170 else 1170 else
1171 dt = inR->dtStart(); 1171 dt = inR->dtStart();
1172 if ( dt < cur || dt > end ) { 1172 if ( dt < cur || dt > end ) {
1173 remote->deleteIncidence( inR ); 1173 remote->deleteIncidence( inR );
1174 ++delFut; 1174 ++delFut;
1175 } 1175 }
1176 inR = er.next(); 1176 inR = er.next();
1177 } 1177 }
1178 } 1178 }
1179 bar.hide(); 1179 bar.hide();
1180 mLastCalendarSync = QDateTime::currentDateTime().addSecs( 1 ); 1180 mLastCalendarSync = QDateTime::currentDateTime().addSecs( 1 );
1181 eventLSync->setReadOnly( false ); 1181 eventLSync->setReadOnly( false );
1182 eventLSync->setDtStart( mLastCalendarSync ); 1182 eventLSync->setDtStart( mLastCalendarSync );
1183 eventRSync->setDtStart( mLastCalendarSync ); 1183 eventRSync->setDtStart( mLastCalendarSync );
1184 eventLSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) ); 1184 eventLSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) );
1185 eventRSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) ); 1185 eventRSync->setDtEnd( mLastCalendarSync.addSecs( 3600 ) );
1186 eventRSync->setLocation( i18n("Remote from: ")+mCurrentSyncName ) ; 1186 eventRSync->setLocation( i18n("Remote from: ")+mCurrentSyncName ) ;
1187 eventLSync->setLocation(i18n("Local from: ") + mCurrentSyncName ); 1187 eventLSync->setLocation(i18n("Local from: ") + mCurrentSyncName );
1188 eventLSync->setReadOnly( true ); 1188 eventLSync->setReadOnly( true );
1189 if ( mGlobalSyncMode == SYNC_MODE_NORMAL) 1189 if ( mGlobalSyncMode == SYNC_MODE_NORMAL)
1190 remote->addEvent( eventRSync ); 1190 remote->addEvent( eventRSync );
1191 QString mes; 1191 QString mes;
1192 mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n"),addedEvent, addedEventR, changedLocal, changedRemote, deletedEventL, deletedEventR ); 1192 mes .sprintf( i18n("Synchronization summary:\n\n %d items added to local\n %d items added to remote\n %d items updated on local\n %d items updated on remote\n %d items deleted on local\n %d items deleted on remote\n"),addedEvent, addedEventR, changedLocal, changedRemote, deletedEventL, deletedEventR );
1193 QString delmess; 1193 QString delmess;
1194 if ( delFut ) { 1194 if ( delFut ) {
1195 delmess.sprintf( i18n("%d items skipped on remote,\nbecause they are in the past or\nmore than %d weeks in the future.\n"),delFut, KOPrefs::instance()->mWriteBackInFuture ); 1195 delmess.sprintf( i18n("%d items skipped on remote,\nbecause they are in the past or\nmore than %d weeks in the future.\n"),delFut, KOPrefs::instance()->mWriteBackInFuture );
1196 mes += delmess; 1196 mes += delmess;
1197 } 1197 }
1198 if ( KOPrefs::instance()->mShowSyncSummary ) { 1198 if ( KOPrefs::instance()->mShowSyncSummary ) {
1199 KMessageBox::information(this, mes, i18n("KO/Pi Synchronization") ); 1199 KMessageBox::information(this, mes, i18n("KO/Pi Synchronization") );
1200 } 1200 }
1201 qDebug( mes ); 1201 qDebug( mes );
1202 mCalendar->checkAlarmForIncidence( 0, true ); 1202 mCalendar->checkAlarmForIncidence( 0, true );
1203 return syncOK; 1203 return syncOK;
diff --git a/libkdepim/ksyncprefsdialog.cpp b/libkdepim/ksyncprefsdialog.cpp
index 857ceac..a1eebec 100644
--- a/libkdepim/ksyncprefsdialog.cpp
+++ b/libkdepim/ksyncprefsdialog.cpp
@@ -149,97 +149,98 @@ void KSyncPrefsDialog::setupSyncAlgTab()
149 149
150 mAskForPreferences = new QCheckBox( i18n("Ask for preferences before sync"), topFrame ); 150 mAskForPreferences = new QCheckBox( i18n("Ask for preferences before sync"), topFrame );
151 topLayout->addMultiCellWidget(mAskForPreferences, iii,iii,0,1); 151 topLayout->addMultiCellWidget(mAskForPreferences, iii,iii,0,1);
152 ++iii; 152 ++iii;
153 QButtonGroup* gr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Sync preferences"), topFrame); 153 QButtonGroup* gr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Sync preferences"), topFrame);
154 topLayout->addMultiCellWidget(gr, iii,iii,0,1); 154 topLayout->addMultiCellWidget(gr, iii,iii,0,1);
155 ++iii; 155 ++iii;
156 loc = new QRadioButton ( i18n("Take local entry on conflict"), gr ); 156 loc = new QRadioButton ( i18n("Take local entry on conflict"), gr );
157 rem = new QRadioButton ( i18n("Take remote entry on conflict"), gr ); 157 rem = new QRadioButton ( i18n("Take remote entry on conflict"), gr );
158 newest = new QRadioButton ( i18n("Take newest entry on conflict"), gr ); 158 newest = new QRadioButton ( i18n("Take newest entry on conflict"), gr );
159 ask = new QRadioButton ( i18n("Ask for every entry on conflict"), gr ); 159 ask = new QRadioButton ( i18n("Ask for every entry on conflict"), gr );
160 f_loc= new QRadioButton ( i18n("Force: Take local entry always"), gr ); 160 f_loc= new QRadioButton ( i18n("Force: Take local entry always"), gr );
161 f_rem = new QRadioButton ( i18n("Force: Take remote entry always"), gr ); 161 f_rem = new QRadioButton ( i18n("Force: Take remote entry always"), gr );
162 // both = new QRadioButton ( i18n("Take both on conflict"), gr ); 162 // both = new QRadioButton ( i18n("Take both on conflict"), gr );
163 163
164 mShowSummaryAfterSync = new QCheckBox( i18n("Show summary after sync"), topFrame ); 164 mShowSummaryAfterSync = new QCheckBox( i18n("Show summary after sync"), topFrame );
165 topLayout->addMultiCellWidget(mShowSummaryAfterSync, iii,iii,0,1); 165 topLayout->addMultiCellWidget(mShowSummaryAfterSync, iii,iii,0,1);
166 ++iii; 166 ++iii;
167 167
168 mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame ); 168 mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame );
169 topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1); 169 topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1);
170 ++iii; 170 ++iii;
171 171
172 mWriteBackExisting= new QCheckBox( i18n("-- Write back (on remote) existing entries only"), topFrame ); 172 mWriteBackExisting= new QCheckBox( i18n("-- Write back (on remote) existing entries only"), topFrame );
173 topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1); 173 topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1);
174 ++iii; 174 ++iii;
175 175
176 mWriteBackFuture= new QCheckBox( i18n("-- Write back (calendar) entries in future only"), topFrame ); 176 mWriteBackFuture= new QCheckBox( i18n("-- Write back (calendar) entries in future only"), topFrame );
177 topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1); 177 topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1);
178 ++iii; 178 ++iii;
179 topLayout->addMultiCellWidget(new QLabel( i18n("---- Max. weeks in future: ") , topFrame ), iii,iii,0,0); 179 topLayout->addMultiCellWidget(new QLabel( i18n("---- Max. weeks in future: ") , topFrame ), iii,iii,0,0);
180 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, topFrame); 180 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, topFrame);
181 topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1); 181 topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1);
182 ++iii; 182 ++iii;
183 183
184 proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame); 184 proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame);
185 gr = proGr; 185 gr = proGr;
186 topLayout->addMultiCellWidget(gr, iii,iii,0,1); 186 topLayout->addMultiCellWidget(gr, iii,iii,0,1);
187 ++iii; 187 ++iii;
188 mIsLocal = new QRadioButton ( i18n("Local file"), gr ); 188 mIsLocal = new QRadioButton ( i18n("Local file"), gr );
189 mIsNotLocal = new QRadioButton ( i18n("Remote file (w down/upload command)"), gr ); 189 mIsNotLocal = new QRadioButton ( i18n("Remote file (w down/upload command)"), gr );
190 connect (mIsLocal, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) ); 190 connect (mIsLocal, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
191 mIsPhone = new QRadioButton ( i18n("Mobile device (cell phone)"), gr ); 191 mIsPhone = new QRadioButton ( i18n("Mobile device (cell phone)"), gr );
192 connect (mIsPhone, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) ); 192 connect (mIsPhone, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
193 193
194 194
195 phoneWidget = new QVBox( topFrame); 195 phoneWidget = new QVBox( topFrame);
196 topLayout->addMultiCellWidget(phoneWidget, iii,iii,0,1); 196 topLayout->addMultiCellWidget(phoneWidget, iii,iii,0,1);
197 ++iii; 197 ++iii;
198 mWriteContactToSIM= new QCheckBox( i18n("Sync contacts with phone SIM card (If not, sync with phone memory)"), phoneWidget );
198 QHBox* temphb = new QHBox( phoneWidget ); 199 QHBox* temphb = new QHBox( phoneWidget );
199 new QLabel( i18n("I/O device: "), temphb ); 200 new QLabel( i18n("I/O device: "), temphb );
200 mPhoneDevice = new QLineEdit( temphb); 201 mPhoneDevice = new QLineEdit( temphb);
201 button = new QPushButton( i18n("Help..."), temphb ); 202 button = new QPushButton( i18n("Help..."), temphb );
202 connect ( button, SIGNAL( clicked()), this, SLOT ( helpDevice() ) ); 203 connect ( button, SIGNAL( clicked()), this, SLOT ( helpDevice() ) );
203 204
204 205
205 temphb = new QHBox( phoneWidget ); 206 temphb = new QHBox( phoneWidget );
206 new QLabel( i18n("Connection: "), temphb ); 207 new QLabel( i18n("Connection: "), temphb );
207 mPhoneConnection = new QLineEdit( temphb); 208 mPhoneConnection = new QLineEdit( temphb);
208 button = new QPushButton( i18n("Help..."), temphb ); 209 button = new QPushButton( i18n("Help..."), temphb );
209 connect ( button, SIGNAL( clicked()), this, SLOT ( helpConnection() ) ); 210 connect ( button, SIGNAL( clicked()), this, SLOT ( helpConnection() ) );
210 211
211 212
212 temphb = new QHBox( phoneWidget ); 213 temphb = new QHBox( phoneWidget );
213 new QLabel( i18n("Model(opt.): "), temphb ); 214 new QLabel( i18n("Model(opt.): "), temphb );
214 mPhoneModel = new QLineEdit( temphb); 215 mPhoneModel = new QLineEdit( temphb);
215 button = new QPushButton( i18n("Help..."), temphb ); 216 button = new QPushButton( i18n("Help..."), temphb );
216 connect ( button, SIGNAL( clicked()), this, SLOT ( helpModel() ) ); 217 connect ( button, SIGNAL( clicked()), this, SLOT ( helpModel() ) );
217 218
218 // *** local 219 // *** local
219 localFileWidget = new QVBox( topFrame); 220 localFileWidget = new QVBox( topFrame);
220 topLayout->addMultiCellWidget(localFileWidget, iii,iii,0,1); 221 topLayout->addMultiCellWidget(localFileWidget, iii,iii,0,1);
221 ++iii; 222 ++iii;
222 temphb = new QHBox( localFileWidget ); 223 temphb = new QHBox( localFileWidget );
223 224
224 lab = new QLabel( i18n("Local file Cal:"), temphb ); 225 lab = new QLabel( i18n("Local file Cal:"), temphb );
225 lab = new QLabel( i18n("Local file ABook:"), temphb ); 226 lab = new QLabel( i18n("Local file ABook:"), temphb );
226 temphb = new QHBox( localFileWidget ); 227 temphb = new QHBox( localFileWidget );
227 button = new QPushButton( i18n("Choose..."), temphb ); 228 button = new QPushButton( i18n("Choose..."), temphb );
228 connect ( button, SIGNAL( clicked()), this, SLOT ( chooseFile() ) ); 229 connect ( button, SIGNAL( clicked()), this, SLOT ( chooseFile() ) );
229 button = new QPushButton( i18n("Choose..."), temphb ); 230 button = new QPushButton( i18n("Choose..."), temphb );
230 connect ( button, SIGNAL( clicked()), this, SLOT ( chooseFileAB() ) ); 231 connect ( button, SIGNAL( clicked()), this, SLOT ( chooseFileAB() ) );
231 temphb = new QHBox( localFileWidget ); 232 temphb = new QHBox( localFileWidget );
232 233
233 mRemoteFile = new QLineEdit( temphb); 234 mRemoteFile = new QLineEdit( temphb);
234 mRemoteFileAB = new QLineEdit( temphb); 235 mRemoteFileAB = new QLineEdit( temphb);
235 236
236 // *** remote 237 // *** remote
237 remoteFileWidget = new QVBox( topFrame); 238 remoteFileWidget = new QVBox( topFrame);
238 topLayout->addMultiCellWidget(remoteFileWidget, iii,iii,0,1); 239 topLayout->addMultiCellWidget(remoteFileWidget, iii,iii,0,1);
239 ++iii; 240 ++iii;
240 temphb = new QHBox( remoteFileWidget ); 241 temphb = new QHBox( remoteFileWidget );
241 new QLabel( i18n("Calendar:"), temphb); 242 new QLabel( i18n("Calendar:"), temphb);
242 new QLabel( i18n("AddressBook:"), temphb); 243 new QLabel( i18n("AddressBook:"), temphb);
243 244
244 lab = new QLabel( i18n("Pre sync (download) command:"), remoteFileWidget); 245 lab = new QLabel( i18n("Pre sync (download) command:"), remoteFileWidget);
245 temphb = new QHBox( remoteFileWidget ); 246 temphb = new QHBox( remoteFileWidget );
@@ -295,96 +296,97 @@ void KSyncPrefsDialog::chooseFile()
295 return; 296 return;
296 mRemoteFile->setText( fn ); 297 mRemoteFile->setText( fn );
297} 298}
298 299
299void KSyncPrefsDialog::chooseFileAB() 300void KSyncPrefsDialog::chooseFileAB()
300{ 301{
301 QString fn = QDir::homeDirPath(); 302 QString fn = QDir::homeDirPath();
302 303
303 fn =KFileDialog:: getOpenFileName( fn, i18n("Sync filename(*.ics/*.vcs)"), this ); 304 fn =KFileDialog:: getOpenFileName( fn, i18n("Sync filename(*.ics/*.vcs)"), this );
304 if ( fn == "" ) 305 if ( fn == "" )
305 return; 306 return;
306 mRemoteFileAB->setText( fn ); 307 mRemoteFileAB->setText( fn );
307} 308}
308 309
309void KSyncPrefsDialog::textChanged( const QString & s ) 310void KSyncPrefsDialog::textChanged( const QString & s )
310{ 311{
311 if ( mProfileBox->count() == 0 ) 312 if ( mProfileBox->count() == 0 )
312 return; 313 return;
313 if ( currentSelection < 3 ) { 314 if ( currentSelection < 3 ) {
314 //KMessageBox::error(this,i18n("This profil name\ncannot be edited!\n"),i18n("KO/Pi config error")); 315 //KMessageBox::error(this,i18n("This profil name\ncannot be edited!\n"),i18n("KO/Pi config error"));
315 mProfileBox->blockSignals( true ); 316 mProfileBox->blockSignals( true );
316 mProfileBox->setCurrentItem(mProfileBox-> currentItem ()); 317 mProfileBox->setCurrentItem(mProfileBox-> currentItem ());
317 mProfileBox->blockSignals( false ); 318 mProfileBox->blockSignals( false );
318 return; 319 return;
319 } 320 }
320 //qDebug("cur i %d ",mProfileBox-> currentItem () ); 321 //qDebug("cur i %d ",mProfileBox-> currentItem () );
321 mProfileBox->changeItem ( s, mProfileBox-> currentItem () ) ; 322 mProfileBox->changeItem ( s, mProfileBox-> currentItem () ) ;
322 KSyncProfile* prof = mSyncProfiles.at(mProfileBox-> currentItem ()) ; 323 KSyncProfile* prof = mSyncProfiles.at(mProfileBox-> currentItem ()) ;
323 prof->setName( s ); 324 prof->setName( s );
324 mSyncProfileNames[mProfileBox-> currentItem ()] = s; 325 mSyncProfileNames[mProfileBox-> currentItem ()] = s;
325} 326}
326void KSyncPrefsDialog::profileChanged( int item ) 327void KSyncPrefsDialog::profileChanged( int item )
327{ 328{
328 //qDebug("KSyncPrefsDialog::profileChanged %d ", item ); 329 //qDebug("KSyncPrefsDialog::profileChanged %d ", item );
329 KSyncProfile* prof; 330 KSyncProfile* prof;
330 saveProfile(); 331 saveProfile();
331 currentSelection = item; 332 currentSelection = item;
332 prof = mSyncProfiles.at(item) ; 333 prof = mSyncProfiles.at(item) ;
333 mRemotePrecommand->setText(prof->getPreSyncCommand()); 334 mRemotePrecommand->setText(prof->getPreSyncCommand());
334 mRemotePostcommand->setText(prof->getPostSyncCommand()); 335 mRemotePostcommand->setText(prof->getPostSyncCommand());
335 mLocalTempFile->setText(prof->getLocalTempFile()); 336 mLocalTempFile->setText(prof->getLocalTempFile());
336 mRemoteFile->setText(prof->getRemoteFileName()) ; 337 mRemoteFile->setText(prof->getRemoteFileName()) ;
337 338
338 mRemotePrecommandAB->setText(prof->getPreSyncCommandAB()); 339 mRemotePrecommandAB->setText(prof->getPreSyncCommandAB());
339 mRemotePostcommandAB->setText(prof->getPostSyncCommandAB()); 340 mRemotePostcommandAB->setText(prof->getPostSyncCommandAB());
340 mLocalTempFileAB->setText(prof->getLocalTempFileAB()); 341 mLocalTempFileAB->setText(prof->getLocalTempFileAB());
341 mRemoteFileAB->setText(prof->getRemoteFileNameAB()) ; 342 mRemoteFileAB->setText(prof->getRemoteFileNameAB()) ;
342 343
344 mWriteContactToSIM->setChecked( prof->getWriteContactToSIM());
343 mPhoneDevice->setText(prof->getPhoneDevice()); 345 mPhoneDevice->setText(prof->getPhoneDevice());
344 mPhoneConnection->setText(prof->getPhoneConnection()); 346 mPhoneConnection->setText(prof->getPhoneConnection());
345 mPhoneModel->setText(prof->getPhoneModel()); 347 mPhoneModel->setText(prof->getPhoneModel());
346 348
347 mShowSummaryAfterSync->setChecked( prof->getShowSummaryAfterSync()); 349 mShowSummaryAfterSync->setChecked( prof->getShowSummaryAfterSync());
348 mAskForPreferences->setChecked( prof->getAskForPreferences()); 350 mAskForPreferences->setChecked( prof->getAskForPreferences());
349 mWriteBackExisting->setChecked( prof->getWriteBackExisting() ); 351 mWriteBackExisting->setChecked( prof->getWriteBackExisting() );
350 mWriteBackFile->setChecked( prof->getWriteBackFile()); 352 mWriteBackFile->setChecked( prof->getWriteBackFile());
351 mIncludeInRing->setChecked( prof->getIncludeInRingSync() ); 353 mIncludeInRing->setChecked( prof->getIncludeInRingSync() );
352 mIncludeInRingAB->setChecked( prof->getIncludeInRingSyncAB() ); 354 mIncludeInRingAB->setChecked( prof->getIncludeInRingSyncAB() );
353 mWriteBackFuture->setChecked( prof->getWriteBackFuture()); 355 mWriteBackFuture->setChecked( prof->getWriteBackFuture());
354 mWriteBackFutureWeeks->setValue( prof->getWriteBackFutureWeeks() ); 356 mWriteBackFutureWeeks->setValue( prof->getWriteBackFutureWeeks() );
355 357
356 switch ( prof->getSyncPrefs() ) { 358 switch ( prof->getSyncPrefs() ) {
357 case 0: 359 case 0:
358 loc->setChecked( true); 360 loc->setChecked( true);
359 break; 361 break;
360 case 1: 362 case 1:
361 rem->setChecked( true ); 363 rem->setChecked( true );
362 break; 364 break;
363 case 2: 365 case 2:
364 newest->setChecked( true); 366 newest->setChecked( true);
365 break; 367 break;
366 case 3: 368 case 3:
367 ask->setChecked( true); 369 ask->setChecked( true);
368 break; 370 break;
369 case 4: 371 case 4:
370 f_loc->setChecked( true); 372 f_loc->setChecked( true);
371 break; 373 break;
372 case 5: 374 case 5:
373 f_rem->setChecked( true); 375 f_rem->setChecked( true);
374 break; 376 break;
375 case 6: 377 case 6:
376 //both->setChecked( true); 378 //both->setChecked( true);
377 break; 379 break;
378 default: 380 default:
379 break; 381 break;
380 } 382 }
381 mIsLocal->setChecked(prof->getIsLocalFileSync()) ; 383 mIsLocal->setChecked(prof->getIsLocalFileSync()) ;
382 mIsPhone->setChecked(prof->getIsPhoneSync()) ; 384 mIsPhone->setChecked(prof->getIsPhoneSync()) ;
383 mIsNotLocal->setChecked(!prof->getIsLocalFileSync() && !prof->getIsPhoneSync() ); 385 mIsNotLocal->setChecked(!prof->getIsLocalFileSync() && !prof->getIsPhoneSync() );
384 proGr->setEnabled( item > 2 ); 386 proGr->setEnabled( item > 2 );
385 if ( item < 3 ) { 387 if ( item < 3 ) {
386 localFileWidget->hide(); 388 localFileWidget->hide();
387 remoteFileWidget->hide(); 389 remoteFileWidget->hide();
388 phoneWidget->hide(); 390 phoneWidget->hide();
389 391
390 } else 392 } else
@@ -426,96 +428,98 @@ void KSyncPrefsDialog::kindChanged( bool b )
426 if ( mIsPhone->isChecked () ) { 428 if ( mIsPhone->isChecked () ) {
427 phoneWidget->show(); 429 phoneWidget->show();
428 } 430 }
429 else { 431 else {
430 phoneWidget->hide(); 432 phoneWidget->hide();
431 } 433 }
432 434
433} 435}
434void KSyncPrefsDialog::deleteProfile() 436void KSyncPrefsDialog::deleteProfile()
435{ 437{
436 //qDebug("KSyncPrefsDialog::deleteProfile() "); 438 //qDebug("KSyncPrefsDialog::deleteProfile() ");
437 if ( currentSelection >= 0 ) { 439 if ( currentSelection >= 0 ) {
438 if ( currentSelection < 3 ) { 440 if ( currentSelection < 3 ) {
439 KMessageBox::error(this,i18n("This profil cannot be deleted!\n"),i18n("KO/Pi config error")); 441 KMessageBox::error(this,i18n("This profil cannot be deleted!\n"),i18n("KO/Pi config error"));
440 return; 442 return;
441 } 443 }
442 KSyncProfile* temp = mSyncProfiles.at(currentSelection); 444 KSyncProfile* temp = mSyncProfiles.at(currentSelection);
443 mSyncProfiles.remove( temp ); 445 mSyncProfiles.remove( temp );
444 mSyncProfileNames.remove( mSyncProfileNames.at( currentSelection )); 446 mSyncProfileNames.remove( mSyncProfileNames.at( currentSelection ));
445 insertProfiles(); 447 insertProfiles();
446 } 448 }
447} 449}
448 450
449void KSyncPrefsDialog::saveProfile() 451void KSyncPrefsDialog::saveProfile()
450{ 452{
451 KSyncProfile* prof; 453 KSyncProfile* prof;
452 if ( currentSelection >= 0 ) { 454 if ( currentSelection >= 0 ) {
453 prof = mSyncProfiles.at(currentSelection) ; 455 prof = mSyncProfiles.at(currentSelection) ;
454 prof->setPreSyncCommand( mRemotePrecommand->text()); 456 prof->setPreSyncCommand( mRemotePrecommand->text());
455 prof->setPostSyncCommand( mRemotePostcommand->text() ); 457 prof->setPostSyncCommand( mRemotePostcommand->text() );
456 prof->setLocalTempFile( mLocalTempFile->text()); 458 prof->setLocalTempFile( mLocalTempFile->text());
457 prof->setRemoteFileName( mRemoteFile->text() ); 459 prof->setRemoteFileName( mRemoteFile->text() );
458 prof->setPreSyncCommandAB( mRemotePrecommandAB->text()); 460 prof->setPreSyncCommandAB( mRemotePrecommandAB->text());
459 prof->setPostSyncCommandAB( mRemotePostcommandAB->text() ); 461 prof->setPostSyncCommandAB( mRemotePostcommandAB->text() );
460 prof->setLocalTempFileAB( mLocalTempFileAB->text()); 462 prof->setLocalTempFileAB( mLocalTempFileAB->text());
461 prof->setRemoteFileNameAB( mRemoteFileAB->text() ); 463 prof->setRemoteFileNameAB( mRemoteFileAB->text() );
462 prof->setShowSummaryAfterSync( mShowSummaryAfterSync->isChecked() ); 464 prof->setShowSummaryAfterSync( mShowSummaryAfterSync->isChecked() );
463 prof->setAskForPreferences( mAskForPreferences->isChecked()); 465 prof->setAskForPreferences( mAskForPreferences->isChecked());
464 prof->setWriteBackExisting(mWriteBackExisting->isChecked() ); 466 prof->setWriteBackExisting(mWriteBackExisting->isChecked() );
465 prof->setWriteBackFile( mWriteBackFile->isChecked()); 467 prof->setWriteBackFile( mWriteBackFile->isChecked());
466 prof->setIncludeInRingSync( mIncludeInRing->isChecked() ); 468 prof->setIncludeInRingSync( mIncludeInRing->isChecked() );
467 prof->setIncludeInRingSyncAB( mIncludeInRingAB->isChecked() ); 469 prof->setIncludeInRingSyncAB( mIncludeInRingAB->isChecked() );
468 int syncprefs = rem->isChecked()*1+newest->isChecked()*2+ ask->isChecked()*3+ f_loc->isChecked()*4+ f_rem->isChecked()*5 ;//+ both->isChecked()*6 ; 470 int syncprefs = rem->isChecked()*1+newest->isChecked()*2+ ask->isChecked()*3+ f_loc->isChecked()*4+ f_rem->isChecked()*5 ;//+ both->isChecked()*6 ;
469 prof->setSyncPrefs( syncprefs); 471 prof->setSyncPrefs( syncprefs);
470 prof->setIsLocalFileSync( mIsLocal->isChecked() ); 472 prof->setIsLocalFileSync( mIsLocal->isChecked() );
471 prof->setIsPhoneSync( mIsPhone->isChecked() ); 473 prof->setIsPhoneSync( mIsPhone->isChecked() );
472 prof->setWriteBackFuture(mWriteBackFuture->isChecked()); 474 prof->setWriteBackFuture(mWriteBackFuture->isChecked());
473 prof->setWriteBackFutureWeeks(mWriteBackFutureWeeks->value()); 475 prof->setWriteBackFutureWeeks(mWriteBackFutureWeeks->value());
476
477 prof->setWriteContactToSIM(mWriteContactToSIM->isChecked());
474 prof->setPhoneDevice( mPhoneDevice->text() ); 478 prof->setPhoneDevice( mPhoneDevice->text() );
475 prof->setPhoneConnection( mPhoneConnection->text() ); 479 prof->setPhoneConnection( mPhoneConnection->text() );
476 prof->setPhoneModel( mPhoneModel->text() ); 480 prof->setPhoneModel( mPhoneModel->text() );
477 481
478 } 482 }
479 483
480} 484}
481 485
482void KSyncPrefsDialog::insertProfiles() 486void KSyncPrefsDialog::insertProfiles()
483{ 487{
484 int curItem = mProfileBox->currentItem(); 488 int curItem = mProfileBox->currentItem();
485 mProfileBox->blockSignals( true ); 489 mProfileBox->blockSignals( true );
486 mProfileBox->clear(); 490 mProfileBox->clear();
487 mProfileBox->insertStringList (mSyncProfileNames ); 491 mProfileBox->insertStringList (mSyncProfileNames );
488 int item = mSyncProfileNames.count() -1; 492 int item = mSyncProfileNames.count() -1;
489 if ( curItem >= 0 && mSyncProfileNames.count() > 0 && curItem < mSyncProfileNames.count() ) 493 if ( curItem >= 0 && mSyncProfileNames.count() > 0 && curItem < mSyncProfileNames.count() )
490 mProfileBox->setCurrentItem( curItem ); 494 mProfileBox->setCurrentItem( curItem );
491 else if ( item >= 0 ) { 495 else if ( item >= 0 ) {
492 mProfileBox->setCurrentItem( item ); 496 mProfileBox->setCurrentItem( item );
493 } 497 }
494 currentSelection = -1; 498 currentSelection = -1;
495 if ( mSyncProfileNames.count() > 0 ) { 499 if ( mSyncProfileNames.count() > 0 ) {
496 //qDebug(" profileChanged( mProfileBox->currentItem() "); 500 //qDebug(" profileChanged( mProfileBox->currentItem() ");
497 profileChanged( mProfileBox->currentItem() ); 501 profileChanged( mProfileBox->currentItem() );
498 currentSelection = mProfileBox->currentItem(); 502 currentSelection = mProfileBox->currentItem();
499 } 503 }
500 mProfileBox->blockSignals( false ); 504 mProfileBox->blockSignals( false );
501} 505}
502 506
503void KSyncPrefsDialog::addProfile ( KSyncProfile* temp ) 507void KSyncPrefsDialog::addProfile ( KSyncProfile* temp )
504{ 508{
505 saveProfile(); 509 saveProfile();
506 mSyncProfiles.append( temp ); 510 mSyncProfiles.append( temp );
507 mSyncProfileNames << temp->getName(); 511 mSyncProfileNames << temp->getName();
508 insertProfiles(); 512 insertProfiles();
509 int last = mProfileBox->count() -1; 513 int last = mProfileBox->count() -1;
510 mProfileBox->blockSignals( true ); 514 mProfileBox->blockSignals( true );
511 mProfileBox->setCurrentItem( last ); 515 mProfileBox->setCurrentItem( last );
512 mProfileBox->blockSignals( false ); 516 mProfileBox->blockSignals( false );
513 profileChanged(last); 517 profileChanged(last);
514} 518}
515void KSyncPrefsDialog::newProfile() 519void KSyncPrefsDialog::newProfile()
516{ 520{
517 addProfile ( new KSyncProfile () ); 521 addProfile ( new KSyncProfile () );
518} 522}
519 523
520void KSyncPrefsDialog::cloneProfile() 524void KSyncPrefsDialog::cloneProfile()
521{ 525{
diff --git a/libkdepim/ksyncprefsdialog.h b/libkdepim/ksyncprefsdialog.h
index 3060e78..d4e1559 100644
--- a/libkdepim/ksyncprefsdialog.h
+++ b/libkdepim/ksyncprefsdialog.h
@@ -78,51 +78,52 @@ class KSyncPrefsDialog : public KDialog
78 protected: 78 protected:
79 void usrWriteConfig(); 79 void usrWriteConfig();
80 80
81 void setupSyncAlgTab(); 81 void setupSyncAlgTab();
82 82
83 private: 83 private:
84 int currentSelection; 84 int currentSelection;
85 QPtrList<KSyncProfile> mSyncProfiles; 85 QPtrList<KSyncProfile> mSyncProfiles;
86 QStringList mSyncProfileNames; 86 QStringList mSyncProfileNames;
87 QLineEdit * mMyMachineName; 87 QLineEdit * mMyMachineName;
88 QComboBox * mProfileBox; 88 QComboBox * mProfileBox;
89 QRadioButton* mIsLocal; 89 QRadioButton* mIsLocal;
90 QRadioButton* mIsNotLocal; 90 QRadioButton* mIsNotLocal;
91 QRadioButton* mIsPhone; 91 QRadioButton* mIsPhone;
92 QCheckBox* mIncludeInRing; 92 QCheckBox* mIncludeInRing;
93 QCheckBox* mIncludeInRingAB; 93 QCheckBox* mIncludeInRingAB;
94 void addProfile ( KSyncProfile* ); 94 void addProfile ( KSyncProfile* );
95 void insertProfiles(); 95 void insertProfiles();
96 void saveProfile(); 96 void saveProfile();
97 QButtonGroup* proGr; 97 QButtonGroup* proGr;
98 98
99 QRadioButton* loc, *rem, *newest, *ask, *f_loc,* f_rem, *both; 99 QRadioButton* loc, *rem, *newest, *ask, *f_loc,* f_rem, *both;
100 100
101 101
102 QLineEdit * mRemotePostcommand; 102 QLineEdit * mRemotePostcommand;
103 QLineEdit * mRemotePrecommand; 103 QLineEdit * mRemotePrecommand;
104 QLineEdit * mRemoteFile; 104 QLineEdit * mRemoteFile;
105 QLineEdit * mLocalTempFile; 105 QLineEdit * mLocalTempFile;
106 106
107 QLineEdit * mRemotePostcommandAB; 107 QLineEdit * mRemotePostcommandAB;
108 QLineEdit * mRemotePrecommandAB; 108 QLineEdit * mRemotePrecommandAB;
109 QLineEdit * mRemoteFileAB; 109 QLineEdit * mRemoteFileAB;
110 QLineEdit * mLocalTempFileAB; 110 QLineEdit * mLocalTempFileAB;
111 111
112 QLineEdit * mPhoneDevice; 112 QLineEdit * mPhoneDevice;
113 QLineEdit * mPhoneConnection; 113 QLineEdit * mPhoneConnection;
114 QLineEdit * mPhoneModel; 114 QLineEdit * mPhoneModel;
115 115
116 QWidget* mSetupSyncAlgTab; 116 QWidget* mSetupSyncAlgTab;
117 QVBox* localFileWidget; 117 QVBox* localFileWidget;
118 QVBox* remoteFileWidget; 118 QVBox* remoteFileWidget;
119 QVBox* phoneWidget; 119 QVBox* phoneWidget;
120 QCheckBox* mWriteBackFile; 120 QCheckBox* mWriteBackFile;
121 QCheckBox* mWriteBackFuture; 121 QCheckBox* mWriteBackFuture;
122 QSpinBox* mWriteBackFutureWeeks; 122 QSpinBox* mWriteBackFutureWeeks;
123 QCheckBox* mWriteBackExisting; 123 QCheckBox* mWriteBackExisting;
124 QCheckBox* mAskForPreferences; 124 QCheckBox* mAskForPreferences;
125 QCheckBox* mShowSummaryAfterSync; 125 QCheckBox* mShowSummaryAfterSync;
126 QCheckBox* mWriteContactToSIM;
126}; 127};
127 128
128#endif 129#endif
diff --git a/libkdepim/ksyncprofile.cpp b/libkdepim/ksyncprofile.cpp
index e7c35fb..c599208 100644
--- a/libkdepim/ksyncprofile.cpp
+++ b/libkdepim/ksyncprofile.cpp
@@ -1,186 +1,177 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KDE-Pim/Pi.
3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org> 3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org>
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either 7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version. 8 version 2 of the License, or (at your option) any later version.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20 20
21// $Id$ 21// $Id$
22 22
23#include <qcolor.h> 23#include <qcolor.h>
24 24
25#include <kconfig.h> 25#include <kconfig.h>
26#include <kstandarddirs.h> 26#include <kstandarddirs.h>
27#include <kglobal.h> 27#include <kglobal.h>
28#include <kdebug.h> 28#include <kdebug.h>
29 29
30#include "ksyncprofile.h" 30#include "ksyncprofile.h"
31 31
32 32
33KSyncProfile::KSyncProfile(): QObject () 33KSyncProfile::KSyncProfile(): QObject ()
34{ 34{
35 setDefault(); 35 setDefault();
36} 36}
37KSyncProfile::~KSyncProfile() 37KSyncProfile::~KSyncProfile()
38{ 38{
39 39
40} 40}
41 41
42 42
43KSyncProfile* KSyncProfile::clone() 43KSyncProfile* KSyncProfile::clone()
44{ 44{
45 KSyncProfile* myClone = new KSyncProfile(); 45 KSyncProfile* myClone = new KSyncProfile();
46 myClone->setPreSyncCommand( mPreSyncCommand ); 46 myClone->setPreSyncCommand( mPreSyncCommand );
47 myClone->setPostSyncCommand( mPostSyncCommand ); 47 myClone->setPostSyncCommand( mPostSyncCommand );
48 myClone->setLocalTempFile( mLocalTempFile); 48 myClone->setLocalTempFile( mLocalTempFile);
49 myClone->setRemoteFileName( mRemoteFileName ); 49 myClone->setRemoteFileName( mRemoteFileName );
50 myClone->setPreSyncCommandAB( mPreSyncCommandAB ); 50 myClone->setPreSyncCommandAB( mPreSyncCommandAB );
51 myClone->setPostSyncCommandAB( mPostSyncCommandAB ); 51 myClone->setPostSyncCommandAB( mPostSyncCommandAB );
52 myClone->setLocalTempFileAB( mLocalTempFileAB); 52 myClone->setLocalTempFileAB( mLocalTempFileAB);
53 myClone->setRemoteFileNameAB( mRemoteFileNameAB ); 53 myClone->setRemoteFileNameAB( mRemoteFileNameAB );
54 myClone->setShowSummaryAfterSync( mShowSummaryAfterSync ); 54 myClone->setShowSummaryAfterSync( mShowSummaryAfterSync );
55 myClone->setAskForPreferences( mAskForPreferences); 55 myClone->setAskForPreferences( mAskForPreferences);
56 myClone->setWriteBackExisting(mWriteBackExisting ); 56 myClone->setWriteBackExisting(mWriteBackExisting );
57 myClone->setWriteBackFile( mWriteBackFile); 57 myClone->setWriteBackFile( mWriteBackFile);
58 myClone->setWriteBackFuture( mWriteBackFuture ); 58 myClone->setWriteBackFuture( mWriteBackFuture );
59 myClone->setWriteBackFutureWeeks( mWriteBackFutureWeeks ); 59 myClone->setWriteBackFutureWeeks( mWriteBackFutureWeeks );
60 myClone->setIncludeInRingSync( mIncludeInRingSync ); 60 myClone->setIncludeInRingSync( mIncludeInRingSync );
61 myClone->setIncludeInRingSyncAB( mIncludeInRingSyncAB ); 61 myClone->setIncludeInRingSyncAB( mIncludeInRingSyncAB );
62 myClone->setSyncPrefs( mSyncPrefs); 62 myClone->setSyncPrefs( mSyncPrefs);
63 myClone->setIsLocalFileSync( mIsLocalFileSync ); 63 myClone->setIsLocalFileSync( mIsLocalFileSync );
64 myClone->setIsPhoneSync( mIsPhoneSync ); 64 myClone->setIsPhoneSync( mIsPhoneSync );
65 myClone->setWriteContactToSIM( mWriteContactToSIM );
65 myClone->setName( "noName" ); 66 myClone->setName( "noName" );
66 //myClone->setIdentifier( "noID" ); 67 //myClone->setIdentifier( "noID" );
67 return myClone; 68 return myClone;
68} 69}
69 70
70 71
71void KSyncProfile::setDefault() 72void KSyncProfile::setDefault()
72{ 73{
73 mPreSyncCommand = i18n("command for downloading remote file to local device"); 74 mPreSyncCommand = i18n("command for downloading remote file to local device");
74 mPostSyncCommand = i18n("command for uploading local temp file to remote device"); 75 mPostSyncCommand = i18n("command for uploading local temp file to remote device");
75 mLocalTempFile = "/tmp/mycalendar.ics"; 76 mLocalTempFile = "/tmp/mycalendar.ics";
76 mRemoteFileName = "/home/polo/kdepim/apps/korganizer/localfile.ics"; 77 mRemoteFileName = "/home/polo/kdepim/apps/korganizer/localfile.ics";
77 mPreSyncCommandAB = i18n("command for downloading remote file to local device"); 78 mPreSyncCommandAB = i18n("command for downloading remote file to local device");
78 mPostSyncCommandAB = i18n("command for uploading local temp file to remote device"); 79 mPostSyncCommandAB = i18n("command for uploading local temp file to remote device");
79 mLocalTempFileAB = "/tmp/std.vcf"; 80 mLocalTempFileAB = "/tmp/std.vcf";
80 mRemoteFileNameAB = "/home/polo/kdepim/apps/kabc/localfile.vcf"; 81 mRemoteFileNameAB = "/home/polo/kdepim/apps/kabc/localfile.vcf";
81 mShowSummaryAfterSync = true; 82 mShowSummaryAfterSync = true;
82 mAskForPreferences = true; 83 mAskForPreferences = true;
83 mWriteBackExisting = false; 84 mWriteBackExisting = false;
84 mWriteBackFuture = false; 85 mWriteBackFuture = false;
85 mWriteBackFutureWeeks = 12; 86 mWriteBackFutureWeeks = 12;
86 mWriteBackFile = true; 87 mWriteBackFile = true;
87 mIncludeInRingSync = false; 88 mIncludeInRingSync = false;
88 mIncludeInRingSyncAB = false; 89 mIncludeInRingSyncAB = false;
89 mSyncPrefs = SYNC_PREF_ASK; 90 mSyncPrefs = SYNC_PREF_ASK;
90 mIsLocalFileSync = true; 91 mIsLocalFileSync = true;
91 mName = "noName"; 92 mName = "noName";
92 mIsPhoneSync = false; 93 mIsPhoneSync = false;
94 mWriteContactToSIM = false;
93 mPhoneDevice = "/dev/ircomm"; 95 mPhoneDevice = "/dev/ircomm";
94 mPhoneConnection = "irda"; 96 mPhoneConnection = "irda";
95 mPhoneModel = "6310i"; 97 mPhoneModel = "6310i";
96} 98}
97void KSyncProfile::readConfig(KConfig *config ) 99void KSyncProfile::readConfig(KConfig *config )
98{ 100{
99 if (config) 101 if (config)
100 { 102 {
101 103
102 config->setGroup( mName ); 104 config->setGroup( mName );
103 105
104 mName = config->readEntry( "Name", mName ); 106 mName = config->readEntry( "Name", mName );
105 mPreSyncCommand = config->readEntry( "PreSyncCommand",mPreSyncCommand ); 107 mPreSyncCommand = config->readEntry( "PreSyncCommand",mPreSyncCommand );
106 mPostSyncCommand = config->readEntry( "PostSyncCommand", mPostSyncCommand ); 108 mPostSyncCommand = config->readEntry( "PostSyncCommand", mPostSyncCommand );
107 mLocalTempFile = config->readEntry( "LocalTempFile", mLocalTempFile ); 109 mLocalTempFile = config->readEntry( "LocalTempFile", mLocalTempFile );
108 mRemoteFileName = config->readEntry( "RemoteFileName", mRemoteFileName ); 110 mRemoteFileName = config->readEntry( "RemoteFileName", mRemoteFileName );
109 111
110 mPreSyncCommandAB = config->readEntry( "PreSyncCommandAB",mPreSyncCommandAB ); 112 mPreSyncCommandAB = config->readEntry( "PreSyncCommandAB",mPreSyncCommandAB );
111 mPostSyncCommandAB = config->readEntry( "PostSyncCommandAB", mPostSyncCommandAB ); 113 mPostSyncCommandAB = config->readEntry( "PostSyncCommandAB", mPostSyncCommandAB );
112 mLocalTempFileAB = config->readEntry( "LocalTempFileAB", mLocalTempFileAB ); 114 mLocalTempFileAB = config->readEntry( "LocalTempFileAB", mLocalTempFileAB );
113 mRemoteFileNameAB = config->readEntry( "RemoteFileNameAB", mRemoteFileNameAB ); 115 mRemoteFileNameAB = config->readEntry( "RemoteFileNameAB", mRemoteFileNameAB );
114 116
115 mPhoneDevice = config->readEntry( "PhoneDevice", mPhoneDevice ); 117 mPhoneDevice = config->readEntry( "PhoneDevice", mPhoneDevice );
116 mPhoneConnection = config->readEntry( "PhoneConnection", mPhoneConnection ); 118 mPhoneConnection = config->readEntry( "PhoneConnection", mPhoneConnection );
117 mPhoneModel = config->readEntry( "PhoneModel", mPhoneModel ); 119 mPhoneModel = config->readEntry( "PhoneModel", mPhoneModel );
118 120
119 mIncludeInRingSync = config->readBoolEntry( "IncludeInRingSync",mIncludeInRingSync ); 121 mIncludeInRingSync = config->readBoolEntry( "IncludeInRingSync",mIncludeInRingSync );
120 mIncludeInRingSyncAB = config->readBoolEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB ); 122 mIncludeInRingSyncAB = config->readBoolEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB );
121 mShowSummaryAfterSync = config->readBoolEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync ); 123 mShowSummaryAfterSync = config->readBoolEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync );
122 mAskForPreferences = config->readBoolEntry( "AskForPreferences",mAskForPreferences ); 124 mAskForPreferences = config->readBoolEntry( "AskForPreferences",mAskForPreferences );
123 mWriteBackExisting = config->readBoolEntry( "WriteBackExisting",mWriteBackExisting ); 125 mWriteBackExisting = config->readBoolEntry( "WriteBackExisting",mWriteBackExisting );
124 mWriteBackFuture = config->readBoolEntry( "WriteBackFuture",mWriteBackFuture ); 126 mWriteBackFuture = config->readBoolEntry( "WriteBackFuture",mWriteBackFuture );
127 mWriteBackFile = config->readBoolEntry( "WriteBackFile",mWriteBackFile );
128 mWriteContactToSIM = config->readBoolEntry( "WriteContactToSIM",mWriteContactToSIM );
125 mSyncPrefs = config->readNumEntry( "SyncPrefs", mSyncPrefs ); 129 mSyncPrefs = config->readNumEntry( "SyncPrefs", mSyncPrefs );
126 mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks ); 130 mWriteBackFutureWeeks = config->readNumEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks );
127 mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync ); 131 mIsLocalFileSync= config->readBoolEntry( "IsLocalFileSync", mIsLocalFileSync );
128 mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync ); 132 mIsPhoneSync= config->readBoolEntry( "IsPhoneSync", mIsPhoneSync );
129 } 133 }
130 else 134 else
131 { 135 {
132 setDefault(); 136 setDefault();
133 } 137 }
134} 138}
135 139
136void KSyncProfile::deleteConfig(KConfig *config ) 140void KSyncProfile::deleteConfig(KConfig *config )
137{ 141{
138 config->deleteGroup( mName ); 142 config->deleteGroup( mName );
139} 143}
140 144
141void KSyncProfile::writeConfig( KConfig * config ) 145void KSyncProfile::writeConfig( KConfig * config )
142{ 146{
143 config->setGroup(mName); 147 config->setGroup(mName);
144 148
145 config->writeEntry( "Name", mName ); 149 config->writeEntry( "Name", mName );
146 config->writeEntry( "PreSyncCommand",mPreSyncCommand ); 150 config->writeEntry( "PreSyncCommand",mPreSyncCommand );
147 config->writeEntry( "PostSyncCommand", mPostSyncCommand ); 151 config->writeEntry( "PostSyncCommand", mPostSyncCommand );
148 config->writeEntry( "LocalTempFile", mLocalTempFile ); 152 config->writeEntry( "LocalTempFile", mLocalTempFile );
149 config->writeEntry( "RemoteFileName", mRemoteFileName ); 153 config->writeEntry( "RemoteFileName", mRemoteFileName );
150 154
151 config->writeEntry( "PreSyncCommandAB",mPreSyncCommandAB ); 155 config->writeEntry( "PreSyncCommandAB",mPreSyncCommandAB );
152 config->writeEntry( "PostSyncCommandAB", mPostSyncCommandAB ); 156 config->writeEntry( "PostSyncCommandAB", mPostSyncCommandAB );
153 config->writeEntry( "LocalTempFileAB", mLocalTempFileAB ); 157 config->writeEntry( "LocalTempFileAB", mLocalTempFileAB );
154 config->writeEntry( "RemoteFileNameAB", mRemoteFileNameAB ); 158 config->writeEntry( "RemoteFileNameAB", mRemoteFileNameAB );
155 159
156 config->writeEntry( "PhoneDevice", mPhoneDevice ); 160 config->writeEntry( "PhoneDevice", mPhoneDevice );
157 config->writeEntry( "PhoneConnection", mPhoneConnection ); 161 config->writeEntry( "PhoneConnection", mPhoneConnection );
158 config->writeEntry( "PhoneModel", mPhoneModel ); 162 config->writeEntry( "PhoneModel", mPhoneModel );
159 163
160 config->writeEntry( "IncludeInRingSync",mIncludeInRingSync ); 164 config->writeEntry( "IncludeInRingSync",mIncludeInRingSync );
161 config->writeEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB ); 165 config->writeEntry( "IncludeInRingSyncAB",mIncludeInRingSyncAB );
162 config->writeEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync ); 166 config->writeEntry( "ShowSummaryAfterSync", mShowSummaryAfterSync );
163 config->writeEntry( "AskForPreferences",mAskForPreferences ); 167 config->writeEntry( "AskForPreferences",mAskForPreferences );
164 config->writeEntry( "WriteBackExisting",mWriteBackExisting ); 168 config->writeEntry( "WriteBackExisting",mWriteBackExisting );
165 config->writeEntry( "WriteBackFuture",mWriteBackFuture ); 169 config->writeEntry( "WriteBackFuture",mWriteBackFuture );
170 config->writeEntry( "WriteBackFile",mWriteBackFile );
171 config->writeEntry( "WriteContactToSIM",mWriteContactToSIM );
166 config->writeEntry( "SyncPrefs", mSyncPrefs ); 172 config->writeEntry( "SyncPrefs", mSyncPrefs );
167 config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks); 173 config->writeEntry( "WriteBackFutureWeeks", mWriteBackFutureWeeks);
168 config->writeEntry( "IsLocalFileSync", mIsLocalFileSync ); 174 config->writeEntry( "IsLocalFileSync", mIsLocalFileSync );
169 config->writeEntry( "IsPhoneSync", mIsPhoneSync ); 175 config->writeEntry( "IsPhoneSync", mIsPhoneSync );
170} 176}
171 177
172/*
173class KPrefsItemInt : public KPrefsItem {
174 public:
175 KPrefsItemInt(const QString &group,const QString &name,int *,int defaultValue=0);
176 virtual ~KPrefsItemInt() {}
177
178 void setDefault();
179 void readConfig(KConfig *);
180 void writeConfig(KConfig *);
181
182 private:
183 int *mReference;
184 int mDefault;
185};
186*/
diff --git a/libkdepim/ksyncprofile.h b/libkdepim/ksyncprofile.h
index a0cfb71..0039a4b 100644
--- a/libkdepim/ksyncprofile.h
+++ b/libkdepim/ksyncprofile.h
@@ -1,139 +1,132 @@
1/* 1/*
2 This file is part of KOrganizer. 2 This file is part of KDE-Pim/Pi.
3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org> 3 Copyright (c) 2004 Lutz Rogowski <rogowski@kde.org>
4 4
5 This library is free software; you can redistribute it and/or 5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public 6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either 7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version. 8 version 2 of the License, or (at your option) any later version.
9 9
10 This library is distributed in the hope that it will be useful, 10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of 11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details. 13 Library General Public License for more details.
14 14
15 You should have received a copy of the GNU Library General Public License 15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to 16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330, 17 the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
18 Boston, MA 02111-1307, USA. 18 Boston, MA 02111-1307, USA.
19*/ 19*/
20#ifndef _KSYNCPROFILE_H 20#ifndef _KSYNCPROFILE_H
21#define _KSYNCPROFILE_H 21#define _KSYNCPROFILE_H
22 22
23#include <qptrlist.h> 23#include <qptrlist.h>
24#include <qcolor.h> 24#include <qcolor.h>
25#include <qfont.h> 25#include <qfont.h>
26#include <qstringlist.h> 26#include <qstringlist.h>
27#include <qobject.h> 27#include <qobject.h>
28#include <qstring.h> 28#include <qstring.h>
29 29
30#include <libkcal/syncdefines.h> 30#include <libkcal/syncdefines.h>
31 31
32 32
33 33
34class KConfig; 34class KConfig;
35 35
36/**
37 @short Class for storing a preferences setting
38 @author Cornelius Schumacher
39 @see KPref
40 36
41 This class represents one preferences setting as used by @ref KPrefs.
42 Subclasses of KPrefsItem implement storage functions for a certain type of
43 setting. Normally you don't have to use this class directly. Use the special
44 addItem() functions of KPrefs instead. If you subclass this class you will
45 have to register instances with the function KPrefs::addItem().
46*/
47class KSyncProfile : public QObject { 37class KSyncProfile : public QObject {
48 public: 38 public:
49 KSyncProfile(); 39 KSyncProfile();
50 ~KSyncProfile() ; 40 ~KSyncProfile() ;
51 41
52 KSyncProfile* clone(); 42 KSyncProfile* clone();
53 void setDefault(); 43 void setDefault();
54 void readConfig(KConfig *); 44 void readConfig(KConfig *);
55 void writeConfig(KConfig *); 45 void writeConfig(KConfig *);
56 void deleteConfig(KConfig *); 46 void deleteConfig(KConfig *);
57 47
58 void setPreSyncCommand( const QString& n ) {mPreSyncCommand = n;} 48 void setPreSyncCommand( const QString& n ) {mPreSyncCommand = n;}
59 QString getPreSyncCommand( ) { return mPreSyncCommand; } 49 QString getPreSyncCommand( ) { return mPreSyncCommand; }
60 void setPostSyncCommand( const QString& n ) {mPostSyncCommand = n;} 50 void setPostSyncCommand( const QString& n ) {mPostSyncCommand = n;}
61 QString getPostSyncCommand( ) { return mPostSyncCommand;} 51 QString getPostSyncCommand( ) { return mPostSyncCommand;}
62 void setLocalTempFile( const QString& n ) { mLocalTempFile= n;} 52 void setLocalTempFile( const QString& n ) { mLocalTempFile= n;}
63 QString getLocalTempFile( ) { return mLocalTempFile;} 53 QString getLocalTempFile( ) { return mLocalTempFile;}
64 void setRemoteFileName( const QString& n ) { mRemoteFileName = n;} 54 void setRemoteFileName( const QString& n ) { mRemoteFileName = n;}
65 QString getRemoteFileName( ) { return mRemoteFileName;} 55 QString getRemoteFileName( ) { return mRemoteFileName;}
66 56
67 void setPreSyncCommandAB( const QString& n ) {mPreSyncCommandAB = n;} 57 void setPreSyncCommandAB( const QString& n ) {mPreSyncCommandAB = n;}
68 QString getPreSyncCommandAB( ) { return mPreSyncCommandAB; } 58 QString getPreSyncCommandAB( ) { return mPreSyncCommandAB; }
69 void setPostSyncCommandAB( const QString& n ) {mPostSyncCommandAB = n;} 59 void setPostSyncCommandAB( const QString& n ) {mPostSyncCommandAB = n;}
70 QString getPostSyncCommandAB( ) { return mPostSyncCommandAB;} 60 QString getPostSyncCommandAB( ) { return mPostSyncCommandAB;}
71 void setLocalTempFileAB( const QString& n ) { mLocalTempFileAB= n;} 61 void setLocalTempFileAB( const QString& n ) { mLocalTempFileAB= n;}
72 QString getLocalTempFileAB( ) { return mLocalTempFileAB;} 62 QString getLocalTempFileAB( ) { return mLocalTempFileAB;}
73 void setRemoteFileNameAB( const QString& n ) { mRemoteFileNameAB = n;} 63 void setRemoteFileNameAB( const QString& n ) { mRemoteFileNameAB = n;}
74 QString getRemoteFileNameAB( ) { return mRemoteFileNameAB;} 64 QString getRemoteFileNameAB( ) { return mRemoteFileNameAB;}
75 65
76 void setPhoneDevice( const QString& n ) { mPhoneDevice = n;} 66 void setPhoneDevice( const QString& n ) { mPhoneDevice = n;}
77 QString getPhoneDevice( ) { return mPhoneDevice;} 67 QString getPhoneDevice( ) { return mPhoneDevice;}
78 void setPhoneConnection( const QString& n ) { mPhoneConnection = n;} 68 void setPhoneConnection( const QString& n ) { mPhoneConnection = n;}
79 QString getPhoneConnection( ) { return mPhoneConnection;} 69 QString getPhoneConnection( ) { return mPhoneConnection;}
80 void setPhoneModel( const QString& n ) { mPhoneModel = n;} 70 void setPhoneModel( const QString& n ) { mPhoneModel = n;}
81 QString getPhoneModel( ) { return mPhoneModel;} 71 QString getPhoneModel( ) { return mPhoneModel;}
82 /* 72 /*
83 void set( const QString& n ) { = n;} 73 void set( const QString& n ) { = n;}
84 QString get( ) { return ;} 74 QString get( ) { return ;}
85 */ 75 */
86 76
87 void setName( const QString& n ) {mName = n;} 77 void setName( const QString& n ) {mName = n;}
88 QString getName( ) { return mName;} 78 QString getName( ) { return mName;}
89 void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;} 79 void setShowSummaryAfterSync( bool b ) { mShowSummaryAfterSync = b;}
90 bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;} 80 bool getShowSummaryAfterSync( ) { return mShowSummaryAfterSync ;}
91 void setAskForPreferences( bool b ) { mAskForPreferences= b;} 81 void setAskForPreferences( bool b ) { mAskForPreferences= b;}
92 bool getAskForPreferences( ) { return mAskForPreferences;} 82 bool getAskForPreferences( ) { return mAskForPreferences;}
93 void setWriteBackExisting( bool b ) { mWriteBackExisting = b;} 83 void setWriteBackExisting( bool b ) { mWriteBackExisting = b;}
94 bool getWriteBackExisting( ) { return mWriteBackExisting;} 84 bool getWriteBackExisting( ) { return mWriteBackExisting;}
95 void setWriteBackFuture( bool b ) { mWriteBackFuture = b;} 85 void setWriteBackFuture( bool b ) { mWriteBackFuture = b;}
96 bool getWriteBackFuture( ) { return mWriteBackFuture;} 86 bool getWriteBackFuture( ) { return mWriteBackFuture;}
97 void setWriteBackFile( bool b ) { mWriteBackFile= b;} 87 void setWriteBackFile( bool b ) { mWriteBackFile= b;}
98 bool getWriteBackFile( ) { return mWriteBackFile;} 88 bool getWriteBackFile( ) { return mWriteBackFile;}
89 void setWriteContactToSIM( bool b ) { mWriteContactToSIM= b;}
90 bool getWriteContactToSIM( ) { return mWriteContactToSIM;}
99 void setIncludeInRingSync( bool b ) {mIncludeInRingSync = b;} 91 void setIncludeInRingSync( bool b ) {mIncludeInRingSync = b;}
100 bool getIncludeInRingSync( ) { return mIncludeInRingSync;} 92 bool getIncludeInRingSync( ) { return mIncludeInRingSync;}
101 void setIncludeInRingSyncAB( bool b ) {mIncludeInRingSyncAB = b;} 93 void setIncludeInRingSyncAB( bool b ) {mIncludeInRingSyncAB = b;}
102 bool getIncludeInRingSyncAB( ) { return mIncludeInRingSyncAB;} 94 bool getIncludeInRingSyncAB( ) { return mIncludeInRingSyncAB;}
103 void setSyncPrefs( int n ) { mSyncPrefs= n;} 95 void setSyncPrefs( int n ) { mSyncPrefs= n;}
104 int getSyncPrefs( ) { return mSyncPrefs;} 96 int getSyncPrefs( ) { return mSyncPrefs;}
105 void setWriteBackFutureWeeks( int n ) { mWriteBackFutureWeeks= n;} 97 void setWriteBackFutureWeeks( int n ) { mWriteBackFutureWeeks= n;}
106 int getWriteBackFutureWeeks( ) { return mWriteBackFutureWeeks;} 98 int getWriteBackFutureWeeks( ) { return mWriteBackFutureWeeks;}
107 void setIsLocalFileSync( bool b ) { mIsLocalFileSync= b;} 99 void setIsLocalFileSync( bool b ) { mIsLocalFileSync= b;}
108 bool getIsLocalFileSync( ) { return mIsLocalFileSync;} 100 bool getIsLocalFileSync( ) { return mIsLocalFileSync;}
109 void setIsPhoneSync( bool b ) { mIsPhoneSync= b;} 101 void setIsPhoneSync( bool b ) { mIsPhoneSync= b;}
110 bool getIsPhoneSync( ) { return mIsPhoneSync;} 102 bool getIsPhoneSync( ) { return mIsPhoneSync;}
111 private: 103 private:
112 QString mName; 104 QString mName;
113 QString mPreSyncCommand; 105 QString mPreSyncCommand;
114 QString mPostSyncCommand; 106 QString mPostSyncCommand;
115 QString mLocalTempFile; 107 QString mLocalTempFile;
116 QString mRemoteFileName; 108 QString mRemoteFileName;
117 QString mPreSyncCommandAB; 109 QString mPreSyncCommandAB;
118 QString mPostSyncCommandAB; 110 QString mPostSyncCommandAB;
119 QString mLocalTempFileAB; 111 QString mLocalTempFileAB;
120 QString mRemoteFileNameAB; 112 QString mRemoteFileNameAB;
121 113
122 QString mPhoneDevice; 114 QString mPhoneDevice;
123 QString mPhoneConnection; 115 QString mPhoneConnection;
124 QString mPhoneModel; 116 QString mPhoneModel;
125 117
126 bool mIncludeInRingSync; 118 bool mIncludeInRingSync;
127 bool mIncludeInRingSyncAB; 119 bool mIncludeInRingSyncAB;
128 int mSyncPrefs; 120 int mSyncPrefs;
129 bool mWriteBackFile; 121 bool mWriteBackFile;
130 bool mWriteBackExisting; 122 bool mWriteBackExisting;
131 bool mWriteBackFuture; 123 bool mWriteBackFuture;
132 int mWriteBackFutureWeeks; 124 int mWriteBackFutureWeeks;
133 bool mAskForPreferences; 125 bool mAskForPreferences;
134 bool mShowSummaryAfterSync; 126 bool mShowSummaryAfterSync;
135 bool mIsLocalFileSync; 127 bool mIsLocalFileSync;
136 bool mIsPhoneSync; 128 bool mIsPhoneSync;
129 bool mWriteContactToSIM;
137}; 130};
138 131
139#endif 132#endif