summaryrefslogtreecommitdiffabout
path: root/libkdepim/ksyncprefsdialog.cpp
Side-by-side diff
Diffstat (limited to 'libkdepim/ksyncprefsdialog.cpp') (more/less context) (show whitespace changes)
-rw-r--r--libkdepim/ksyncprefsdialog.cpp66
1 files changed, 66 insertions, 0 deletions
diff --git a/libkdepim/ksyncprefsdialog.cpp b/libkdepim/ksyncprefsdialog.cpp
index 28aac45..f05c846 100644
--- a/libkdepim/ksyncprefsdialog.cpp
+++ b/libkdepim/ksyncprefsdialog.cpp
@@ -181,24 +181,26 @@ void KSyncPrefsDialog::setupSyncAlgTab()
topLayout->addMultiCellWidget(mWriteBackFuture, iii,iii,0,1);
++iii;
topLayout->addMultiCellWidget(new QLabel( i18n("---- Max. weeks in future: ") , topFrame ), iii,iii,0,0);
mWriteBackFutureWeeks= new QSpinBox(1,104, 1, topFrame);
topLayout->addMultiCellWidget(mWriteBackFutureWeeks, iii,iii,1,1);
++iii;
proGr = new QButtonGroup ( 1, Qt::Horizontal, i18n("Profile kind"), topFrame);
gr = proGr;
topLayout->addMultiCellWidget(gr, iii,iii,0,1);
++iii;
mIsLocal = new QRadioButton ( i18n("Local file"), gr );
+ mIsPi = new QRadioButton ( i18n("Quick Pi-Sync"), gr );
+ connect (mIsPi, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
mIsNotLocal = new QRadioButton ( i18n("Remote file (w down/upload command)"), gr );
connect (mIsLocal, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
mIsPhone = new QRadioButton ( i18n("Mobile device (cell phone)"), gr );
connect (mIsPhone, SIGNAL( toggled(bool)), this, SLOT (kindChanged(bool) ) );
phoneWidget = new QVBox( topFrame);
topLayout->addMultiCellWidget(phoneWidget, iii,iii,0,1);
++iii;
mWriteContactToSIM= new QCheckBox( i18n("Sync contacts with phone SIM card (If not, sync with phone memory)"), phoneWidget );
QHBox* temphb = new QHBox( phoneWidget );
new QLabel( i18n("I/O device: "), temphb );
@@ -268,26 +270,57 @@ void KSyncPrefsDialog::setupSyncAlgTab()
mRemotePostcommand = new QLineEdit(temphb );
mRemotePostcommandAB = new QLineEdit(temphb );
mRemotePostcommandPWM = new QLineEdit(temphb );
lab = new QLabel( i18n("Fill in default values for:"), remoteFileWidget);
temphb = new QHBox( remoteFileWidget );
button = new QPushButton( i18n("ssh/scp"), temphb );
connect ( button, SIGNAL( clicked()), this, SLOT (fillSSH() ) );
button = new QPushButton( i18n("ftp"), temphb );
connect ( button, SIGNAL( clicked()), this, SLOT (fillFTP() ) );
lab = new QLabel( i18n("Hint: Use $PWD$ for placeholder of password!"), remoteFileWidget);
+ // *** pi-sync
+ piWidget = new QVBox( topFrame);
+ topLayout->addMultiCellWidget(piWidget, iii,iii,0,1);
+ ++iii;
+ temphb = new QHBox( piWidget );
+ new QLabel( i18n("Calendar:"), temphb);
+ new QLabel( i18n("AddressBook:"), temphb);
+ new QLabel( i18n("PWManager:"), temphb);
+
+ lab = new QLabel( i18n("Password for remote access:"), piWidget);
+ temphb = new QHBox( piWidget );
+ mRemotePw = new QLineEdit(temphb);
+ mRemotePwAB = new QLineEdit(temphb);
+ mRemotePwPWM = new QLineEdit(temphb);
+
+ lab = new QLabel( i18n("Remote IP address:"), piWidget);
+ temphb = new QHBox( piWidget );
+ mRemoteIP = new QLineEdit(temphb);
+ mRemoteIPAB = new QLineEdit(temphb);
+ mRemoteIPPWM = new QLineEdit(temphb);
+
+ lab = new QLabel( i18n("Remote port number:"), piWidget);
+ temphb = new QHBox( piWidget );
+ mRemotePort = new QLineEdit(temphb);
+ mRemotePortAB = new QLineEdit(temphb);
+ mRemotePortPWM = new QLineEdit(temphb);
}
+
+
+
+
+
void KSyncPrefsDialog::slotOK()
{
if ( mMyMachineName->text() == "undefined" ) {
KMessageBox::error(this,i18n("Local device name undefined!\nPlease define device name!"),i18n("KO/Pi config error"));
return;
}
int i;
for (i = 0; i < mSyncProfileNames.count(); ++ i) {
if ( mSyncProfileNames.contains( mSyncProfileNames[i]) > 1 ) {
KMessageBox::error(this,i18n("Multiple profiles with same name!\nPlease use unique profile names!"),i18n("KO/Pi config error"));
return;
}
@@ -344,24 +377,37 @@ void KSyncPrefsDialog::textChanged( const QString & s )
mProfileBox->changeItem ( s, mProfileBox-> currentItem () ) ;
KSyncProfile* prof = mSyncProfiles.at(mProfileBox-> currentItem ()) ;
prof->setName( s );
mSyncProfileNames[mProfileBox-> currentItem ()] = s;
}
void KSyncPrefsDialog::profileChanged( int item )
{
//qDebug("KSyncPrefsDialog::profileChanged before %d, count %d ", item, mProfileBox->count() );
KSyncProfile* prof;
saveProfile();
currentSelection = item;
prof = mSyncProfiles.at(item) ;
+
+ mRemotePw->setText(prof->getRemotePw());
+ mRemoteIP->setText(prof->getRemoteIP());
+ mRemotePort->setText(prof->getRemotePort());
+
+ mRemotePwAB->setText(prof->getRemotePwAB());
+ mRemoteIPAB->setText(prof->getRemoteIPAB());
+ mRemotePortAB->setText(prof->getRemotePortAB());
+
+ mRemotePwPWM->setText(prof->getRemotePwPWM());
+ mRemoteIPPWM->setText(prof->getRemoteIPPWM());
+ mRemotePortPWM->setText(prof->getRemotePortPWM());
+
mRemotePrecommand->setText(prof->getPreSyncCommand());
mRemotePostcommand->setText(prof->getPostSyncCommand());
mLocalTempFile->setText(prof->getLocalTempFile());
mRemoteFile->setText(prof->getRemoteFileName()) ;
mRemotePrecommandAB->setText(prof->getPreSyncCommandAB());
mRemotePostcommandAB->setText(prof->getPostSyncCommandAB());
mLocalTempFileAB->setText(prof->getLocalTempFileAB());
mRemoteFileAB->setText(prof->getRemoteFileNameAB()) ;
mRemotePrecommandPWM->setText(prof->getPreSyncCommandPWM());
mRemotePostcommandPWM->setText(prof->getPostSyncCommandPWM());
@@ -407,24 +453,25 @@ void KSyncPrefsDialog::profileChanged( int item )
break;
default:
break;
}
mIsLocal->setChecked(prof->getIsLocalFileSync()) ;
mIsPhone->setChecked(prof->getIsPhoneSync()) ;
mIsNotLocal->setChecked(!prof->getIsLocalFileSync() && !prof->getIsPhoneSync() );
proGr->setEnabled( item > 2 );
if ( item < 3 ) {
localFileWidget->hide();
remoteFileWidget->hide();
phoneWidget->hide();
+ piWidget->hide();
} else
kindChanged( prof->getIsLocalFileSync() );
}
void KSyncPrefsDialog::fillSSH()
{
mRemotePrecommand->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/korganizer/mycalendar.ics /tmp/mycalendar.ics" );
mLocalTempFile->setText("/tmp/mycalendar.ics" );
mRemotePostcommand->setText("scp /tmp/mycalendar.ics zaurus@192.168.0.65:/home/zaurus/kdepim/apps/korganizer/mycalendar.ics" );
mRemotePrecommandAB->setText("scp zaurus@192.168.0.65:/home/zaurus/kdepim/apps/kabc/std.vcf /tmp/std.vcf" );
mLocalTempFileAB->setText("/tmp/std.vcf" );
@@ -457,46 +504,65 @@ void KSyncPrefsDialog::kindChanged( bool b )
if ( mIsNotLocal->isChecked () )
remoteFileWidget->show();
else
remoteFileWidget->hide();
if ( mIsPhone->isChecked () ) {
phoneWidget->show();
}
else {
phoneWidget->hide();
}
+ if ( mIsPi->isChecked () ) {
+ piWidget->show();
+ }
+ else {
+ piWidget->hide();
+ }
}
void KSyncPrefsDialog::deleteProfile()
{
//qDebug("KSyncPrefsDialog::deleteProfile() ");
if ( currentSelection >= 0 ) {
if ( currentSelection < 3 ) {
KMessageBox::error(this,i18n("This profil cannot be deleted!\n"),i18n("KO/Pi config error"));
return;
}
KSyncProfile* temp = mSyncProfiles.at(currentSelection);
mSyncProfiles.remove( temp );
mSyncProfileNames.remove( mSyncProfileNames.at( currentSelection ));
insertProfiles();
}
}
void KSyncPrefsDialog::saveProfile()
{
KSyncProfile* prof;
if ( currentSelection >= 0 ) {
prof = mSyncProfiles.at(currentSelection) ;
+
+ prof->setRemotePw( mRemotePw->text());
+ prof->setRemoteIP( mRemoteIP->text());
+ prof->setRemotePort( mRemotePort->text());
+
+ prof->setRemotePwAB( mRemotePwAB->text());
+ prof->setRemoteIPAB( mRemoteIPAB->text());
+ prof->setRemotePortAB( mRemotePortAB->text());
+
+ prof->setRemotePwPWM( mRemotePwPWM->text());
+ prof->setRemoteIPPWM( mRemoteIPPWM->text());
+ prof->setRemotePortPWM( mRemotePortPWM->text());
+
prof->setPreSyncCommand( mRemotePrecommand->text());
prof->setPostSyncCommand( mRemotePostcommand->text() );
prof->setLocalTempFile( mLocalTempFile->text());
prof->setRemoteFileName( mRemoteFile->text() );
prof->setPreSyncCommandAB( mRemotePrecommandAB->text());
prof->setPostSyncCommandAB( mRemotePostcommandAB->text() );
prof->setLocalTempFileAB( mLocalTempFileAB->text());
prof->setRemoteFileNameAB( mRemoteFileAB->text() );
prof->setPreSyncCommandPWM( mRemotePrecommandPWM->text());
prof->setPostSyncCommandPWM( mRemotePostcommandPWM->text() );
prof->setLocalTempFilePWM( mLocalTempFilePWM->text());
prof->setRemoteFileNamePWM( mRemoteFilePWM->text() );