author | benmeyer <benmeyer> | 2002-11-08 17:16:58 (UTC) |
---|---|---|
committer | benmeyer <benmeyer> | 2002-11-08 17:16:58 (UTC) |
commit | 56a6d067a51d741eb9be1912b69325bdd424dd84 (patch) (side-by-side diff) | |
tree | e8db80af083fc44d31042e342726ecfcbbcce4d5 /noncore/settings/networksettings/interfaces/interfacesetupimp.cpp | |
parent | e0db2259cc26cab12c6f1131b82dd867c454a3ff (diff) | |
download | opie-56a6d067a51d741eb9be1912b69325bdd424dd84.zip opie-56a6d067a51d741eb9be1912b69325bdd424dd84.tar.gz opie-56a6d067a51d741eb9be1912b69325bdd424dd84.tar.bz2 |
More optimizations, 1 memory leak fixed
Diffstat (limited to 'noncore/settings/networksettings/interfaces/interfacesetupimp.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/settings/networksettings/interfaces/interfacesetupimp.cpp | 103 |
1 files changed, 48 insertions, 55 deletions
diff --git a/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp b/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp index 3b1a4de..4818e37 100644 --- a/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp +++ b/noncore/settings/networksettings/interfaces/interfacesetupimp.cpp @@ -1,8 +1,5 @@ #include "interfacesetupimp.h" #include "interface.h" -#include "interfaces.h" -#include <qdialog.h> -#include <qcombobox.h> #include <qcheckbox.h> #include <qlineedit.h> @@ -13,23 +10,10 @@ #include <qmessagebox.h> -#include <assert.h> - #define DNSSCRIPT "changedns" /** - * Constuctor. Set up the connection and load the first profile. + * Constuctor. Set up the connection. A profile must be set. */ -InterfaceSetupImp::InterfaceSetupImp(QWidget* parent, const char* name, Interface *i, WFlags fl) : InterfaceSetup(parent, name, fl){ - assert(parent); - assert(i); - interface = i; - interfaces = new Interfaces(); - bool error = false; - if(interfaces->getInterfaceMethod(error) == INTERFACES_LOOPBACK){ - staticGroupBox->hide(); - dhcpCheckBox->hide(); - leaseTime->hide(); - leaseHoursLabel->hide(); - } +InterfaceSetupImp::InterfaceSetupImp(QWidget* parent, const char* name, Interface *i, WFlags fl) : InterfaceSetup(parent, name, fl), interface(i){ } @@ -40,5 +24,5 @@ bool InterfaceSetupImp::saveChanges(){ if(!saveSettings()) return false; - interfaces->write(); + interfaces.write(); return true; } @@ -50,11 +34,11 @@ bool InterfaceSetupImp::saveChanges(){ bool InterfaceSetupImp::saveSettings(){ // eh can't really do anything about it other then return. :-D - if(!interfaces->isInterfaceSet()) + if(!interfaces.isInterfaceSet()) return true; bool error = false; // Loopback case - if(interfaces->getInterfaceMethod(error) == INTERFACES_LOOPBACK){ - interfaces->setAuto(interface->getInterfaceName(), autoStart->isChecked()); + if(interfaces.getInterfaceMethod(error) == INTERFACES_LOOPBACK){ + interfaces.setAuto(interface->getInterfaceName(), autoStart->isChecked()); return true; } @@ -64,26 +48,26 @@ bool InterfaceSetupImp::saveSettings(){ return false; } - interfaces->removeAllInterfaceOptions(); + interfaces.removeAllInterfaceOptions(); // DHCP if(dhcpCheckBox->isChecked()){ - interfaces->setInterfaceMethod(INTERFACES_METHOD_DHCP); - interfaces->setInterfaceOption("leasehours", QString("%1").arg(leaseTime->value())); - interfaces->setInterfaceOption("leasetime", QString("%1").arg(leaseTime->value()*60*60)); + interfaces.setInterfaceMethod(INTERFACES_METHOD_DHCP); + interfaces.setInterfaceOption("leasehours", QString("%1").arg(leaseTime->value())); + interfaces.setInterfaceOption("leasetime", QString("%1").arg(leaseTime->value()*60*60)); } else{ - interfaces->setInterfaceMethod("static"); - interfaces->setInterfaceOption("address", ipAddressEdit->text()); - interfaces->setInterfaceOption("netmask", subnetMaskEdit->text()); - interfaces->setInterfaceOption("gateway", gatewayEdit->text()); + interfaces.setInterfaceMethod("static"); + interfaces.setInterfaceOption("address", ipAddressEdit->text()); + interfaces.setInterfaceOption("netmask", subnetMaskEdit->text()); + interfaces.setInterfaceOption("gateway", gatewayEdit->text()); if(!firstDNSLineEdit->text().isEmpty() || !secondDNSLineEdit->text().isEmpty()){ QString dns = firstDNSLineEdit->text() + " " + secondDNSLineEdit->text(); - interfaces->setInterfaceOption("up "DNSSCRIPT" -a ", dns); - interfaces->setInterfaceOption("down "DNSSCRIPT" -r ", dns); + interfaces.setInterfaceOption("up "DNSSCRIPT" -a ", dns); + interfaces.setInterfaceOption("down "DNSSCRIPT" -r ", dns); } } // IP Information - interfaces->setAuto(interface->getInterfaceName(), autoStart->isChecked()); + interfaces.setAuto(interface->getInterfaceName(), autoStart->isChecked()); return true; } @@ -91,30 +75,39 @@ bool InterfaceSetupImp::saveSettings(){ /** * The Profile has changed. - * @profile the new profile. + * @param QString profile the new profile. */ void InterfaceSetupImp::setProfile(const QString &profile){ + /* + bool error = false; + if(interfaces.getInterfaceMethod(error) == INTERFACES_LOOPBACK){ + staticGroupBox->hide(); + dhcpCheckBox->hide(); + leaseTime->hide(); + leaseHoursLabel->hide(); + } + */ + QString newInterfaceName = interface->getInterfaceName(); if(profile.length() > 0) newInterfaceName += "_" + profile; - qDebug("InterfaceSetupImp::setProfile"); // See if we have to make a interface. - if(!interfaces->setInterface(newInterfaceName)){ + if(!interfaces.setInterface(newInterfaceName)){ // Add making for this new interface if need too if(profile != ""){ - interfaces->copyInterface(interface->getInterfaceName(), newInterfaceName); - if(!interfaces->setMapping(interface->getInterfaceName())){ - interfaces->addMapping(interface->getInterfaceName()); - if(!interfaces->setMapping(interface->getInterfaceName())){ - qDebug("InterfaceSetupImp: Added Mapping, but still can't set."); + interfaces.copyInterface(interface->getInterfaceName(), newInterfaceName); + if(!interfaces.setMapping(interface->getInterfaceName())){ + interfaces.addMapping(interface->getInterfaceName()); + if(!interfaces.setMapping(interface->getInterfaceName())){ + qDebug("InterfaceSetupImp: Added Mapping, but still can't setInterface."); return; } } - interfaces->setMap("map", newInterfaceName); - interfaces->setScript("getprofile.sh"); + interfaces.setMap("map", newInterfaceName); + interfaces.setScript("getprofile.sh"); } else{ - interfaces->addInterface(newInterfaceName, INTERFACES_FAMILY_INET, INTERFACES_METHOD_DHCP); - if(!interfaces->setInterface(newInterfaceName)){ - qDebug("InterfaceSetupImp: Added interface, but still can't set."); + interfaces.addInterface(newInterfaceName, INTERFACES_FAMILY_INET, INTERFACES_METHOD_DHCP); + if(!interfaces.setInterface(newInterfaceName)){ + qDebug("InterfaceSetupImp: Added interface, but still can't setInterface."); return; } @@ -126,26 +119,26 @@ void InterfaceSetupImp::setProfile(const QString &profile){ // DHCP bool error = false; - if(interfaces->getInterfaceMethod(error) == INTERFACES_METHOD_DHCP) + if(interfaces.getInterfaceMethod(error) == INTERFACES_METHOD_DHCP) dhcpCheckBox->setChecked(true); else dhcpCheckBox->setChecked(false); - leaseTime->setValue(interfaces->getInterfaceOption("leasehours", error).toInt()); + leaseTime->setValue(interfaces.getInterfaceOption("leasehours", error).toInt()); if(error) - leaseTime->setValue(interfaces->getInterfaceOption("leasetime", error).toInt()/60/60); + leaseTime->setValue(interfaces.getInterfaceOption("leasetime", error).toInt()/60/60); if(error) leaseTime->setValue(24); // IP Information - autoStart->setChecked(interfaces->isAuto(interface->getInterfaceName())); - QString dns = interfaces->getInterfaceOption("up "DNSSCRIPT" -a", error); + autoStart->setChecked(interfaces.isAuto(interface->getInterfaceName())); + QString dns = interfaces.getInterfaceOption("up "DNSSCRIPT" -a", error); if(dns.contains(" ")){ firstDNSLineEdit->setText(dns.mid(0, dns.find(" "))); secondDNSLineEdit->setText(dns.mid(dns.find(" ")+1, dns.length())); } - ipAddressEdit->setText(interfaces->getInterfaceOption("address", error)); - subnetMaskEdit->setText(interfaces->getInterfaceOption("netmask", error)); - gatewayEdit->setText(interfaces->getInterfaceOption("gateway", error)); -} + ipAddressEdit->setText(interfaces.getInterfaceOption("address", error)); + subnetMaskEdit->setText(interfaces.getInterfaceOption("netmask", error)); + gatewayEdit->setText(interfaces.getInterfaceOption("gateway", error)); +} // interfacesetup.cpp |