summaryrefslogtreecommitdiffabout
path: root/libkdepim
Unidiff
Diffstat (limited to 'libkdepim') (more/less context) (show whitespace changes)
-rw-r--r--libkdepim/ksyncprefsdialog.cpp53
-rw-r--r--libkdepim/ksyncprefsdialog.h1
2 files changed, 47 insertions, 7 deletions
diff --git a/libkdepim/ksyncprefsdialog.cpp b/libkdepim/ksyncprefsdialog.cpp
index b097277..6f46d19 100644
--- a/libkdepim/ksyncprefsdialog.cpp
+++ b/libkdepim/ksyncprefsdialog.cpp
@@ -200,55 +200,60 @@ void KSyncPrefsDialog::setupSyncAlgTab()
200 mFilterInAB = new QComboBox( fibo2 ); 200 mFilterInAB = new QComboBox( fibo2 );
201 201
202 mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame ); 202 mWriteBackFile = new QCheckBox( i18n("Write back synced data"), topFrame );
203 // topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1); 203 // topLayout->addMultiCellWidget(mWriteBackFile, iii,iii,0,1);
204 // ++iii; 204 // ++iii;
205 205
206 QVGroupBox* gb2 = new QVGroupBox( i18n("Write back options"), topFrame); 206 QVGroupBox* gb2 = new QVGroupBox( i18n("Write back options"), topFrame);
207 //topLayout->addMultiCellWidget(gb2, iii,iii,0,1); 207 //topLayout->addMultiCellWidget(gb2, iii,iii,0,1);
208 //++iii; 208 //++iii;
209 { 209 {
210 QVGroupBox*topFrame = gb2; 210 QVGroupBox*topFrame = gb2;
211 mWriteBackExisting= new QCheckBox( i18n("Write back (on remote) existing entries only"), topFrame ); 211 mWriteBackExisting= new QCheckBox( i18n("Write back (on remote) existing entries only"), topFrame );
212 QHGroupBox* gb4 = new QHGroupBox( i18n("Apply filter when adding data to remote:"), topFrame); 212 QHGroupBox* gb4 = new QHGroupBox( i18n("Apply filter when adding data to remote:"), topFrame);
213 QVBox * fibo = new QVBox ( gb4 ); 213 QVBox * fibo = new QVBox ( gb4 );
214 new QLabel ( i18n("Outgoing calendar filter:"), fibo ); 214 new QLabel ( i18n("Outgoing calendar filter:"), fibo );
215 mFilterOutCal = new QComboBox( fibo ); 215 mFilterOutCal = new QComboBox( fibo );
216 fibo = new QVBox ( gb4 ); 216 fibo = new QVBox ( gb4 );
217 new QLabel ( i18n("Outgoing addressbook filter:"), fibo ); 217 new QLabel ( i18n("Outgoing addressbook filter:"), fibo );
218 mFilterOutAB = new QComboBox( fibo ); 218 mFilterOutAB = new QComboBox( fibo );
219 //topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1); 219 //topLayout->addMultiCellWidget(mWriteBackExisting, iii,iii,0,1);
220 //++iii; 220 //++iii;
221 mWriteBackFuture= new QCheckBox( i18n("Write back (calendar) entries for time period only"), topFrame ); 221 mWriteBackFuture= new QCheckBox( i18n("Write back (calendar) entries for time period only"), topFrame );
222 //topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1); 222 //topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1);
223 //++iii; 223 //++iii;
224 QHGroupBox* gb3 = new QHGroupBox( i18n("Time period"), topFrame); 224 QVGroupBox* gb3 = new QVGroupBox( i18n("Time period"), topFrame);
225 connect ( mWriteBackFuture, SIGNAL( toggled ( bool ) ), gb3, SLOT ( setEnabled ( bool ) ) ); 225 connect ( mWriteBackFuture, SIGNAL( toggled ( bool ) ), gb3, SLOT ( setEnabled ( bool ) ) );
226
226 new QLabel( i18n("From ") , gb3 ); 227 new QLabel( i18n("From ") , gb3 );
227 mWriteBackPastWeeks= new QSpinBox(1,104, 1, gb3); 228 QHBox * tf1 = new QHBox ( gb3 );
228 new QLabel( i18n(" weeks in the past to ") , gb3 ); 229 mWriteBackPastWeeks= new QSpinBox(1,104, 1, tf1 );
229 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, gb3); 230 mWriteBackPastWeeks->setMaximumWidth( 100 );
230 new QLabel( i18n(" weeks in the future ") , gb3 ); 231 new QLabel( i18n(" weeks in the past to ") ,tf1 );
232 QHBox * tf2 = new QHBox ( gb3 );
233 mWriteBackFutureWeeks= new QSpinBox(1,104, 1, tf2);
234 mWriteBackFutureWeeks->setMaximumWidth( 100 );
235 new QLabel( i18n(" weeks in the future ") , tf2 );
231 //topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1); 236 //topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1);
232 //++iii; 237 //++iii;
233 gb3->setEnabled( false ); 238 gb3->setEnabled( false );
234 connect ( mWriteBackExisting, SIGNAL( toggled ( bool ) ), gb4, SLOT ( setDisabled ( bool ) ) ); 239 connect ( mWriteBackExisting, SIGNAL( toggled ( bool ) ), gb4, SLOT ( setDisabled ( bool ) ) );
235 } 240 }
236 connect ( mWriteBackFile, SIGNAL( toggled ( bool ) ), gb2, SLOT ( setEnabled ( bool ) ) ); 241 connect ( mWriteBackFile, SIGNAL( toggled ( bool ) ), gb2, SLOT ( setEnabled ( bool ) ) );
237 242
238 } 243 }
239 proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame); 244 proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame);
240 gr = proGr; 245 gr = proGr;
241 topLayout->addMultiCellWidget(gr, iii,iii,0,1); 246 topLayout->addMultiCellWidget(gr, iii,iii,0,1);
242 ++iii; 247 ++iii;
243 mIsLocal = new QRadioButton ( i18n("Local file"), gr ); 248 mIsLocal = new QRadioButton ( i18n("Local file"), gr );
244 mIsPi = new QRadioButton ( i18n("Pi-Sync - all calendars ( direct Kx/Pi to Kx/Pi sync )"), gr ); 249 mIsPi = new QRadioButton ( i18n("Pi-Sync - all calendars ( direct Kx/Pi to Kx/Pi sync )"), gr );
245 connect (mIsPi, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) ); 250 connect (mIsPi, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
246 mIsPiSpecific = new QRadioButton ( i18n("Pi-Sync - selected calendars ( direct Kx/Pi to Kx/Pi sync )"), gr ); 251 mIsPiSpecific = new QRadioButton ( i18n("Pi-Sync - selected calendars ( direct Kx/Pi to Kx/Pi sync )"), gr );
247 connect (mIsPiSpecific, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) ); 252 connect (mIsPiSpecific, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
248 mIsNotLocal = new QRadioButton ( i18n("Remote file (w down/upload command)"), gr ); 253 mIsNotLocal = new QRadioButton ( i18n("Remote file (w down/upload command)"), gr );
249 connect (mIsLocal, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) ); 254 connect (mIsLocal, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
250 mIsPhone = new QRadioButton ( i18n("Mobile device (cell phone)"), gr ); 255 mIsPhone = new QRadioButton ( i18n("Mobile device (cell phone)"), gr );
251 connect (mIsPhone, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) ); 256 connect (mIsPhone, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
252 257
253 QVGroupBox* gb1 = new QVGroupBox( i18n("Profile kind specific settings"), topFrame); 258 QVGroupBox* gb1 = new QVGroupBox( i18n("Profile kind specific settings"), topFrame);
254 topLayout->addMultiCellWidget(gb1, iii,iii,0,1); 259 topLayout->addMultiCellWidget(gb1, iii,iii,0,1);
@@ -357,73 +362,96 @@ void KSyncPrefsDialog::setupSyncAlgTab()
357 mRemotePwAB = new QLineEdit(temphb); 362 mRemotePwAB = new QLineEdit(temphb);
358 mRemotePwPWM = new QLineEdit(temphb); 363 mRemotePwPWM = new QLineEdit(temphb);
359 364
360 lab = new QLabel( i18n("Remote IP address: (could be the same for each)"), piWidget); 365 lab = new QLabel( i18n("Remote IP address: (could be the same for each)"), piWidget);
361 temphb = new QHBox( piWidget ); 366 temphb = new QHBox( piWidget );
362 mRemoteIP = new QLineEdit(temphb); 367 mRemoteIP = new QLineEdit(temphb);
363 mRemoteIPAB = new QLineEdit(temphb); 368 mRemoteIPAB = new QLineEdit(temphb);
364 mRemoteIPPWM = new QLineEdit(temphb); 369 mRemoteIPPWM = new QLineEdit(temphb);
365 370
366 lab = new QLabel( i18n("Remote port number: (should be different for each)"), piWidget); 371 lab = new QLabel( i18n("Remote port number: (should be different for each)"), piWidget);
367 temphb = new QHBox( piWidget ); 372 temphb = new QHBox( piWidget );
368 mRemotePort = new QLineEdit(temphb); 373 mRemotePort = new QLineEdit(temphb);
369 mRemotePortAB = new QLineEdit(temphb); 374 mRemotePortAB = new QLineEdit(temphb);
370 mRemotePortPWM = new QLineEdit(temphb); 375 mRemotePortPWM = new QLineEdit(temphb);
371 376
372 lab = new QLabel( i18n("Local/remote Resource sync partners (Leave empty to not sync)"), piWidget); 377 lab = new QLabel( i18n("Local/remote Resource sync partners (Leave empty to not sync)"), piWidget);
373 mTableBox = new QHBox( piWidget ); 378 mTableBox = new QHBox( piWidget );
374 mResTableKopi = new QTable( 1, 1, mTableBox ); 379 mResTableKopi = new QTable( 1, 1, mTableBox );
375 mResTableKapi = new QTable( 1, 1, mTableBox ); 380 mResTableKapi = new QTable( 1, 1, mTableBox );
376 mResTablePwmpi = new QTable( 1, 1, mTableBox ); 381 mResTablePwmpi = new QTable( 1, 1, mTableBox );
377 mResTableKopi->horizontalHeader()->setLabel( 0, i18n("Remote") ); 382 mResTableKopi->horizontalHeader()->setLabel( 0, i18n("Remote") );
378 mResTableKapi->horizontalHeader()->setLabel( 0, i18n("Remote") ); 383 mResTableKapi->horizontalHeader()->setLabel( 0, i18n("Remote") );
379 mResTablePwmpi->horizontalHeader()->setLabel( 0, i18n("Remote") ); 384 mResTablePwmpi->horizontalHeader()->setLabel( 0, i18n("Remote") );
380 mResTableKopi->setLeftMargin( 80 ); 385 mResTableKopi->setLeftMargin( 80 );
386 mResTableKapi->setLeftMargin( 80 );
381 } 387 }
382 // ****************************************** 388 // ******************************************
383 // Profile kind specific settings END 389 // Profile kind specific settings END
384 390
385} 391}
386 392
387void KSyncPrefsDialog::readResources() 393void KSyncPrefsDialog::readResources()
388{ 394{
389 mResourcesKopi.clear(); 395 mResourcesKopi.clear();
390 mResourcesKapi.clear();
391 KConfig fc(locateLocal("config","kopicalendarrc")); 396 KConfig fc(locateLocal("config","kopicalendarrc"));
392 fc.setGroup("CC"); 397 fc.setGroup("CC");
393 int numCals = fc.readNumEntry("NumberCalendars",0 ); 398 int numCals = fc.readNumEntry("NumberCalendars",0 );
394 int curCal = 1; 399 int curCal = 1;
395 while ( curCal <= numCals ) { 400 while ( curCal <= numCals ) {
396 QString prefix = "Cal_" +QString::number( curCal ); 401 QString prefix = "Cal_" +QString::number( curCal );
397 QString name = fc.readEntry( prefix+"_Name", "Calendar"); 402 QString name = fc.readEntry( prefix+"_Name", "Calendar");
398 mResourcesKopi.append( name ); 403 mResourcesKopi.append( name );
399 ++curCal; 404 ++curCal;
400 } 405 }
401 mResTableKopi->setNumRows( mResourcesKopi.count() ); 406 mResTableKopi->setNumRows( mResourcesKopi.count() );
402 int i; 407 int i;
403 for ( i = 0;i < mResourcesKopi.count(); ++i ) { 408 for ( i = 0;i < mResourcesKopi.count(); ++i ) {
404 mResTableKopi->verticalHeader ()->setLabel( i, mResourcesKopi[i] ); 409 mResTableKopi->verticalHeader ()->setLabel( i, mResourcesKopi[i] );
405 } 410 }
411
412 mResourcesKapi.clear();
413
414 KConfig conf ( locateLocal("config", "kabcrc") );
415
416 conf.setGroup( "General" );
417
418 QStringList keys = conf.readListEntry( "ResourceKeys" );
419 //keys += conf->readListEntry( "PassiveResourceKeys" );
420
421 //QString standardKey = mConfig->readEntry( "Standard" );
422
423 for ( QStringList::Iterator it = keys.begin(); it != keys.end(); ++it ) {
424 conf.setGroup("Resource_"+ (*it) );
425 QString name = conf.readEntry( "ResourceName" );
426 mResourcesKapi.append( name );
427 }
428 mResTableKapi->setNumRows( mResourcesKapi.count() );
429 for ( i = 0;i < mResourcesKopi.count(); ++i ) {
430 mResTableKapi->verticalHeader ()->setLabel( i, mResourcesKapi[i] );
431 }
432
433
406} 434}
407void KSyncPrefsDialog::readFilter() 435void KSyncPrefsDialog::readFilter()
408{ 436{
409 mFilterKapi.clear(); 437 mFilterKapi.clear();
410 mFilterKopi.clear(); 438 mFilterKopi.clear();
411 KConfig cfgko(locateLocal("config","korganizerrc")); 439 KConfig cfgko(locateLocal("config","korganizerrc"));
412 KConfig cfgka(locateLocal("config","kaddressbookrc")); 440 KConfig cfgka(locateLocal("config","kaddressbookrc"));
413 cfgko.setGroup("General"); 441 cfgko.setGroup("General");
414 mFilterKopi = cfgko.readListEntry("CalendarFilters"); 442 mFilterKopi = cfgko.readListEntry("CalendarFilters");
415 cfgka.setGroup("Filter"); 443 cfgka.setGroup("Filter");
416 int count = cfgka.readNumEntry( "Count", 0 ); 444 int count = cfgka.readNumEntry( "Count", 0 );
417 for ( int i = 0; i < count; i++ ) { 445 for ( int i = 0; i < count; i++ ) {
418 cfgka.setGroup("Filter_"+QString::number( i ) ); 446 cfgka.setGroup("Filter_"+QString::number( i ) );
419 mFilterKapi.append( cfgka.readEntry("Name", "internal error") ); 447 mFilterKapi.append( cfgka.readEntry("Name", "internal error") );
420 } 448 }
421 mFilterOutCal->clear(); 449 mFilterOutCal->clear();
422 mFilterInCal->clear(); 450 mFilterInCal->clear();
423 mFilterOutAB->clear(); 451 mFilterOutAB->clear();
424 mFilterInAB->clear(); 452 mFilterInAB->clear();
425 QStringList temp = mFilterKopi; 453 QStringList temp = mFilterKopi;
426 temp.prepend(i18n("No Filter") ); 454 temp.prepend(i18n("No Filter") );
427 mFilterOutCal->insertStringList( temp ); 455 mFilterOutCal->insertStringList( temp );
428 mFilterInCal->insertStringList( temp ); 456 mFilterInCal->insertStringList( temp );
429 temp = mFilterKapi; 457 temp = mFilterKapi;
@@ -460,65 +488,69 @@ void KSyncPrefsDialog::chooseFile()
460 if ( fn == "" ) 488 if ( fn == "" )
461 return; 489 return;
462 mRemoteFile->setText( fn ); 490 mRemoteFile->setText( fn );
463} 491}
464 492
465void KSyncPrefsDialog::chooseFileAB() 493void KSyncPrefsDialog::chooseFileAB()
466{ 494{
467 QString fn = QDir::homeDirPath(); 495 QString fn = QDir::homeDirPath();
468 496
469 fn =KFileDialog:: getOpenFileName( fn, i18n("Sync filename(*.vcf)"), this ); 497 fn =KFileDialog:: getOpenFileName( fn, i18n("Sync filename(*.vcf)"), this );
470 if ( fn == "" ) 498 if ( fn == "" )
471 return; 499 return;
472 mRemoteFileAB->setText( fn ); 500 mRemoteFileAB->setText( fn );
473} 501}
474 502
475void KSyncPrefsDialog::chooseFilePWM() 503void KSyncPrefsDialog::chooseFilePWM()
476{ 504{
477 QString fn = QDir::homeDirPath(); 505 QString fn = QDir::homeDirPath();
478 506
479 fn =KFileDialog:: getOpenFileName( fn, i18n("Sync filename(*.pwm)"), this ); 507 fn =KFileDialog:: getOpenFileName( fn, i18n("Sync filename(*.pwm)"), this );
480 if ( fn == "" ) 508 if ( fn == "" )
481 return; 509 return;
482 mRemoteFilePWM->setText( fn ); 510 mRemoteFilePWM->setText( fn );
483} 511}
484 512void KSyncPrefsDialog::updateMyCaption()
513{
514 setCaption( mProfileBox->currentText() + " : " +i18n("Synchronization Preferences"));
515}
485void KSyncPrefsDialog::textChanged( const QString & s ) 516void KSyncPrefsDialog::textChanged( const QString & s )
486{ 517{
487 if ( mProfileBox->count() == 0 ) 518 if ( mProfileBox->count() == 0 )
488 return; 519 return;
489 if ( currentSelection < 3 ) { 520 if ( currentSelection < 3 ) {
490 //KMessageBox::error(this,i18n("This profil name\ncannot be edited!\n"),i18n("KO/Pi config error")); 521 //KMessageBox::error(this,i18n("This profil name\ncannot be edited!\n"),i18n("KO/Pi config error"));
491 mProfileBox->blockSignals( true ); 522 mProfileBox->blockSignals( true );
492 mProfileBox->setCurrentItem(mProfileBox-> currentItem ()); 523 mProfileBox->setCurrentItem(mProfileBox-> currentItem ());
493 mProfileBox->blockSignals( false ); 524 mProfileBox->blockSignals( false );
494 return; 525 return;
495 } 526 }
496 //qDebug("cur i %d ",mProfileBox-> currentItem () ); 527 //qDebug("cur i %d ",mProfileBox-> currentItem () );
497 mProfileBox->changeItem ( s, mProfileBox-> currentItem () ) ; 528 mProfileBox->changeItem ( s, mProfileBox-> currentItem () ) ;
498 KSyncProfile* prof = mSyncProfiles.at(mProfileBox-> currentItem ()) ; 529 KSyncProfile* prof = mSyncProfiles.at(mProfileBox-> currentItem ()) ;
499 prof->setName( s ); 530 prof->setName( s );
500 mSyncProfileNames[mProfileBox-> currentItem ()] = s; 531 mSyncProfileNames[mProfileBox-> currentItem ()] = s;
532 updateMyCaption();
501} 533}
502void KSyncPrefsDialog::profileChanged( int item ) 534void KSyncPrefsDialog::profileChanged( int item )
503{ 535{
504 //qDebug("KSyncPrefsDialog::profileChanged before %d, count %d ", item, mProfileBox->count() ); 536 //qDebug("KSyncPrefsDialog::profileChanged before %d, count %d ", item, mProfileBox->count() );
505 KSyncProfile* prof; 537 KSyncProfile* prof;
506 saveProfile(); 538 saveProfile();
507 readFilter(); 539 readFilter();
508 readResources(); 540 readResources();
509 currentSelection = item; 541 currentSelection = item;
510 prof = mSyncProfiles.at(item) ; 542 prof = mSyncProfiles.at(item) ;
511 543
512 mRemotePw->setText(prof->getRemotePw()); 544 mRemotePw->setText(prof->getRemotePw());
513 mRemoteIP->setText(prof->getRemoteIP()); 545 mRemoteIP->setText(prof->getRemoteIP());
514 mRemotePort->setText(prof->getRemotePort()); 546 mRemotePort->setText(prof->getRemotePort());
515 547
516 mRemotePwAB->setText(prof->getRemotePwAB()); 548 mRemotePwAB->setText(prof->getRemotePwAB());
517 mRemoteIPAB->setText(prof->getRemoteIPAB()); 549 mRemoteIPAB->setText(prof->getRemoteIPAB());
518 mRemotePortAB->setText(prof->getRemotePortAB()); 550 mRemotePortAB->setText(prof->getRemotePortAB());
519 551
520 mRemotePwPWM->setText(prof->getRemotePwPWM()); 552 mRemotePwPWM->setText(prof->getRemotePwPWM());
521 mRemoteIPPWM->setText(prof->getRemoteIPPWM()); 553 mRemoteIPPWM->setText(prof->getRemoteIPPWM());
522 mRemotePortPWM->setText(prof->getRemotePortPWM()); 554 mRemotePortPWM->setText(prof->getRemotePortPWM());
523 555
524 mRemotePrecommand->setText(prof->getPreSyncCommand()); 556 mRemotePrecommand->setText(prof->getPreSyncCommand());
@@ -591,48 +623,49 @@ void KSyncPrefsDialog::profileChanged( int item )
591 mIsKapiFileR->setChecked(prof->getIsKapiFile()) ; 623 mIsKapiFileR->setChecked(prof->getIsKapiFile()) ;
592 624
593 625
594 QStringList res = QStringList::split( ":",prof->getResSpecKopi(), true ); 626 QStringList res = QStringList::split( ":",prof->getResSpecKopi(), true );
595 int add = res.count()/2; 627 int add = res.count()/2;
596 int i; 628 int i;
597 for ( i = 0;i < add ; ++i ) { 629 for ( i = 0;i < add ; ++i ) {
598 mResTableKopi->setText( i, 0, res[i+add] ); 630 mResTableKopi->setText( i, 0, res[i+add] );
599 } 631 }
600 res = QStringList::split( ":",prof->getResSpecKapi(), true); 632 res = QStringList::split( ":",prof->getResSpecKapi(), true);
601 add = res.count()/2; 633 add = res.count()/2;
602 for ( i = 0;i < add; ++i ) { 634 for ( i = 0;i < add; ++i ) {
603 mResTableKapi->setText( i, 0, res[i+add] ); 635 mResTableKapi->setText( i, 0, res[i+add] );
604 } 636 }
605 mIsNotLocal->setChecked(!prof->getIsLocalFileSync() && !prof->getIsPhoneSync() &&!prof->getIsPiSync() &&!prof->getIsPiSyncSpec()); 637 mIsNotLocal->setChecked(!prof->getIsLocalFileSync() && !prof->getIsPhoneSync() &&!prof->getIsPiSync() &&!prof->getIsPiSyncSpec());
606 proGr->setEnabled( item > 2 ); 638 proGr->setEnabled( item > 2 );
607 if ( item < 3 ) { 639 if ( item < 3 ) {
608 localFileWidget->hide(); 640 localFileWidget->hide();
609 remoteFileWidget->hide(); 641 remoteFileWidget->hide();
610 phoneWidget->hide(); 642 phoneWidget->hide();
611 piWidget->hide(); 643 piWidget->hide();
612 644
613 } else 645 } else
614 kindChanged( prof->getIsLocalFileSync() ); 646 kindChanged( prof->getIsLocalFileSync() );
647 updateMyCaption();
615} 648}
616 649
617void KSyncPrefsDialog::fillSSH() 650void KSyncPrefsDialog::fillSSH()
618{ 651{
619 mRemotePrecommand->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/korganizer/mycalendar.ics /tmp/mycalendar.ics" ); 652 mRemotePrecommand->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/korganizer/mycalendar.ics /tmp/mycalendar.ics" );
620 mLocalTempFile->setText("/tmp/mycalendar.ics" ); 653 mLocalTempFile->setText("/tmp/mycalendar.ics" );
621 mRemotePostcommand->setText("scp /tmp/mycalendar.ics zaurus@192.168.0.65:/home/zaurus/kdepim/apps/korganizer/mycalendar.ics" ); 654 mRemotePostcommand->setText("scp /tmp/mycalendar.ics zaurus@192.168.0.65:/home/zaurus/kdepim/apps/korganizer/mycalendar.ics" );
622 mRemotePrecommandAB->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/kabc/std.vcf /tmp/std.vcf" ); 655 mRemotePrecommandAB->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/kabc/std.vcf /tmp/std.vcf" );
623 mLocalTempFileAB->setText("/tmp/std.vcf" ); 656 mLocalTempFileAB->setText("/tmp/std.vcf" );
624 mRemotePostcommandAB->setText("scp /tmp/std.vcf zaurus@192.168.0.65:/home/zaurus/kdepim/apps/kabc/std.vcf" ); 657 mRemotePostcommandAB->setText("scp /tmp/std.vcf zaurus@192.168.0.65:/home/zaurus/kdepim/apps/kabc/std.vcf" );
625 mRemotePrecommandPWM->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/pwmanager/passwords.pwm /tmp/passwords.pwm" ); 658 mRemotePrecommandPWM->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/pwmanager/passwords.pwm /tmp/passwords.pwm" );
626 mLocalTempFilePWM->setText("/tmp/passwords.pwm" ); 659 mLocalTempFilePWM->setText("/tmp/passwords.pwm" );
627 mRemotePostcommandPWM->setText("scp /tmp/passwords.pwm zaurus@192.168.0.65:/home/zaurus/kdepim/apps/pwmanager/pwmanager.pwm" ); 660 mRemotePostcommandPWM->setText("scp /tmp/passwords.pwm zaurus@192.168.0.65:/home/zaurus/kdepim/apps/pwmanager/pwmanager.pwm" );
628} 661}
629void KSyncPrefsDialog::fillFTP() 662void KSyncPrefsDialog::fillFTP()
630{ 663{
631 mRemotePrecommand->setText("cd /tmp;ftp ftp://zaurus:a@192.168.0.65/kdepim/apps/korganizer/mycalendar.ics" ); 664 mRemotePrecommand->setText("cd /tmp;ftp ftp://zaurus:a@192.168.0.65/kdepim/apps/korganizer/mycalendar.ics" );
632 mLocalTempFile->setText("/tmp/mycalendar.ics" ); 665 mLocalTempFile->setText("/tmp/mycalendar.ics" );
633 mRemotePostcommand->setText("ftp -u ftp://zaurus:a@192.168.0.65/kdepim/apps/korganizer/mycalendar.ics /tmp/mycalendar.ics" ); 666 mRemotePostcommand->setText("ftp -u ftp://zaurus:a@192.168.0.65/kdepim/apps/korganizer/mycalendar.ics /tmp/mycalendar.ics" );
634 mRemotePrecommandAB->setText("cd /tmp;ftp ftp://zaurus:a@192.168.0.65/kdepim/apps/kabc/std.vcf" ); 667 mRemotePrecommandAB->setText("cd /tmp;ftp ftp://zaurus:a@192.168.0.65/kdepim/apps/kabc/std.vcf" );
635 mLocalTempFileAB->setText("/tmp/std.vcf" ); 668 mLocalTempFileAB->setText("/tmp/std.vcf" );
636 mRemotePostcommandAB->setText("ftp -u ftp://zaurus:a@192.168.0.65/kdepim/apps/kabc/std.vcf /tmp/std.vcf" ); 669 mRemotePostcommandAB->setText("ftp -u ftp://zaurus:a@192.168.0.65/kdepim/apps/kabc/std.vcf /tmp/std.vcf" );
637 670
638 mRemotePrecommandPWM->setText("cd /tmp;ftp ftp://zaurus:a@192.168.0.65/kdepim/apps/pwmanager/passwords.pwm" ); 671 mRemotePrecommandPWM->setText("cd /tmp;ftp ftp://zaurus:a@192.168.0.65/kdepim/apps/pwmanager/passwords.pwm" );
@@ -731,56 +764,62 @@ void KSyncPrefsDialog::saveProfile()
731 prof->setWriteBackExisting(mWriteBackExisting->isChecked() ); 764 prof->setWriteBackExisting(mWriteBackExisting->isChecked() );
732 prof->setWriteBackFile( mWriteBackFile->isChecked()); 765 prof->setWriteBackFile( mWriteBackFile->isChecked());
733 prof->setIncludeInRingSync( mIncludeInRing->isChecked() ); 766 prof->setIncludeInRingSync( mIncludeInRing->isChecked() );
734 prof->setIncludeInRingSyncAB( mIncludeInRingAB->isChecked() ); 767 prof->setIncludeInRingSyncAB( mIncludeInRingAB->isChecked() );
735 prof->setIncludeInRingSyncPWM( mIncludeInRingPWM->isChecked() ); 768 prof->setIncludeInRingSyncPWM( mIncludeInRingPWM->isChecked() );
736 int syncprefs = rem->isChecked()*1+newest->isChecked()*2+ ask->isChecked()*3+ f_loc->isChecked()*4+ f_rem->isChecked()*5 ;//+ both->isChecked()*6 ; 769 int syncprefs = rem->isChecked()*1+newest->isChecked()*2+ ask->isChecked()*3+ f_loc->isChecked()*4+ f_rem->isChecked()*5 ;//+ both->isChecked()*6 ;
737 prof->setSyncPrefs( syncprefs); 770 prof->setSyncPrefs( syncprefs);
738 prof->setIsLocalFileSync( mIsLocal->isChecked() ); 771 prof->setIsLocalFileSync( mIsLocal->isChecked() );
739 prof->setIsPhoneSync( mIsPhone->isChecked() ); 772 prof->setIsPhoneSync( mIsPhone->isChecked() );
740 prof->setIsPiSync( mIsPi->isChecked() ); 773 prof->setIsPiSync( mIsPi->isChecked() );
741 prof->setIsPiSyncSpec( mIsPiSpecific->isChecked() ); 774 prof->setIsPiSyncSpec( mIsPiSpecific->isChecked() );
742 prof->setIsKapiFile( mIsKapiFileL->isChecked() ); 775 prof->setIsKapiFile( mIsKapiFileL->isChecked() );
743 prof->setWriteBackFuture(mWriteBackFuture->isChecked()); 776 prof->setWriteBackFuture(mWriteBackFuture->isChecked());
744 prof->setWriteBackFutureWeeks(mWriteBackFutureWeeks->value()); 777 prof->setWriteBackFutureWeeks(mWriteBackFutureWeeks->value());
745 prof->setWriteBackPastWeeks(mWriteBackPastWeeks->value()); 778 prof->setWriteBackPastWeeks(mWriteBackPastWeeks->value());
746 if ( mWriteContactToSIM ) 779 if ( mWriteContactToSIM )
747 prof->setWriteContactToSIM(mWriteContactToSIM->isChecked()); 780 prof->setWriteContactToSIM(mWriteContactToSIM->isChecked());
748 prof->setPhoneDevice( mPhoneDevice->text() ); 781 prof->setPhoneDevice( mPhoneDevice->text() );
749 prof->setPhoneConnection( mPhoneConnection->text() ); 782 prof->setPhoneConnection( mPhoneConnection->text() );
750 prof->setPhoneModel( mPhoneModel->text() ); 783 prof->setPhoneModel( mPhoneModel->text() );
751 prof->setFilterInCal ( mFilterInCal->currentText ()); 784 prof->setFilterInCal ( mFilterInCal->currentText ());
752 prof->setFilterOutCal ( mFilterOutCal ->currentText ()); 785 prof->setFilterOutCal ( mFilterOutCal ->currentText ());
753 prof->setFilterInAB ( mFilterInAB ->currentText ()); 786 prof->setFilterInAB ( mFilterInAB ->currentText ());
754 prof->setFilterOutAB ( mFilterOutAB ->currentText ()); 787 prof->setFilterOutAB ( mFilterOutAB ->currentText ());
788 mProfileBox->setFocus();
755 if ( mIsPiSpecific->isChecked() ) { 789 if ( mIsPiSpecific->isChecked() ) {
756 790
757 QStringList res = mResourcesKopi; 791 QStringList res = mResourcesKopi;
758 int i; 792 int i;
759 for ( i = 0;i < mResourcesKopi.count(); ++i ) { 793 for ( i = 0;i < mResourcesKopi.count(); ++i ) {
760 res.append( mResTableKopi->text( i, 0 )); 794 res.append( mResTableKopi->text( i, 0 ));
761 } 795 }
762 prof->setResSpecKopi( res.join(":")); 796 prof->setResSpecKopi( res.join(":"));
797 res = mResourcesKapi;
798 for ( i = 0;i < mResourcesKapi.count(); ++i ) {
799 res.append( mResTableKapi->text( i, 0 ));
800 }
801 prof->setResSpecKapi( res.join(":"));
763 } 802 }
764 } 803 }
765} 804}
766 805
767void KSyncPrefsDialog::insertProfiles() 806void KSyncPrefsDialog::insertProfiles()
768{ 807{
769 int curItem = mProfileBox->currentItem(); 808 int curItem = mProfileBox->currentItem();
770 mProfileBox->blockSignals( true ); 809 mProfileBox->blockSignals( true );
771 mProfileBox->clear(); 810 mProfileBox->clear();
772 mProfileBox->insertStringList (mSyncProfileNames ); 811 mProfileBox->insertStringList (mSyncProfileNames );
773 int item = mSyncProfileNames.count() -1; 812 int item = mSyncProfileNames.count() -1;
774 if ( curItem >= 0 && mSyncProfileNames.count() > 0 && curItem < mSyncProfileNames.count() ) 813 if ( curItem >= 0 && mSyncProfileNames.count() > 0 && curItem < mSyncProfileNames.count() )
775 mProfileBox->setCurrentItem( curItem ); 814 mProfileBox->setCurrentItem( curItem );
776 else if ( item >= 0 ) { 815 else if ( item >= 0 ) {
777 mProfileBox->setCurrentItem( item ); 816 mProfileBox->setCurrentItem( item );
778 } 817 }
779 currentSelection = -1; 818 currentSelection = -1;
780 if ( mSyncProfileNames.count() > 0 ) { 819 if ( mSyncProfileNames.count() > 0 ) {
781 //qDebug(" profileChanged( mProfileBox->currentItem() "); 820 //qDebug(" profileChanged( mProfileBox->currentItem() ");
782 profileChanged( mProfileBox->currentItem() ); 821 profileChanged( mProfileBox->currentItem() );
783 currentSelection = mProfileBox->currentItem(); 822 currentSelection = mProfileBox->currentItem();
784 } 823 }
785 mProfileBox->blockSignals( false ); 824 mProfileBox->blockSignals( false );
786} 825}
diff --git a/libkdepim/ksyncprefsdialog.h b/libkdepim/ksyncprefsdialog.h
index e8a9709..d8c02de 100644
--- a/libkdepim/ksyncprefsdialog.h
+++ b/libkdepim/ksyncprefsdialog.h
@@ -63,48 +63,49 @@ class KSyncPrefsDialog : public KDialog
63 protected slots: 63 protected slots:
64 void accept(); 64 void accept();
65 void deleteProfile(); 65 void deleteProfile();
66 void newProfile(); 66 void newProfile();
67 void cloneProfile(); 67 void cloneProfile();
68 void kindChanged(bool); 68 void kindChanged(bool);
69 void fillSSH(); 69 void fillSSH();
70 void fillFTP(); 70 void fillFTP();
71 void textChanged( const QString & ); 71 void textChanged( const QString & );
72 void profileChanged( int ); 72 void profileChanged( int );
73 void chooseFile(); 73 void chooseFile();
74 void chooseFileAB(); 74 void chooseFileAB();
75 void chooseFilePWM(); 75 void chooseFilePWM();
76 void slotOK(); 76 void slotOK();
77 void helpDevice(); 77 void helpDevice();
78 void helpModel(); 78 void helpModel();
79 void helpConnection(); 79 void helpConnection();
80 80
81 protected: 81 protected:
82 void usrWriteConfig(); 82 void usrWriteConfig();
83 void setupSyncAlgTab(); 83 void setupSyncAlgTab();
84 void readFilter(); 84 void readFilter();
85 void readResources(); 85 void readResources();
86 private: 86 private:
87 void updateMyCaption();
87 int currentSelection; 88 int currentSelection;
88 QPtrList<KSyncProfile> mSyncProfiles; 89 QPtrList<KSyncProfile> mSyncProfiles;
89 QStringList mSyncProfileNames; 90 QStringList mSyncProfileNames;
90 QStringList mFilterKapi; 91 QStringList mFilterKapi;
91 QStringList mFilterKopi; 92 QStringList mFilterKopi;
92 QStringList mResourcesKopi; 93 QStringList mResourcesKopi;
93 QStringList mResourcesKapi; 94 QStringList mResourcesKapi;
94 QLineEdit * mMyMachineName; 95 QLineEdit * mMyMachineName;
95 QComboBox * mProfileBox; 96 QComboBox * mProfileBox;
96 QRadioButton* mIsLocal; 97 QRadioButton* mIsLocal;
97 QRadioButton* mIsNotLocal; 98 QRadioButton* mIsNotLocal;
98 QRadioButton* mIsPhone; 99 QRadioButton* mIsPhone;
99 QRadioButton* mIsPi; 100 QRadioButton* mIsPi;
100 QRadioButton* mIsPiSpecific; 101 QRadioButton* mIsPiSpecific;
101 QCheckBox* mIncludeInRing; 102 QCheckBox* mIncludeInRing;
102 QCheckBox* mIncludeInRingAB; 103 QCheckBox* mIncludeInRingAB;
103 QCheckBox* mIncludeInRingPWM; 104 QCheckBox* mIncludeInRingPWM;
104 void addProfile ( KSyncProfile* ); 105 void addProfile ( KSyncProfile* );
105 void insertProfiles(); 106 void insertProfiles();
106 void saveProfile(); 107 void saveProfile();
107 QButtonGroup* proGr; 108 QButtonGroup* proGr;
108 QHBox * mTableBox; 109 QHBox * mTableBox;
109 QTable* mResTableKopi; 110 QTable* mResTableKopi;
110 QTable* mResTableKapi; 111 QTable* mResTableKapi;