summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings/wlan/wlanimp.cpp27
1 files changed, 14 insertions, 13 deletions
diff --git a/noncore/settings/networksettings/wlan/wlanimp.cpp b/noncore/settings/networksettings/wlan/wlanimp.cpp
index 1782c22..db03266 100644
--- a/noncore/settings/networksettings/wlan/wlanimp.cpp
+++ b/noncore/settings/networksettings/wlan/wlanimp.cpp
@@ -5,25 +5,26 @@
5#include <qdir.h> 5#include <qdir.h>
6#include <qtextstream.h> 6#include <qtextstream.h>
7#include <qmessagebox.h> 7#include <qmessagebox.h>
8#include <qlineedit.h> 8#include <qlineedit.h>
9#include <qlabel.h> 9#include <qlabel.h>
10#include <qspinbox.h> 10#include <qspinbox.h>
11#include <qradiobutton.h> 11#include <qradiobutton.h>
12#include <qcheckbox.h> 12#include <qcheckbox.h>
13#include <qtabwidget.h> 13#include <qtabwidget.h>
14#include <qcombobox.h> 14#include <qcombobox.h>
15 15
16/* system() */ 16/* system() */
17#include <stdlib.h> 17//#include <stdlib.h>
18#include <opie/oprocess.h>
18 19
19#define WIRELESS_OPTS "/etc/pcmcia/wireless.opts" 20#define WIRELESS_OPTS "/etc/pcmcia/wireless.opts"
20 21
21/** 22/**
22 * Constructor, read in the wireless.opts file for parsing later. 23 * Constructor, read in the wireless.opts file for parsing later.
23 */ 24 */
24WLANImp::WLANImp( QWidget* parent, const char* name, Interface *i, bool modal, WFlags fl):WLAN(parent, name, modal, fl), currentProfile("*") { 25WLANImp::WLANImp( QWidget* parent, const char* name, Interface *i, bool modal, WFlags fl):WLAN(parent, name, modal, fl), currentProfile("*") {
25 interfaceSetup = new InterfaceSetupImp(tabWidget, "InterfaceSetupImp", i); 26 interfaceSetup = new InterfaceSetupImp(tabWidget, "InterfaceSetupImp", i);
26 tabWidget->insertTab(interfaceSetup, "TCP/IP"); 27 tabWidget->insertTab(interfaceSetup, "TCP/IP");
27 28
28 // Read in the config file. 29 // Read in the config file.
29 QString wlanFile = WIRELESS_OPTS; 30 QString wlanFile = WIRELESS_OPTS;
@@ -216,32 +217,32 @@ void WLANImp::accept(){
216 if(essAny->isChecked() && essSpecificLineEdit->text().isEmpty()){ 217 if(essAny->isChecked() && essSpecificLineEdit->text().isEmpty()){
217 QMessageBox::information(this, "Error", "Please enter a ESS-ID.", QMessageBox::Ok); 218 QMessageBox::information(this, "Error", "Please enter a ESS-ID.", QMessageBox::Ok);
218 return; 219 return;
219 } 220 }
220 221
221 // Ok settings are good here, save 222 // Ok settings are good here, save
222 changeAndSaveSettingFile(); 223 changeAndSaveSettingFile();
223 224
224 // Try to save the interfaces settings. 225 // Try to save the interfaces settings.
225 if(!interfaceSetup->saveChanges()) 226 if(!interfaceSetup->saveChanges())
226 return; 227 return;
227 228
228 // Restart the device now that the settings have changed 229 OProcess insert;
229 QString initpath; 230// OProcess eject;
230 if( QDir("/etc/rc.d/init.d").exists() )
231 initpath = "/etc/rc.d/init.d";
232 else if( QDir("/etc/init.d").exists() )
233 initpath = "/etc/init.d";
234 231
235 // It would be kinda cool if we didn't have to do this and could just to ifup/down 232 insert << "sh -c \"cardctl insert && cardctl eject\"";
236 233// eject << "cardctl eject";
237 if( initpath ) 234
238 system(QString("%1/pcmcia stop").arg(initpath)); 235// if (!eject.start(OProcess::Block, OProcess::NoCommunication) ) {
239 if( initpath ) 236// qWarning("could not start cardctl eject");
240 system(QString("%1/pcmcia start").arg(initpath)); 237// }
238
239 if (!insert.start(OProcess::DontCare, OProcess::NoCommunication) ) {
240 qWarning("could not start cardctl insert");
241 }
241 242
242 // Close out the dialog 243 // Close out the dialog
243 QDialog::accept(); 244 QDialog::accept();
244} 245}
245 246
246// wlanimp.cpp 247// wlanimp.cpp
247 248