summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings/ppp/devices.cpp7
-rw-r--r--noncore/settings/networksettings/ppp/general.cpp34
-rw-r--r--noncore/settings/networksettings/ppp/general.h17
3 files changed, 55 insertions, 3 deletions
diff --git a/noncore/settings/networksettings/ppp/devices.cpp b/noncore/settings/networksettings/ppp/devices.cpp
index e2c67d8..c658227 100644
--- a/noncore/settings/networksettings/ppp/devices.cpp
+++ b/noncore/settings/networksettings/ppp/devices.cpp
@@ -194,8 +194,13 @@ int DevicesWidget::doTab(){
194 tabWindow->addTab( modem1, tr("&Device") ); 194 tabWindow->addTab( modem1, tr("&Device") );
195 modem2 = new ModemWidget2( _pppdata, _ifaceppp, tabWindow, "modem2" ); 195 modem2 = new ModemWidget2( _pppdata, _ifaceppp, tabWindow, "modem2" );
196 tabWindow->addTab( modem2, tr("&Modem") ); 196 tabWindow->addTab( modem2, tr("&Modem") );
197 197
198 connect(modem2, SIGNAL(sig_beforeQueryModem()),
199 modem1, SLOT(slotBeforeModemQuery()));
200 connect(modem2, SIGNAL(sig_afterQueryModem()),
201 modem1, SLOT(slotAfterModemQuery()));
202
198 int result = 0; 203 int result = 0;
199 bool ok = false; 204 bool ok = false;
200 205
201 while (!ok){ 206 while (!ok){
@@ -203,9 +208,9 @@ int DevicesWidget::doTab(){
203 ok = true; 208 ok = true;
204 209
205 if(result == QDialog::Accepted) { 210 if(result == QDialog::Accepted) {
206 if (!modem1->save()){ 211 if (!modem1->save()){
207 QMessageBox::critical(this, "error", tr( "You must enter a unique device name")); 212 QMessageBox::critical(this, tr("Error"), tr( "You must enter a unique device name"));
208 ok = false; 213 ok = false;
209 }else{ 214 }else{
210 modem2->save(); 215 modem2->save();
211 } 216 }
diff --git a/noncore/settings/networksettings/ppp/general.cpp b/noncore/settings/networksettings/ppp/general.cpp
index 40ba19b..5e2a04f 100644
--- a/noncore/settings/networksettings/ppp/general.cpp
+++ b/noncore/settings/networksettings/ppp/general.cpp
@@ -285,9 +285,8 @@ ModemWidget::~ModemWidget()
285 if ( devs.contains( edited ) == 0 ) 285 if ( devs.contains( edited ) == 0 )
286 { 286 {
287 devs << edited; 287 devs << edited;
288 } 288 }
289 _pppdata->setModemDevice( edited );
290 } 289 }
291 290
292 291
293 Config cfg("NetworkSetupPPP"); 292 Config cfg("NetworkSetupPPP");
@@ -336,9 +335,8 @@ bool ModemWidget::save()
336 if(modemname->text().isEmpty() || 335 if(modemname->text().isEmpty() ||
337 !_pppdata->isUniqueDevname(modemname->text())) 336 !_pppdata->isUniqueDevname(modemname->text()))
338 return false; 337 return false;
339 338
340 odebug << "ModemWidget::save saving modem1 data" << oendl;
341 _pppdata->setDevname( modemname->text() ); 339 _pppdata->setDevname( modemname->text() );
342 _pppdata->setModemDevice( modemdevice->currentText() ); 340 _pppdata->setModemDevice( modemdevice->currentText() );
343 _pppdata->setFlowcontrol(flowcontrol->currentText()); 341 _pppdata->setFlowcontrol(flowcontrol->currentText());
344 _pppdata->setFlowcontrol(flowcontrol->currentText()); 342 _pppdata->setFlowcontrol(flowcontrol->currentText());
@@ -348,8 +346,36 @@ bool ModemWidget::save()
348 return true; 346 return true;
349 347
350} 348}
351 349
350void ModemWidget::slotBeforeModemQuery()
351{
352 m_oldModemDev = _pppdata->modemDevice();
353 m_oldFlowControl = _pppdata->flowcontrol();
354 m_oldSpeed = _pppdata->speed();
355 m_oldModemLock = _pppdata->modemLockFile();
356 m_oldModemTimeout = _pppdata->modemTimeout();
357
358
359 _pppdata->setModemDevice( modemdevice->currentText() );
360 _pppdata->setFlowcontrol(flowcontrol->currentText());
361 _pppdata->setFlowcontrol(flowcontrol->currentText());
362 _pppdata->setSpeed(baud_c->currentText());
363 _pppdata->setModemLockFile( modemlockfile->isChecked());
364 _pppdata->setModemTimeout( modemtimeout->value() );
365}
366
367
368void ModemWidget::slotAfterModemQuery()
369{
370 _pppdata->setModemDevice( m_oldModemDev );
371 _pppdata->setFlowcontrol( m_oldFlowControl );
372 _pppdata->setSpeed( m_oldSpeed );
373 _pppdata->setModemLockFile( m_oldModemLock );
374 _pppdata->setModemTimeout( m_oldModemTimeout );
375}
376
377
352ModemWidget2::ModemWidget2( PPPData *pd, InterfacePPP *ip, QWidget *parent, 378ModemWidget2::ModemWidget2( PPPData *pd, InterfacePPP *ip, QWidget *parent,
353 const char *name) 379 const char *name)
354 : QWidget(parent, name), _pppdata(pd), _ifaceppp(ip) 380 : QWidget(parent, name), _pppdata(pd), _ifaceppp(ip)
355{ 381{
@@ -487,10 +513,14 @@ void ModemWidget2::modemcmdsbutton()
487 513
488 514
489void ModemWidget2::query_modem() 515void ModemWidget2::query_modem()
490{ 516{
517 emit sig_beforeQueryModem();
518
491 ModemTransfer mt(_ifaceppp->modem(), this); 519 ModemTransfer mt(_ifaceppp->modem(), this);
492 mt.exec(); 520 mt.exec();
521
522 emit sig_afterQueryModem();
493} 523}
494 524
495 525
496// void ModemWidget2::terminal() { 526// void ModemWidget2::terminal() {
diff --git a/noncore/settings/networksettings/ppp/general.h b/noncore/settings/networksettings/ppp/general.h
index f43f241..a4dece4 100644
--- a/noncore/settings/networksettings/ppp/general.h
+++ b/noncore/settings/networksettings/ppp/general.h
@@ -45,8 +45,16 @@ public:
45 ~ModemWidget(); 45 ~ModemWidget();
46 46
47 bool save(); 47 bool save();
48 48
49private slots:
50 /*
51 * temporarily commit configuration so queryModem
52 * will use 'current' settings
53 */
54 void slotBeforeModemQuery();
55 void slotAfterModemQuery();
56
49/* private slots: */ 57/* private slots: */
50 /* void setmodemdc(int); */ 58 /* void setmodemdc(int); */
51/* void setmodemdc(const QString &); */ 59/* void setmodemdc(const QString &); */
52 /* void setflowcontrol(int); */ 60 /* void setflowcontrol(int); */
@@ -70,8 +78,13 @@ private:
70 78
71 QSpinBox *modemtimeout; 79 QSpinBox *modemtimeout;
72 QCheckBox *modemlockfile; 80 QCheckBox *modemlockfile;
73 PPPData *_pppdata; 81 PPPData *_pppdata;
82
83private:
84 QString m_oldModemDev, m_oldFlowControl, m_oldSpeed;
85 bool m_oldModemLock;
86 int m_oldModemTimeout;
74}; 87};
75 88
76 89
77class ModemWidget2 : public QWidget { 90class ModemWidget2 : public QWidget {
@@ -79,8 +92,12 @@ class ModemWidget2 : public QWidget {
79public: 92public:
80 ModemWidget2( PPPData*, InterfacePPP*, QWidget *parent=0, const char *name=0 ); 93 ModemWidget2( PPPData*, InterfacePPP*, QWidget *parent=0, const char *name=0 );
81 bool save(); 94 bool save();
82 95
96signals:
97 void sig_beforeQueryModem();
98 void sig_afterQueryModem();
99
83private slots: 100private slots:
84/* void waitfordtchanged(bool); */ 101/* void waitfordtchanged(bool); */
85 /* void busywaitchanged(int); */ 102 /* void busywaitchanged(int); */
86 // void use_cdline_toggled(bool); 103 // void use_cdline_toggled(bool);