-rw-r--r-- | libkdepim/ksyncmanager.cpp | 22 |
1 files changed, 18 insertions, 4 deletions
diff --git a/libkdepim/ksyncmanager.cpp b/libkdepim/ksyncmanager.cpp index 75c0b2b..7ca3ee0 100644 --- a/libkdepim/ksyncmanager.cpp +++ b/libkdepim/ksyncmanager.cpp @@ -264,24 +264,25 @@ void KSyncManager::slotSyncMenu( int action ) } else syncRemote( temp ); } } delete temp; setBlockSave(false); } void KSyncManager::enableQuick( bool ask ) { bool autoStart; + bool changed = false; if ( ask ) { QDialog dia ( 0, "input-dialog", true ); QLineEdit lab ( &dia ); QVBoxLayout lay( &dia ); lab.setText( mPrefs->mPassiveSyncPort ); lay.setMargin(7); lay.setSpacing(7); int po = 9197+mTargetApp; QLabel label ( i18n("Port number (Default: %1)").arg(po), &dia ); lay.addWidget( &label); lay.addWidget( &lab); @@ -307,50 +308,63 @@ void KSyncManager::enableQuick( bool ask ) syncdesktop.setChecked( mPrefs->mPassiveSyncWithDesktop ); dia.setFixedSize( 230,120 ); dia.setCaption( i18n("Enter port for Pi-Sync") ); QPushButton pb ( "OK", &dia); lay.addWidget( &pb ); connect(&pb, SIGNAL( clicked() ), &dia, SLOT ( accept() ) ); dia.show(); if ( ! dia.exec() ) return; dia.hide(); qApp->processEvents(); - mPrefs->mPassiveSyncPw = lepw.text(); - mPrefs->mPassiveSyncPort = lab.text(); + if ( mPrefs->mPassiveSyncPw != lepw.text() ) { + changed = true; + mPrefs->mPassiveSyncPw = lepw.text(); + } + if ( mPrefs->mPassiveSyncPort != lab.text() ) { + mPrefs->mPassiveSyncPort = lab.text(); + changed = true; + } autoStart = autostart.isChecked(); - mPrefs->mPassiveSyncWithDesktop = syncdesktop.isChecked(); + if (mPrefs->mPassiveSyncWithDesktop != syncdesktop.isChecked() ) { + changed = true; + mPrefs->mPassiveSyncWithDesktop = syncdesktop.isChecked(); + } } else autoStart = mPrefs->mPassiveSyncAutoStart; + if ( autoStart != mPrefs->mPassiveSyncAutoStart ) + changed = true; bool ok; mPrefs->mPassiveSyncAutoStart = false; Q_UINT16 port = mPrefs->mPassiveSyncPort.toUInt(&ok); if ( ! ok ) { KMessageBox::information( 0, i18n("No valid port")); return; } //qDebug("port %d ", port); mServerSocket = new KServerSocket ( mPrefs->mPassiveSyncPw, port ,1 ); mServerSocket->setFileName( defaultFileName() ); //qDebug("connected "); if ( !mServerSocket->ok() ) { KMessageBox::information( 0, i18n("Failed to bind or\nlisten to the port!")); delete mServerSocket; mServerSocket = 0; return; } - mPrefs->mPassiveSyncAutoStart = autoStart; + if ( changed ) { + mPrefs->writeConfig(); + } connect( mServerSocket, SIGNAL ( request_file() ),this, SIGNAL ( request_file() ) ); connect( mServerSocket, SIGNAL ( file_received( bool ) ), this, SIGNAL ( getFile( bool ) ) ); } void KSyncManager::syncLocalFile() { QString fn =mPrefs->mLastSyncedLocalFile; QString ext; switch(mTargetApp) { |