author | benmeyer <benmeyer> | 2002-10-24 20:20:12 (UTC) |
---|---|---|
committer | benmeyer <benmeyer> | 2002-10-24 20:20:12 (UTC) |
commit | 57c34f2f0b35ab13e7618ba77480c9b28b83885a (patch) (side-by-side diff) | |
tree | 406fc6016ccea8d9d77a3b251361d11828e7afbc /noncore/settings | |
parent | 013b5a78262099a55de8e7228436f2c00660e6b1 (diff) | |
download | opie-57c34f2f0b35ab13e7618ba77480c9b28b83885a.zip opie-57c34f2f0b35ab13e7618ba77480c9b28b83885a.tar.gz opie-57c34f2f0b35ab13e7618ba77480c9b28b83885a.tar.bz2 |
Fix segfault
8 files changed, 19 insertions, 29 deletions
diff --git a/noncore/settings/networksettings/interfacesetupimp.cpp b/noncore/settings/networksettings/interfacesetupimp.cpp index 1327726..a8731a9 100644 --- a/noncore/settings/networksettings/interfacesetupimp.cpp +++ b/noncore/settings/networksettings/interfacesetupimp.cpp @@ -35,13 +35,13 @@ InterfaceSetupImp::InterfaceSetupImp(QWidget* parent, const char* name, Interfac * Save the current settings, then write out the interfaces file and close. */ void InterfaceSetupImp::accept(){ if(!saveSettings()) return; interfaces->write(); - close(true); + QDialog::accept(); } /** * Save the settings for the current Interface. * @return bool true if successfull, false otherwise */ diff --git a/noncore/settings/networksettings/interfacesetupimp.h b/noncore/settings/networksettings/interfacesetupimp.h index 7df0d46..a0bec32 100644 --- a/noncore/settings/networksettings/interfacesetupimp.h +++ b/noncore/settings/networksettings/interfacesetupimp.h @@ -8,13 +8,13 @@ class Interfaces; class InterfaceSetupImp : public InterfaceSetup { Q_OBJECT public: InterfaceSetupImp( QWidget* parent = 0, const char* name = 0, Interface *i=0, bool modal = FALSE, WFlags fl = 0); - + protected slots: void accept(); public slots: void setProfile(const QString &profile); diff --git a/noncore/settings/networksettings/mainwindowimp.cpp b/noncore/settings/networksettings/mainwindowimp.cpp index c86acdc..4a088cb 100644 --- a/noncore/settings/networksettings/mainwindowimp.cpp +++ b/noncore/settings/networksettings/mainwindowimp.cpp @@ -75,32 +75,32 @@ MainWindowImp::MainWindowImp(QWidget *parent, const char *name) : MainWindow(par }
/**
* Deconstructor. Save profiles. Delete loaded libraries.
*/
MainWindowImp::~MainWindowImp(){
- qDebug("start Saving mainwindow");
+ qDebug("Deleting main window");
// Save profiles.
Config cfg("NetworkSetup");
cfg.setGroup("General");
cfg.writeEntry("Profiles", profiles.join(" "));
// Delete all interfaces that don't have owners.
QMap<Interface*, QListViewItem*>::Iterator iIt;
for( iIt = items.begin(); iIt != items.end(); ++iIt ){
if(iIt.key()->getModuleOwner() == NULL)
delete iIt.key();
}
-
+
// Delete Modules and Libraries
QMap<Module*, QLibrary*>::Iterator it;
for( it = libraries.begin(); it != libraries.end(); ++it ){
delete it.key();
- delete it.data();
+ //delete it.data();
}
- qDebug("done Saving mainwindow");
+ qDebug("Done deleting main window");
}
/**
* Load all modules that are found in the path
* @param path a directory that is scaned for any plugins that can be loaded
* and attempts to load them
@@ -241,24 +241,23 @@ void MainWindowImp::configureClicked(){ if(i->getModuleOwner()){
i->getModuleOwner()->setProfile(currentProfile);
QTabWidget *tabWidget = NULL;
QWidget *moduleConfigure = i->getModuleOwner()->configure(i, &tabWidget);
if(moduleConfigure != NULL){
if(tabWidget != NULL){
- InterfaceSetupImp *configure = new InterfaceSetupImp(tabWidget, "InterfaceSetupImp", i, true);
+ InterfaceSetupImp *configure = new InterfaceSetupImp(tabWidget, "InterfaceSetupImp", i, false, Qt::WDestructiveClose);
configure->setProfile(currentProfile);
tabWidget->insertTab(configure, "TCP/IP");
-
}
moduleConfigure->showMaximized();
moduleConfigure->show();
return;
}
}
- InterfaceSetupImp *configure = new InterfaceSetupImp(0, "InterfaceSetupImp", i, true);
+ InterfaceSetupImp *configure = new InterfaceSetupImp(0, "InterfaceSetupImp", i, false, Qt::WDestructiveClose);
configure->setProfile(currentProfile);
configure->showMaximized();
configure->show();
}
/**
diff --git a/noncore/settings/networksettings/networksetup.pro b/noncore/settings/networksettings/networksetup.pro index f09db93..7299cc6 100644 --- a/noncore/settings/networksettings/networksetup.pro +++ b/noncore/settings/networksettings/networksetup.pro @@ -1,10 +1,10 @@ -DESTDIR = $(OPIEDIR)/bin +#DESTDIR = $(OPIEDIR)/bin TEMPLATE = app -#CONFIG = qt warn_on debug -CONFIG = qt warn_on release +CONFIG = qt warn_on debug +#CONFIG = qt warn_on release HEADERS = mainwindowimp.h addconnectionimp.h interface.h interfaceinformationimp.h interfacesetupimp.h interfaces.h defaultmodule.h kprocctrl.h module.h kprocess.h SOURCES = main.cpp mainwindowimp.cpp addconnectionimp.cpp interface.cpp interfaceinformationimp.cpp interfacesetupimp.cpp kprocctrl.cpp kprocess.cpp interfaces.cpp INCLUDEPATH += $(OPIEDIR)/include DEPENDPATH += $(OPIEDIR)/include LIBS += -lqpe INTERFACES = mainwindow.ui addconnection.ui interfaceinformation.ui interfaceadvanced.ui interfacesetup.ui diff --git a/noncore/settings/networksettings/wlan/wlan.pro b/noncore/settings/networksettings/wlan/wlan.pro index 432a096..814a0b4 100644 --- a/noncore/settings/networksettings/wlan/wlan.pro +++ b/noncore/settings/networksettings/wlan/wlan.pro @@ -1,10 +1,10 @@ TEMPLATE = lib -CONFIG += qt warn_on release -#CONFIG += qt warn_on debug -DESTDIR = $(OPIEDIR)/plugins/networksetup +#CONFIG += qt warn_on release +CONFIG += qt warn_on debug +#DESTDIR = $(OPIEDIR)/plugins/networksetup HEADERS = wlanimp.h wlanmodule.h wextensions.h SOURCES = wlanimp.cpp wlanmodule.cpp wextensions.cpp INCLUDEPATH += $(OPIEDIR)/include ../ DEPENDPATH += $(OPIEDIR)/include LIBS += -lqpe INTERFACES = wlan.ui info.ui diff --git a/noncore/settings/networksettings/wlan/wlanimp.cpp b/noncore/settings/networksettings/wlan/wlanimp.cpp index 94c7518..45952b9 100644 --- a/noncore/settings/networksettings/wlan/wlanimp.cpp +++ b/noncore/settings/networksettings/wlan/wlanimp.cpp @@ -13,13 +13,13 @@ #include <qlineedit.h> #include <qspinbox.h> #include <qradiobutton.h> #include <qcheckbox.h> #include <qregexp.h> -WLANImp::WLANImp( QWidget* parent, const char* name):WLAN(parent, name, Qt::WDestructiveClose){ +WLANImp::WLANImp( QWidget* parent, const char* name, bool modal, WFlags fl):WLAN(parent, name, modal, fl){ config = new Config("wireless"); readConfig(); } WLANImp::~WLANImp( ){ delete config; @@ -98,29 +98,24 @@ bool WLANImp::writeConfig() config->writeEntry( "dot11WEPDefaultKeyID", 3 ); } config->writeEntry( "dot11WEPDefaultKey0", keyLineEdit0->text() ); config->writeEntry( "dot11WEPDefaultKey1", keyLineEdit1->text() ); config->writeEntry( "dot11WEPDefaultKey2", keyLineEdit2->text() ); config->writeEntry( "dot11WEPDefaultKey3", keyLineEdit3->text() ); + return true; return writeWirelessOpts( ); } /** */ void WLANImp::accept() { if ( writeConfig() ) QDialog::accept(); } -void WLANImp::done ( int r ) -{ - QDialog::done ( r ); - close ( ); -} - bool WLANImp::writeWirelessOpts( QString scheme ) { qWarning( "WLANImp::writeWirelessOpts entered." ); QString prev = "/etc/pcmcia/wireless.opts"; QFile prevFile(prev); if ( !prevFile.open( IO_ReadOnly ) ) diff --git a/noncore/settings/networksettings/wlan/wlanimp.h b/noncore/settings/networksettings/wlan/wlanimp.h index 22ce143..59b7c59 100644 --- a/noncore/settings/networksettings/wlan/wlanimp.h +++ b/noncore/settings/networksettings/wlan/wlanimp.h @@ -6,18 +6,17 @@ #include <qpe/config.h> class WLANImp : public WLAN { Q_OBJECT public: - WLANImp( QWidget* parent = 0, const char* name = 0); + WLANImp( QWidget* parent = 0, const char* name = 0, bool modal = FALSE, WFlags fl = 0 ); ~WLANImp( ); protected: void accept(); - void done ( int r ); private: void readConfig(); bool writeConfig(); bool writeWirelessOpts( QString scheme = "*" ); bool writeWlanngOpts( QString scheme = "*" ); diff --git a/noncore/settings/networksettings/wlan/wlanmodule.cpp b/noncore/settings/networksettings/wlan/wlanmodule.cpp index 7507c54..3363b8a 100644 --- a/noncore/settings/networksettings/wlan/wlanmodule.cpp +++ b/noncore/settings/networksettings/wlan/wlanmodule.cpp @@ -12,12 +12,13 @@ WLANModule::WLANModule() : Module() { } /** */ WLANModule::~WLANModule(){ + qDebug("Deleting module"); Interface *i; for ( i=list.first(); i != 0; i=list.next() ) delete i; } /** @@ -54,13 +55,13 @@ bool WLANModule::isOwner(Interface *i){ /** * Create, set tabWiget and return the WLANConfigure Module * @param tabWidget a pointer to the tab widget that this configure has. * @return QWidget* pointer to the tab widget in this modules configure. */ QWidget *WLANModule::configure(Interface *, QTabWidget **tabWidget){ - WLANImp *wlanconfig = new WLANImp(0, "WlanConfig"); + WLANImp *wlanconfig = new WLANImp(0, "WlanConfig", false, Qt::WDestructiveClose); (*tabWidget) = wlanconfig->tabWidget; return wlanconfig; } /** * Create, set tabWiget and return the Information Module @@ -85,16 +86,12 @@ QWidget *WLANModule::information(Interface *i, QTabWidget **tabWidget){ int quality = 0; we.stats(signal, noise, quality); info->signalProgressBar->setProgress(signal); info->noiseProgressBar->setProgress(noise); info->qualityProgressBar->setProgress(quality); info->rateLabel->setText(QString("%1 Mb/s").arg(we.rate())); - //WlanInfo info (0, "wireless info", true); - //info.show(); - //return NULL; - return info; } /** * Get all active (up or down) interfaces * @return QList<Interface> A list of interfaces that exsist that havn't |