summaryrefslogtreecommitdiff
authorzecke <zecke>2004-10-14 00:39:47 (UTC)
committer zecke <zecke>2004-10-14 00:39:47 (UTC)
commitb17b6c77af35b610d236321279d3f18eb3060c90 (patch) (unidiff)
tree4ff66b2060c91373f86f3fd14890dcb8e98babb6
parent9cc9ed1e746477c59b1fd3d572cdce052f0ccf85 (diff)
downloadopie-b17b6c77af35b610d236321279d3f18eb3060c90.zip
opie-b17b6c77af35b610d236321279d3f18eb3060c90.tar.gz
opie-b17b6c77af35b610d236321279d3f18eb3060c90.tar.bz2
-Make ModemQuery to use the 'current' configuration
-Todo make FlowControl, LineTermination lwork across locales for safe and restore
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
@@ -134,86 +134,91 @@ void DevicesWidget::copy() {
134// QMessageBox::information(this, "sorry", tr("Maximum number of accounts reached.")); 134// QMessageBox::information(this, "sorry", tr("Maximum number of accounts reached."));
135// return; 135// return;
136// } 136// }
137 137
138 if(listListbox->currentItem()<0) { 138 if(listListbox->currentItem()<0) {
139 QMessageBox::information(this, "sorry", tr("No devices selected.")); 139 QMessageBox::information(this, "sorry", tr("No devices selected."));
140 return; 140 return;
141 } 141 }
142 142
143 _pppdata->copydevice(listListbox->currentText()); 143 _pppdata->copydevice(listListbox->currentText());
144 144
145 listListbox->insertItem(_pppdata->devname()); 145 listListbox->insertItem(_pppdata->devname());
146 _pppdata->save(); 146 _pppdata->save();
147} 147}
148 148
149 149
150void DevicesWidget::remove() { 150void DevicesWidget::remove() {
151 151
152 QString s = tr("Are you sure you want to delete\nthe device \"%1\"?") 152 QString s = tr("Are you sure you want to delete\nthe device \"%1\"?")
153 .arg(listListbox->text(listListbox->currentItem())); 153 .arg(listListbox->text(listListbox->currentItem()));
154 154
155 if(QMessageBox::warning(this,tr("Confirm"),s, 155 if(QMessageBox::warning(this,tr("Confirm"),s,
156 QMessageBox::Yes,QMessageBox::No 156 QMessageBox::Yes,QMessageBox::No
157 ) != QMessageBox::Yes) 157 ) != QMessageBox::Yes)
158 return; 158 return;
159 159
160 if(_pppdata->deleteDevice(listListbox->text(listListbox->currentItem()))) 160 if(_pppdata->deleteDevice(listListbox->text(listListbox->currentItem())))
161 listListbox->removeItem(listListbox->currentItem()); 161 listListbox->removeItem(listListbox->currentItem());
162 162
163 163
164// _pppdata->save(); 164// _pppdata->save();
165 165
166 166
167 slotListBoxSelect(listListbox->currentItem()); 167 slotListBoxSelect(listListbox->currentItem());
168 168
169} 169}
170 170
171 171
172int DevicesWidget::doTab(){ 172int DevicesWidget::doTab(){
173 QDialog *dlg = new QDialog( 0, "newDevice", true, Qt::WStyle_ContextHelp ); 173 QDialog *dlg = new QDialog( 0, "newDevice", true, Qt::WStyle_ContextHelp );
174 QVBoxLayout *layout = new QVBoxLayout( dlg ); 174 QVBoxLayout *layout = new QVBoxLayout( dlg );
175 layout->setSpacing( 0 ); 175 layout->setSpacing( 0 );
176 layout->setMargin( 1 ); 176 layout->setMargin( 1 );
177 177
178 QTabWidget *tabWindow = new QTabWidget( dlg, "tabWindow" ); 178 QTabWidget *tabWindow = new QTabWidget( dlg, "tabWindow" );
179 layout->addWidget( tabWindow ); 179 layout->addWidget( tabWindow );
180 180
181 bool isnew; 181 bool isnew;
182 182
183 if(_pppdata->devname().isEmpty()) { 183 if(_pppdata->devname().isEmpty()) {
184 dlg->setCaption(tr("New Device")); 184 dlg->setCaption(tr("New Device"));
185 isnew = true; 185 isnew = true;
186 } else { 186 } else {
187 QString tit = tr("Edit Device: "); 187 QString tit = tr("Edit Device: ");
188 tit += _pppdata->devname(); 188 tit += _pppdata->devname();
189 dlg->setCaption(tit); 189 dlg->setCaption(tit);
190 isnew = false; 190 isnew = false;
191 } 191 }
192 192
193 modem1 = new ModemWidget( _pppdata, tabWindow, "modem1" ); 193 modem1 = new ModemWidget( _pppdata, tabWindow, "modem1" );
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){
202 result = QPEApplication::execDialog( dlg ); 207 result = QPEApplication::execDialog( dlg );
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 }
212 } 217 }
213 } 218 }
214 219
215 delete dlg; 220 delete dlg;
216 221
217 return result; 222 return result;
218} 223}
219 224
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
@@ -225,191 +225,217 @@ ModemWidget::ModemWidget( PPPData *pd, QWidget *parent, const char *name )
225 modemtimeout = new QSpinBox( 1, 120, 1, this, "modemTimeout" ); 225 modemtimeout = new QSpinBox( 1, 120, 1, this, "modemTimeout" );
226 // modemtimeout = new KIntNumInput(_pppdata->modemTimeout(), this); 226 // modemtimeout = new KIntNumInput(_pppdata->modemTimeout(), this);
227 // modemtimeout->setLabel(tr("Modem &timeout:")); 227 // modemtimeout->setLabel(tr("Modem &timeout:"));
228 // modemtimeout->setRange(1, 120, 1); 228 // modemtimeout->setRange(1, 120, 1);
229 modemtimeout->setSuffix(tr(" sec")); 229 modemtimeout->setSuffix(tr(" sec"));
230 modemtimeout->setValue( _pppdata->modemTimeout() ); 230 modemtimeout->setValue( _pppdata->modemTimeout() );
231 // connect(modemtimeout, SIGNAL(valueChanged(int)), 231 // connect(modemtimeout, SIGNAL(valueChanged(int)),
232 // SLOT(modemtimeoutchanged(int))); 232 // SLOT(modemtimeoutchanged(int)));
233 timeoutLayout->addWidget(timeoutlabel); 233 timeoutLayout->addWidget(timeoutlabel);
234 timeoutLayout->addWidget(modemtimeout); 234 timeoutLayout->addWidget(modemtimeout);
235 tl->addMultiCellLayout(timeoutLayout, 7, 7, 0, 1); 235 tl->addMultiCellLayout(timeoutLayout, 7, 7, 0, 1);
236 236
237 QWhatsThis::add(modemtimeout, 237 QWhatsThis::add(modemtimeout,
238 tr("This specifies how long <i>kppp</i> waits for a\n" 238 tr("This specifies how long <i>kppp</i> waits for a\n"
239 "<i>CONNECT</i> response from your modem. The\n" 239 "<i>CONNECT</i> response from your modem. The\n"
240 "recommended value is 30 seconds.")); 240 "recommended value is 30 seconds."));
241 241
242 //set stuff from gpppdata 242 //set stuff from gpppdata
243 for(int i=0; i <= enter->count()-1; i++) 243 for(int i=0; i <= enter->count()-1; i++)
244 { 244 {
245 if(_pppdata->enter() == enter->text(i)) 245 if(_pppdata->enter() == enter->text(i))
246 enter->setCurrentItem(i); 246 enter->setCurrentItem(i);
247 } 247 }
248 248
249 for(int i=0; i <= modemdevice->count()-1; i++) 249 for(int i=0; i <= modemdevice->count()-1; i++)
250 { 250 {
251 if(_pppdata->modemDevice() == modemdevice->text(i)) 251 if(_pppdata->modemDevice() == modemdevice->text(i))
252 modemdevice->setCurrentItem(i); 252 modemdevice->setCurrentItem(i);
253 } 253 }
254 254
255 for(int i=0; i <= flowcontrol->count()-1; i++) 255 for(int i=0; i <= flowcontrol->count()-1; i++)
256 { 256 {
257 if(_pppdata->flowcontrol() == flowcontrol->text(i)) 257 if(_pppdata->flowcontrol() == flowcontrol->text(i))
258 flowcontrol->setCurrentItem(i); 258 flowcontrol->setCurrentItem(i);
259 } 259 }
260 260
261 //set the modem speed 261 //set the modem speed
262 for(int i=0; i < baud_c->count(); i++) 262 for(int i=0; i < baud_c->count(); i++)
263 if(baud_c->text(i) == _pppdata->speed()) 263 if(baud_c->text(i) == _pppdata->speed())
264 baud_c->setCurrentItem(i); 264 baud_c->setCurrentItem(i);
265 265
266 tl->setRowStretch(1, 1); 266 tl->setRowStretch(1, 1);
267} 267}
268 268
269ModemWidget::~ModemWidget() 269ModemWidget::~ModemWidget()
270{ 270{
271 QStringList devs; 271 QStringList devs;
272 272
273 for (int i=0;i<modemdevice->count();i++) 273 for (int i=0;i<modemdevice->count();i++)
274 { 274 {
275 QString s = modemdevice->text(i); 275 QString s = modemdevice->text(i);
276 s.simplifyWhiteSpace(); 276 s.simplifyWhiteSpace();
277 if (! s.isEmpty() ) devs << s; 277 if (! s.isEmpty() ) devs << s;
278 } 278 }
279 279
280 280
281 QString edited = modemdevice->currentText(); 281 QString edited = modemdevice->currentText();
282 if ( !( edited ).isEmpty() ) 282 if ( !( edited ).isEmpty() )
283 { 283 {
284 edited.simplifyWhiteSpace(); 284 edited.simplifyWhiteSpace();
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");
294 cfg.setGroup("Devices_General"); 293 cfg.setGroup("Devices_General");
295 cfg.writeEntry("devices",devs,','); 294 cfg.writeEntry("devices",devs,',');
296 295
297} 296}
298 297
299// void ModemWidget::speed_selection(int) { 298// void ModemWidget::speed_selection(int) {
300// _pppdata->setSpeed(baud_c->text(baud_c->currentItem())); 299// _pppdata->setSpeed(baud_c->text(baud_c->currentItem()));
301// } 300// }
302 301
303 302
304// void ModemWidget::setenter(int ) { 303// void ModemWidget::setenter(int ) {
305// _pppdata->setEnter(enter->text(enter->currentItem())); 304// _pppdata->setEnter(enter->text(enter->currentItem()));
306// } 305// }
307 306
308 307
309// void ModemWidget::setmodemdc(int i) { 308// void ModemWidget::setmodemdc(int i) {
310// _pppdata->setModemDevice(modemdevice->text(i)); 309// _pppdata->setModemDevice(modemdevice->text(i));
311// } 310// }
312 311
313// void ModemWidget::setmodemdc( const QString &string ) { 312// void ModemWidget::setmodemdc( const QString &string ) {
314// _pppdata->setModemDevice( string ); 313// _pppdata->setModemDevice( string );
315// } 314// }
316 315
317// void ModemWidget::setflowcontrol(int i) { 316// void ModemWidget::setflowcontrol(int i) {
318// _pppdata->setFlowcontrol(flowcontrol->text(i)); 317// _pppdata->setFlowcontrol(flowcontrol->text(i));
319// } 318// }
320 319
321 320
322// void ModemWidget::modemlockfilechanged(bool set) { 321// void ModemWidget::modemlockfilechanged(bool set) {
323// _pppdata->setModemLockFile(set); 322// _pppdata->setModemLockFile(set);
324// } 323// }
325 324
326 325
327// void ModemWidget::modemtimeoutchanged(int n) { 326// void ModemWidget::modemtimeoutchanged(int n) {
328// _pppdata->setModemTimeout(n); 327// _pppdata->setModemTimeout(n);
329// } 328// }
330 329
331 330
332 331
333bool ModemWidget::save() 332bool ModemWidget::save()
334{ 333{
335 //first check to make sure that the device name is unique! 334 //first check to make sure that the device name is unique!
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());
345 _pppdata->setSpeed(baud_c->currentText()); 343 _pppdata->setSpeed(baud_c->currentText());
346 _pppdata->setModemLockFile( modemlockfile->isChecked()); 344 _pppdata->setModemLockFile( modemlockfile->isChecked());
347 _pppdata->setModemTimeout( modemtimeout->value() ); 345 _pppdata->setModemTimeout( modemtimeout->value() );
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{
356 QVBoxLayout *l1 = new QVBoxLayout(this, 0 );//, KDialog::spacingHint()); 382 QVBoxLayout *l1 = new QVBoxLayout(this, 0 );//, KDialog::spacingHint());
357 383
358 384
359 waitfordt = new QCheckBox(tr("&Wait for dial tone before dialing"), this); 385 waitfordt = new QCheckBox(tr("&Wait for dial tone before dialing"), this);
360 waitfordt->setChecked(_pppdata->waitForDialTone()); 386 waitfordt->setChecked(_pppdata->waitForDialTone());
361 // connect(waitfordt, SIGNAL(toggled(bool)), SLOT(waitfordtchanged(bool))); 387 // connect(waitfordt, SIGNAL(toggled(bool)), SLOT(waitfordtchanged(bool)));
362 l1->addWidget(waitfordt); 388 l1->addWidget(waitfordt);
363 QWhatsThis::add(waitfordt, 389 QWhatsThis::add(waitfordt,
364 tr("<p>Normally the modem waits for a dial tone\n" 390 tr("<p>Normally the modem waits for a dial tone\n"
365 "from your phone line, indicating that it can\n" 391 "from your phone line, indicating that it can\n"
366 "start to dial a number. If your modem does not\n" 392 "start to dial a number. If your modem does not\n"
367 "recognize this sound, or your local phone system\n" 393 "recognize this sound, or your local phone system\n"
368 "does not emit such a tone, uncheck this option\n" 394 "does not emit such a tone, uncheck this option\n"
369 "\n" 395 "\n"
370 "<b>Default:</b>: On")); 396 "<b>Default:</b>: On"));
371 397
372 QHBoxLayout *waitLayout = new QHBoxLayout( this ); 398 QHBoxLayout *waitLayout = new QHBoxLayout( this );
373 QLabel *waitLabel = new QLabel( tr("Busy wait:"), this, "busyWait" ); 399 QLabel *waitLabel = new QLabel( tr("Busy wait:"), this, "busyWait" );
374 busywait = new QSpinBox( 0, 300, 5, this, "busyWait" ); 400 busywait = new QSpinBox( 0, 300, 5, this, "busyWait" );
375 // busywait = new KIntNumInput(_pppdata->busyWait(), this); 401 // busywait = new KIntNumInput(_pppdata->busyWait(), this);
376 // busywait->setLabel(tr("B&usy wait:")); 402 // busywait->setLabel(tr("B&usy wait:"));
377 // busywait->setRange(0, 300, 5, true); 403 // busywait->setRange(0, 300, 5, true);
378 busywait->setSuffix(tr(" sec")); 404 busywait->setSuffix(tr(" sec"));
379 // connect(busywait, SIGNAL(valueChanged(int)), SLOT(busywaitchanged(int))); 405 // connect(busywait, SIGNAL(valueChanged(int)), SLOT(busywaitchanged(int)));
380 waitLayout->addWidget(waitLabel); 406 waitLayout->addWidget(waitLabel);
381 waitLayout->addWidget(busywait); 407 waitLayout->addWidget(busywait);
382 l1->addLayout( waitLayout ); 408 l1->addLayout( waitLayout );
383 409
384 QWhatsThis::add(busywait, 410 QWhatsThis::add(busywait,
385 tr("Specifies the number of seconds to wait before\n" 411 tr("Specifies the number of seconds to wait before\n"
386 "redial if all dialed numbers are busy. This is\n" 412 "redial if all dialed numbers are busy. This is\n"
387 "necessary because some modems get stuck if the\n" 413 "necessary because some modems get stuck if the\n"
388 "same number is busy too often.\n" 414 "same number is busy too often.\n"
389 "\n" 415 "\n"
390 "The default is 0 seconds, you should not change\n" 416 "The default is 0 seconds, you should not change\n"
391 "this unless you need to.")); 417 "this unless you need to."));
392 418
393 l1->addSpacing(10); 419 l1->addSpacing(10);
394 420
395 QHBoxLayout *hbl = new QHBoxLayout; 421 QHBoxLayout *hbl = new QHBoxLayout;
396 hbl->setSpacing(2);//KDialog::spacingHint()); 422 hbl->setSpacing(2);//KDialog::spacingHint());
397 423
398 QLabel *volumeLabel = new QLabel(tr("Modem &volume:"), this); 424 QLabel *volumeLabel = new QLabel(tr("Modem &volume:"), this);
399 hbl->addWidget(volumeLabel); 425 hbl->addWidget(volumeLabel);
400 volume = new QSlider(0, 2, 1, _pppdata->volume(), 426 volume = new QSlider(0, 2, 1, _pppdata->volume(),
401 QSlider::Horizontal, this); 427 QSlider::Horizontal, this);
402 volumeLabel->setBuddy(volume); 428 volumeLabel->setBuddy(volume);
403 volume->setTickmarks(QSlider::Below); 429 volume->setTickmarks(QSlider::Below);
404 hbl->addWidget(volume); 430 hbl->addWidget(volume);
405 431
406 l1->addLayout(hbl); 432 l1->addLayout(hbl);
407 433
408 // connect(volume, SIGNAL(valueChanged(int)), 434 // connect(volume, SIGNAL(valueChanged(int)),
409 // this, SLOT(volumeChanged(int))); 435 // this, SLOT(volumeChanged(int)));
410 QString tmp = tr("Most modems have a speaker which makes\n" 436 QString tmp = tr("Most modems have a speaker which makes\n"
411 "a lot of noise when dialing. Here you can\n" 437 "a lot of noise when dialing. Here you can\n"
412 "either turn this completely off or select a\n" 438 "either turn this completely off or select a\n"
413 "lower volume.\n" 439 "lower volume.\n"
414 "\n" 440 "\n"
415 "If this does not work for your modem,\n" 441 "If this does not work for your modem,\n"
@@ -427,102 +453,106 @@ ModemWidget2::ModemWidget2( PPPData *pd, InterfacePPP *ip, QWidget *parent,
427 this,SLOT(use_cdline_toggled(bool))); 453 this,SLOT(use_cdline_toggled(bool)));
428 l12->addWidget(chkbox1); 454 l12->addWidget(chkbox1);
429 l12->addStretch(1); 455 l12->addStretch(1);
430 l1->addStretch(1); 456 l1->addStretch(1);
431 QWhatsThis::add(chkbox1, 457 QWhatsThis::add(chkbox1,
432 tr("This controls how <i>kppp</i> detects that the modem\n" 458 tr("This controls how <i>kppp</i> detects that the modem\n"
433 "is not responding. Unless you are having\n" 459 "is not responding. Unless you are having\n"
434 "problems with this, do not modify this setting.\n" 460 "problems with this, do not modify this setting.\n"
435 "\n" 461 "\n"
436 "<b>Default</b>: Off")); 462 "<b>Default</b>: Off"));
437#endif 463#endif
438 464
439 modemcmds = new QPushButton(tr("Mod&em Commands..."), this); 465 modemcmds = new QPushButton(tr("Mod&em Commands..."), this);
440 QWhatsThis::add(modemcmds, 466 QWhatsThis::add(modemcmds,
441 tr("Allows you to change the AT command for\n" 467 tr("Allows you to change the AT command for\n"
442 "your modem.")); 468 "your modem."));
443 469
444 modeminfo_button = new QPushButton(tr("&Query Modem..."), this); 470 modeminfo_button = new QPushButton(tr("&Query Modem..."), this);
445 QWhatsThis::add(modeminfo_button, 471 QWhatsThis::add(modeminfo_button,
446 tr("Most modems support the ATI command set to\n" 472 tr("Most modems support the ATI command set to\n"
447 "find out vendor and revision of your modem.\n" 473 "find out vendor and revision of your modem.\n"
448 "\n" 474 "\n"
449 "Press this button to query your modem for\n" 475 "Press this button to query your modem for\n"
450 "this information. It can be useful to help\n" 476 "this information. It can be useful to help\n"
451 "you setup the modem")); 477 "you setup the modem"));
452 478
453 // terminal_button = new QPushButton(tr("&Terminal..."), this); 479 // terminal_button = new QPushButton(tr("&Terminal..."), this);
454 // QWhatsThis::add(terminal_button, 480 // QWhatsThis::add(terminal_button,
455 // tr("Opens the built-in terminal program. You\n" 481 // tr("Opens the built-in terminal program. You\n"
456 // "can use this if you want to play around\n" 482 // "can use this if you want to play around\n"
457 // "with your modem's AT command set")); 483 // "with your modem's AT command set"));
458 484
459 QHBoxLayout *hbox = new QHBoxLayout(); 485 QHBoxLayout *hbox = new QHBoxLayout();
460 l1->addLayout(hbox); 486 l1->addLayout(hbox);
461 hbox->addStretch(1); 487 hbox->addStretch(1);
462 QVBoxLayout *vbox = new QVBoxLayout(); 488 QVBoxLayout *vbox = new QVBoxLayout();
463 hbox->addLayout(vbox); 489 hbox->addLayout(vbox);
464 490
465 vbox->addWidget(modemcmds); 491 vbox->addWidget(modemcmds);
466 vbox->addWidget(modeminfo_button); 492 vbox->addWidget(modeminfo_button);
467 // vbox->addWidget(terminal_button); 493 // vbox->addWidget(terminal_button);
468 494
469 hbox->addStretch(1); 495 hbox->addStretch(1);
470 l1->addStretch(1); 496 l1->addStretch(1);
471 497
472 connect(modemcmds, SIGNAL(clicked()), 498 connect(modemcmds, SIGNAL(clicked()),
473 SLOT(modemcmdsbutton())); 499 SLOT(modemcmdsbutton()));
474 connect(modeminfo_button, SIGNAL(clicked()), 500 connect(modeminfo_button, SIGNAL(clicked()),
475 SLOT(query_modem())); 501 SLOT(query_modem()));
476 // connect(terminal_button, SIGNAL(clicked()), 502 // connect(terminal_button, SIGNAL(clicked()),
477 // SLOT(terminal())); 503 // SLOT(terminal()));
478} 504}
479 505
480 506
481void ModemWidget2::modemcmdsbutton() 507void ModemWidget2::modemcmdsbutton()
482{ 508{
483 ModemCommands mc(_ifaceppp->data(), this, "commands" , true, Qt::WStyle_ContextHelp); 509 ModemCommands mc(_ifaceppp->data(), this, "commands" , true, Qt::WStyle_ContextHelp);
484 510
485 QPEApplication::execDialog( &mc ); 511 QPEApplication::execDialog( &mc );
486} 512}
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() {
497// MiniTerm terminal(NULL,NULL); 527// MiniTerm terminal(NULL,NULL);
498// terminal.exec(); 528// terminal.exec();
499// } 529// }
500 530
501 531
502// #if 0 532// #if 0
503// void ModemWidget2::use_cdline_toggled(bool on) { 533// void ModemWidget2::use_cdline_toggled(bool on) {
504// _pppdata->setUseCDLine(on); 534// _pppdata->setUseCDLine(on);
505// } 535// }
506// #endif 536// #endif
507 537
508// void ModemWidget2::waitfordtchanged(bool b) { 538// void ModemWidget2::waitfordtchanged(bool b) {
509// _pppdata->setWaitForDialTone((int)b); 539// _pppdata->setWaitForDialTone((int)b);
510// } 540// }
511 541
512// void ModemWidget2::busywaitchanged(int n) { 542// void ModemWidget2::busywaitchanged(int n) {
513// _pppdata->setbusyWait(n); 543// _pppdata->setbusyWait(n);
514// } 544// }
515 545
516 546
517// void ModemWidget2::volumeChanged(int v) { 547// void ModemWidget2::volumeChanged(int v) {
518// _pppdata->setVolume(v); 548// _pppdata->setVolume(v);
519// } 549// }
520 550
521bool ModemWidget2::save() 551bool ModemWidget2::save()
522{ 552{
523 _pppdata->setWaitForDialTone(waitfordt->isChecked()); 553 _pppdata->setWaitForDialTone(waitfordt->isChecked());
524 _pppdata->setbusyWait(busywait->value()); 554 _pppdata->setbusyWait(busywait->value());
525 _pppdata->setVolume(volume->value()); 555 _pppdata->setVolume(volume->value());
526 return true; 556 return true;
527} 557}
528 558
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
@@ -1,108 +1,125 @@
1/* 1/*
2 * 2 *
3 * kPPP: A pppd front end for the KDE project 3 * kPPP: A pppd front end for the KDE project
4 * 4 *
5 * $Id$ 5 * $Id$
6 * 6 *
7 * Copyright (C) 1997 Bernd Johannes Wuebben 7 * Copyright (C) 1997 Bernd Johannes Wuebben
8 * wuebben@math.cornell.edu 8 * wuebben@math.cornell.edu
9 * 9 *
10 * 10 *
11 * This program is free software; you can redistribute it and/or 11 * This program is free software; you can redistribute it and/or
12 * modify it under the terms of the GNU Library General Public 12 * modify it under the terms of the GNU Library General Public
13 * License as published by the Free Software Foundation; either 13 * License as published by the Free Software Foundation; either
14 * version 2 of the License, or (at your option) any later version. 14 * version 2 of the License, or (at your option) any later version.
15 * 15 *
16 * This program is distributed in the hope that it will be useful, 16 * This program is distributed in the hope that it will be useful,
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of 17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
19 * Library General Public License for more details. 19 * Library General Public License for more details.
20 * 20 *
21 * You should have received a copy of the GNU Library General Public 21 * You should have received a copy of the GNU Library General Public
22 * License along with this program; if not, write to the Free 22 * License along with this program; if not, write to the Free
23 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. 23 * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
24 */ 24 */
25 25
26#ifndef _GENERAL_H_ 26#ifndef _GENERAL_H_
27#define _GENERAL_H_ 27#define _GENERAL_H_
28 28
29#include <qwidget.h> 29#include <qwidget.h>
30 30
31class QSlider; 31class QSlider;
32class QSpinBox; 32class QSpinBox;
33class QCombobox; 33class QCombobox;
34class QLabel; 34class QLabel;
35class QCheckBox; 35class QCheckBox;
36class QComboBox; 36class QComboBox;
37class PPPData; 37class PPPData;
38class InterfacePPP; 38class InterfacePPP;
39class QLineEdit; 39class QLineEdit;
40 40
41class ModemWidget : public QWidget { 41class ModemWidget : public QWidget {
42 Q_OBJECT 42 Q_OBJECT
43public: 43public:
44 ModemWidget(PPPData*, QWidget *parent=0, const char *name=0 ); 44 ModemWidget(PPPData*, QWidget *parent=0, const char *name=0 );
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); */
53 /* void modemtimeoutchanged(int); */ 61 /* void modemtimeoutchanged(int); */
54 /* void modemlockfilechanged(bool); */ 62 /* void modemlockfilechanged(bool); */
55 /* void setenter(int); */ 63 /* void setenter(int); */
56/* void speed_selection(int); */ 64/* void speed_selection(int); */
57 65
58private: 66private:
59 QComboBox *enter; 67 QComboBox *enter;
60 /* QLabel *label1; */ 68 /* QLabel *label1; */
61 /* QLabel *label2; */ 69 /* QLabel *label2; */
62 /* QLabel *labeltmp; */ 70 /* QLabel *labeltmp; */
63 /* QLabel *labelenter; */ 71 /* QLabel *labelenter; */
64 QLineEdit *modemname; 72 QLineEdit *modemname;
65 QComboBox *modemdevice; 73 QComboBox *modemdevice;
66 QComboBox *flowcontrol; 74 QComboBox *flowcontrol;
67 75
68 QComboBox *baud_c; 76 QComboBox *baud_c;
69 QLabel *baud_label; 77 QLabel *baud_label;
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 {
78 Q_OBJECT 91 Q_OBJECT
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);
87 void modemcmdsbutton(); 104 void modemcmdsbutton();
88 // void terminal(); 105 // void terminal();
89 void query_modem(); 106 void query_modem();
90 // void volumeChanged(int); 107 // void volumeChanged(int);
91 108
92private: 109private:
93 QLabel *labeltmp; 110 QLabel *labeltmp;
94 QPushButton *modemcmds; 111 QPushButton *modemcmds;
95 QPushButton *modeminfo_button; 112 QPushButton *modeminfo_button;
96 // QPushButton *terminal_button; 113 // QPushButton *terminal_button;
97 // QFrame *fline; 114 // QFrame *fline;
98 QCheckBox *waitfordt; 115 QCheckBox *waitfordt;
99 QSpinBox *busywait; 116 QSpinBox *busywait;
100 QCheckBox *chkbox1; 117 QCheckBox *chkbox1;
101 QSlider *volume; 118 QSlider *volume;
102 PPPData *_pppdata; 119 PPPData *_pppdata;
103 InterfacePPP *_ifaceppp; 120 InterfacePPP *_ifaceppp;
104}; 121};
105 122
106#endif 123#endif
107 124
108 125