summaryrefslogtreecommitdiff
Unidiff
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/networksetup/interfaces/interface.cpp24
-rw-r--r--noncore/net/networksetup/interfaces/interface.h3
-rw-r--r--noncore/net/networksetup/interfaces/interfaceinformationimp.cpp13
-rw-r--r--noncore/net/networksetup/interfaces/interfaceinformationimp.h1
-rw-r--r--noncore/net/networksetup/interfaces/interfaces.pro2
-rw-r--r--noncore/settings/networksettings/interfaces/interface.cpp24
-rw-r--r--noncore/settings/networksettings/interfaces/interface.h3
-rw-r--r--noncore/settings/networksettings/interfaces/interfaceinformationimp.cpp13
-rw-r--r--noncore/settings/networksettings/interfaces/interfaceinformationimp.h1
-rw-r--r--noncore/settings/networksettings/interfaces/interfaces.pro2
10 files changed, 66 insertions, 20 deletions
diff --git a/noncore/net/networksetup/interfaces/interface.cpp b/noncore/net/networksetup/interfaces/interface.cpp
index 929b3a1..e4f405e 100644
--- a/noncore/net/networksetup/interfaces/interface.cpp
+++ b/noncore/net/networksetup/interfaces/interface.cpp
@@ -42,74 +42,84 @@ void Interface::setAttached(bool isAttached){
42 * @param name - the new name 42 * @param name - the new name
43 * emit updateInterface 43 * emit updateInterface
44 */ 44 */
45void Interface::setHardwareName(QString name){ 45void Interface::setHardwareName(QString name){
46 hardwareName = name; 46 hardwareName = name;
47 emit(updateInterface(this)); 47 emit(updateInterface(this));
48}; 48};
49 49
50/** 50/**
51 * Set Module owner 51 * Set Module owner
52 * @param owner - the new owner 52 * @param owner - the new owner
53 * emit updateInterface 53 * emit updateInterface
54 */ 54 */
55void Interface::setModuleOwner(Module *owner){ 55void Interface::setModuleOwner(Module *owner){
56 moduleOwner = owner; 56 moduleOwner = owner;
57 emit(updateInterface(this)); 57 emit(updateInterface(this));
58}; 58};
59 59
60 60
61/** 61/**
62 * Try to start the interface. 62 * Try to start the interface.
63 */ 63 */
64void Interface::start(){ 64void Interface::start(){
65 // check to see if we are already running. 65 // check to see if we are already running.
66 if(true == status) 66 if(true == status){
67 emit (updateMessage("Unable to start interface,\n already started"));
67 return; 68 return;
68 69 }
70
69 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1()); 71 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1());
70 // See if it was successfull... 72 // See if it was successfull...
71 if(ret != 0) 73 if(ret != 0){
74 emit (updateMessage("Starting interface failed."));
72 return; 75 return;
73 76 }
77
74 status = true; 78 status = true;
75 refresh(); 79 refresh();
80 emit (updateMessage("Start successfull"));
76} 81}
77 82
78/** 83/**
79 * Try to stop the interface. 84 * Try to stop the interface.
80 */ 85 */
81void Interface::stop(){ 86void Interface::stop(){
82 // check to see if we are already stopped. 87 // check to see if we are already stopped.
83 if(false == status) 88 if(false == status){
89 emit (updateMessage("Unable to stop interface,\n already stopped"));
84 return; 90 return;
91 }
85 92
86 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1()); 93 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1());
87 if(ret != 0) 94 if(ret != 0){
95 emit (updateMessage("Stopping interface failed."));
88 return; 96 return;
97 }
89 98
90 status = true; 99 status = false;
91 refresh(); 100 refresh();
101 emit (updateMessage("Stop successfull"));
92} 102}
93 103
94/** 104/**
95 * Try to restart the interface. 105 * Try to restart the interface.
96 */ 106 */
97void Interface::restart(){ 107void Interface::restart(){
98 stop(); 108 stop();
99 start(); 109 start();
100} 110}
101 111
102/** 112/**
103 * Try to refresh the information about the interface. 113 * Try to refresh the information about the interface.
104 * First call ifconfig, then check the dhcp-info file 114 * First call ifconfig, then check the dhcp-info file
105 * @return bool true if successfull. 115 * @return bool true if successfull.
106 */ 116 */
107bool Interface::refresh(){ 117bool Interface::refresh(){
108 // See if we are up. 118 // See if we are up.
109 if(status == false){ 119 if(status == false){
110 macAddress = ""; 120 macAddress = "";
111 ip = "0.0.0.0"; 121 ip = "0.0.0.0";
112 subnetMask = "0.0.0.0"; 122 subnetMask = "0.0.0.0";
113 broadcast = ""; 123 broadcast = "";
114 dhcp = false; 124 dhcp = false;
115 dhcpServerIp = ""; 125 dhcpServerIp = "";
diff --git a/noncore/net/networksetup/interfaces/interface.h b/noncore/net/networksetup/interfaces/interface.h
index dc9c6d3..fc064fe 100644
--- a/noncore/net/networksetup/interfaces/interface.h
+++ b/noncore/net/networksetup/interfaces/interface.h
@@ -1,38 +1,39 @@
1#ifndef INTERFACE_H 1#ifndef INTERFACE_H
2#define INTERFACE_H 2#define INTERFACE_H
3 3
4#include <qstring.h> 4#include <qstring.h>
5#include <qobject.h> 5#include <qobject.h>
6 6
7class Module; 7class Module;
8 8
9class Interface : public QObject{ 9class Interface : public QObject{
10 Q_OBJECT 10 Q_OBJECT
11 11
12signals: 12signals:
13 void updateInterface(Interface *i); 13 void updateInterface(Interface *i);
14 14 void updateMessage(const QString &message);
15
15public: 16public:
16 Interface(QObject * parent=0, const char * name= "unknown", bool status = false); 17 Interface(QObject * parent=0, const char * name= "unknown", bool status = false);
17 virtual ~Interface(){}; 18 virtual ~Interface(){};
18 19
19 virtual QString getInterfaceName(){ QString n(this->name()); return n; }; 20 virtual QString getInterfaceName(){ QString n(this->name()); return n; };
20 21
21 virtual bool getStatus(){ return status; }; 22 virtual bool getStatus(){ return status; };
22 virtual void setStatus(bool newStatus); 23 virtual void setStatus(bool newStatus);
23 24
24 virtual bool isAttached(){ return attached; }; 25 virtual bool isAttached(){ return attached; };
25 virtual void setAttached(bool isAttached=false); 26 virtual void setAttached(bool isAttached=false);
26 27
27 virtual QString getHardwareName(){ return hardwareName; }; 28 virtual QString getHardwareName(){ return hardwareName; };
28 virtual void setHardwareName(QString name="Unknown"); 29 virtual void setHardwareName(QString name="Unknown");
29 30
30 virtual Module* getModuleOwner(){ return moduleOwner; }; 31 virtual Module* getModuleOwner(){ return moduleOwner; };
31 virtual void setModuleOwner(Module *owner=NULL); 32 virtual void setModuleOwner(Module *owner=NULL);
32 33
33 // inet information. 34 // inet information.
34 QString getMacAddress(){ return macAddress; }; 35 QString getMacAddress(){ return macAddress; };
35 QString getIp(){ return ip; }; 36 QString getIp(){ return ip; };
36 QString getSubnetMask(){ return subnetMask; }; 37 QString getSubnetMask(){ return subnetMask; };
37 QString getBroadcast(){ return broadcast; }; 38 QString getBroadcast(){ return broadcast; };
38 bool isDhcp(){ return dhcp; }; 39 bool isDhcp(){ return dhcp; };
diff --git a/noncore/net/networksetup/interfaces/interfaceinformationimp.cpp b/noncore/net/networksetup/interfaces/interfaceinformationimp.cpp
index 43483fb..39575c4 100644
--- a/noncore/net/networksetup/interfaces/interfaceinformationimp.cpp
+++ b/noncore/net/networksetup/interfaces/interfaceinformationimp.cpp
@@ -1,70 +1,81 @@
1#include "interfaceinformationimp.h" 1#include "interfaceinformationimp.h"
2#include "interfaceadvanced.h" 2#include "interfaceadvanced.h"
3 3
4#include <qpushbutton.h> 4#include <qpushbutton.h>
5#include <qlabel.h> 5#include <qlabel.h>
6#include <qgroupbox.h> 6#include <qgroupbox.h>
7#include <qmessagebox.h>
8
7#include <assert.h> 9#include <assert.h>
8 10
9/** 11/**
10 * Constructor for the InterfaceInformationImp class. This class pretty much 12 * Constructor for the InterfaceInformationImp class. This class pretty much
11 * just display's information about the interface that is passed to it. 13 * just display's information about the interface that is passed to it.
12 */ 14 */
13InterfaceInformationImp::InterfaceInformationImp(QWidget *parent, const char *name, Interface *i, WFlags f):InterfaceInformation(parent, name, f){ 15InterfaceInformationImp::InterfaceInformationImp(QWidget *parent, const char *name, Interface *i, WFlags f):InterfaceInformation(parent, name, f){
14 assert(i); 16 assert(i);
15 17
16 interface = i; 18 interface = i;
17 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *))); 19 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *)));
20 connect(i, SIGNAL(updateMessage(const QString &)), this, SLOT(showMessage(const QString &)));
18 updateInterface(interface); 21 updateInterface(interface);
19 connect(startButton, SIGNAL(clicked()), interface, SLOT(start())); 22 connect(startButton, SIGNAL(clicked()), interface, SLOT(start()));
20 connect(stopButton, SIGNAL(clicked()), interface, SLOT(stop())); 23 connect(stopButton, SIGNAL(clicked()), interface, SLOT(stop()));
21 connect(restartButton, SIGNAL(clicked()), interface, SLOT(restart())); 24 connect(restartButton, SIGNAL(clicked()), interface, SLOT(restart()));
22 connect(refreshButton, SIGNAL(clicked()), interface, SLOT(refresh())); 25 connect(refreshButton, SIGNAL(clicked()), interface, SLOT(refresh()));
23 connect(advancedButton, SIGNAL(clicked()), this, SLOT(advanced())); 26 connect(advancedButton, SIGNAL(clicked()), this, SLOT(advanced()));
24
25} 27}
26 28
27/** 29/**
28 * Update the interface information and buttons. 30 * Update the interface information and buttons.
29 * @param Intarface *i the interface to update (should be the one we already 31 * @param Intarface *i the interface to update (should be the one we already
30 * know about). 32 * know about).
31 */ 33 */
32void InterfaceInformationImp::updateInterface(Interface *i){ 34void InterfaceInformationImp::updateInterface(Interface *i){
33 if(interface->getStatus()){ 35 if(interface->getStatus()){
34 startButton->setEnabled(false); 36 startButton->setEnabled(false);
35 stopButton->setEnabled(true); 37 stopButton->setEnabled(true);
36 restartButton->setEnabled(true); 38 restartButton->setEnabled(true);
37 } 39 }
38 else{ 40 else{
39 startButton->setEnabled(true); 41 startButton->setEnabled(true);
40 stopButton->setEnabled(false); 42 stopButton->setEnabled(false);
41 restartButton->setEnabled(false); 43 restartButton->setEnabled(false);
42 } 44 }
43 macAddressLabel->setText(interface->getMacAddress()); 45 macAddressLabel->setText(interface->getMacAddress());
44 ipAddressLabel->setText(interface->getIp()); 46 ipAddressLabel->setText(interface->getIp());
45 subnetMaskLabel->setText(interface->getSubnetMask()); 47 subnetMaskLabel->setText(interface->getSubnetMask());
46 broadcastLabel->setText(interface->getBroadcast()); 48 broadcastLabel->setText(interface->getBroadcast());
47} 49}
48 50
49/** 51/**
50 * Create the advanced widget. Fill it with the current interface's information. 52 * Create the advanced widget. Fill it with the current interface's information.
51 * Display it. 53 * Display it.
52 */ 54 */
53void InterfaceInformationImp::advanced(){ 55void InterfaceInformationImp::advanced(){
54 InterfaceAdvanced *a = new InterfaceAdvanced(0, "InterfaceAdvanced"); 56 InterfaceAdvanced *a = new InterfaceAdvanced(0, "InterfaceAdvanced");
55 a->interfaceName->setText(interface->getInterfaceName()); 57 a->interfaceName->setText(interface->getInterfaceName());
56 a->macAddressLabel->setText(interface->getMacAddress()); 58 a->macAddressLabel->setText(interface->getMacAddress());
57 a->ipAddressLabel->setText(interface->getIp()); 59 a->ipAddressLabel->setText(interface->getIp());
58 a->subnetMaskLabel->setText(interface->getSubnetMask()); 60 a->subnetMaskLabel->setText(interface->getSubnetMask());
59 a->broadcastLabel->setText(interface->getBroadcast()); 61 a->broadcastLabel->setText(interface->getBroadcast());
60 a->dhcpServerLabel->setText(interface->getDhcpServerIp()); 62 a->dhcpServerLabel->setText(interface->getDhcpServerIp());
61 a->leaseObtainedLabel->setText(interface->getLeaseObtained()); 63 a->leaseObtainedLabel->setText(interface->getLeaseObtained());
62 a->leaseExpiresLabel->setText(interface->getLeaseExpires()); 64 a->leaseExpiresLabel->setText(interface->getLeaseExpires());
63 a->dhcpInformation->setEnabled(interface->isDhcp()); 65 a->dhcpInformation->setEnabled(interface->isDhcp());
64 66
65 a->showMaximized(); 67 a->showMaximized();
66 a->show(); 68 a->show();
67} 69}
68 70
71/**
72 * Messages from the interface if start/stop went as planned.
73 * Purly for user feedback.
74 * @param message the message to display.
75 */
76void InterfaceInformationImp::showMessage(const QString &message){
77 QMessageBox::information(this, "Message", message, QMessageBox::Ok);
78}
79
69// infoimp.cpp 80// infoimp.cpp
70 81
diff --git a/noncore/net/networksetup/interfaces/interfaceinformationimp.h b/noncore/net/networksetup/interfaces/interfaceinformationimp.h
index 42213cc..65cdfe0 100644
--- a/noncore/net/networksetup/interfaces/interfaceinformationimp.h
+++ b/noncore/net/networksetup/interfaces/interfaceinformationimp.h
@@ -1,27 +1,28 @@
1#ifndef INTERFACEINFORMATIONIMP_H 1#ifndef INTERFACEINFORMATIONIMP_H
2#define INTERFACEINFORMATIONIMP_H 2#define INTERFACEINFORMATIONIMP_H
3 3
4#include "interfaceinformation.h" 4#include "interfaceinformation.h"
5#include "interface.h" 5#include "interface.h"
6 6
7class InterfaceInformationImp : public InterfaceInformation { 7class InterfaceInformationImp : public InterfaceInformation {
8 8
9Q_OBJECT 9Q_OBJECT
10 10
11public: 11public:
12 InterfaceInformationImp(QWidget *parent=0, const char *name=0, Interface *i=0, WFlags f=0); 12 InterfaceInformationImp(QWidget *parent=0, const char *name=0, Interface *i=0, WFlags f=0);
13 ~InterfaceInformationImp(){}; 13 ~InterfaceInformationImp(){};
14 14
15private slots: 15private slots:
16 void advanced(); 16 void advanced();
17 void updateInterface(Interface *i); 17 void updateInterface(Interface *i);
18 void showMessage(const QString &message);
18 19
19private: 20private:
20 Interface *interface; 21 Interface *interface;
21 22
22}; 23};
23 24
24#endif 25#endif
25 26
26// addserviceimp.h 27// addserviceimp.h
27 28
diff --git a/noncore/net/networksetup/interfaces/interfaces.pro b/noncore/net/networksetup/interfaces/interfaces.pro
index 9a024f6..d6b43fb 100644
--- a/noncore/net/networksetup/interfaces/interfaces.pro
+++ b/noncore/net/networksetup/interfaces/interfaces.pro
@@ -1,12 +1,12 @@
1TEMPLATE = lib 1TEMPLATE = lib
2CONFIG += qt warn_on release 2CONFIG += qt warn_on release
3 #CONFIG += qt warn_on debug 3 #CONFIG += qt warn_on debug
4 DESTDIR = $(QTDIR)/lib$(PROJMAK) 4 #DESTDIR = $(QTDIR)/lib$(PROJMAK)
5 HEADERS = interface.h interfaceinformationimp.h interfaces.h interfacesetupimp.h 5 HEADERS = interface.h interfaceinformationimp.h interfaces.h interfacesetupimp.h
6 SOURCES = interface.cpp interfaces.cpp interfaceinformationimp.cpp interfacesetupimp.cpp 6 SOURCES = interface.cpp interfaces.cpp interfaceinformationimp.cpp interfacesetupimp.cpp
7 INCLUDEPATH+= $(OPIEDIR)/include ../ 7 INCLUDEPATH+= $(OPIEDIR)/include ../
8 DEPENDPATH+= $(OPIEDIR)/include 8 DEPENDPATH+= $(OPIEDIR)/include
9LIBS += -lqpe 9LIBS += -lqpe
10 INTERFACES= interfaceadvanced.ui interfaceinformation.ui interfacesetup.ui 10 INTERFACES= interfaceadvanced.ui interfaceinformation.ui interfacesetup.ui
11 TARGET = interfaces 11 TARGET = interfaces
12 VERSION = 1.0.0 12 VERSION = 1.0.0
diff --git a/noncore/settings/networksettings/interfaces/interface.cpp b/noncore/settings/networksettings/interfaces/interface.cpp
index 929b3a1..e4f405e 100644
--- a/noncore/settings/networksettings/interfaces/interface.cpp
+++ b/noncore/settings/networksettings/interfaces/interface.cpp
@@ -42,74 +42,84 @@ void Interface::setAttached(bool isAttached){
42 * @param name - the new name 42 * @param name - the new name
43 * emit updateInterface 43 * emit updateInterface
44 */ 44 */
45void Interface::setHardwareName(QString name){ 45void Interface::setHardwareName(QString name){
46 hardwareName = name; 46 hardwareName = name;
47 emit(updateInterface(this)); 47 emit(updateInterface(this));
48}; 48};
49 49
50/** 50/**
51 * Set Module owner 51 * Set Module owner
52 * @param owner - the new owner 52 * @param owner - the new owner
53 * emit updateInterface 53 * emit updateInterface
54 */ 54 */
55void Interface::setModuleOwner(Module *owner){ 55void Interface::setModuleOwner(Module *owner){
56 moduleOwner = owner; 56 moduleOwner = owner;
57 emit(updateInterface(this)); 57 emit(updateInterface(this));
58}; 58};
59 59
60 60
61/** 61/**
62 * Try to start the interface. 62 * Try to start the interface.
63 */ 63 */
64void Interface::start(){ 64void Interface::start(){
65 // check to see if we are already running. 65 // check to see if we are already running.
66 if(true == status) 66 if(true == status){
67 emit (updateMessage("Unable to start interface,\n already started"));
67 return; 68 return;
68 69 }
70
69 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1()); 71 int ret = system(QString("%1 %2 up").arg(IFCONFIG).arg(this->name()).latin1());
70 // See if it was successfull... 72 // See if it was successfull...
71 if(ret != 0) 73 if(ret != 0){
74 emit (updateMessage("Starting interface failed."));
72 return; 75 return;
73 76 }
77
74 status = true; 78 status = true;
75 refresh(); 79 refresh();
80 emit (updateMessage("Start successfull"));
76} 81}
77 82
78/** 83/**
79 * Try to stop the interface. 84 * Try to stop the interface.
80 */ 85 */
81void Interface::stop(){ 86void Interface::stop(){
82 // check to see if we are already stopped. 87 // check to see if we are already stopped.
83 if(false == status) 88 if(false == status){
89 emit (updateMessage("Unable to stop interface,\n already stopped"));
84 return; 90 return;
91 }
85 92
86 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1()); 93 int ret = system(QString("%1 %2 down").arg(IFCONFIG).arg(this->name()).latin1());
87 if(ret != 0) 94 if(ret != 0){
95 emit (updateMessage("Stopping interface failed."));
88 return; 96 return;
97 }
89 98
90 status = true; 99 status = false;
91 refresh(); 100 refresh();
101 emit (updateMessage("Stop successfull"));
92} 102}
93 103
94/** 104/**
95 * Try to restart the interface. 105 * Try to restart the interface.
96 */ 106 */
97void Interface::restart(){ 107void Interface::restart(){
98 stop(); 108 stop();
99 start(); 109 start();
100} 110}
101 111
102/** 112/**
103 * Try to refresh the information about the interface. 113 * Try to refresh the information about the interface.
104 * First call ifconfig, then check the dhcp-info file 114 * First call ifconfig, then check the dhcp-info file
105 * @return bool true if successfull. 115 * @return bool true if successfull.
106 */ 116 */
107bool Interface::refresh(){ 117bool Interface::refresh(){
108 // See if we are up. 118 // See if we are up.
109 if(status == false){ 119 if(status == false){
110 macAddress = ""; 120 macAddress = "";
111 ip = "0.0.0.0"; 121 ip = "0.0.0.0";
112 subnetMask = "0.0.0.0"; 122 subnetMask = "0.0.0.0";
113 broadcast = ""; 123 broadcast = "";
114 dhcp = false; 124 dhcp = false;
115 dhcpServerIp = ""; 125 dhcpServerIp = "";
diff --git a/noncore/settings/networksettings/interfaces/interface.h b/noncore/settings/networksettings/interfaces/interface.h
index dc9c6d3..fc064fe 100644
--- a/noncore/settings/networksettings/interfaces/interface.h
+++ b/noncore/settings/networksettings/interfaces/interface.h
@@ -1,38 +1,39 @@
1#ifndef INTERFACE_H 1#ifndef INTERFACE_H
2#define INTERFACE_H 2#define INTERFACE_H
3 3
4#include <qstring.h> 4#include <qstring.h>
5#include <qobject.h> 5#include <qobject.h>
6 6
7class Module; 7class Module;
8 8
9class Interface : public QObject{ 9class Interface : public QObject{
10 Q_OBJECT 10 Q_OBJECT
11 11
12signals: 12signals:
13 void updateInterface(Interface *i); 13 void updateInterface(Interface *i);
14 14 void updateMessage(const QString &message);
15
15public: 16public:
16 Interface(QObject * parent=0, const char * name= "unknown", bool status = false); 17 Interface(QObject * parent=0, const char * name= "unknown", bool status = false);
17 virtual ~Interface(){}; 18 virtual ~Interface(){};
18 19
19 virtual QString getInterfaceName(){ QString n(this->name()); return n; }; 20 virtual QString getInterfaceName(){ QString n(this->name()); return n; };
20 21
21 virtual bool getStatus(){ return status; }; 22 virtual bool getStatus(){ return status; };
22 virtual void setStatus(bool newStatus); 23 virtual void setStatus(bool newStatus);
23 24
24 virtual bool isAttached(){ return attached; }; 25 virtual bool isAttached(){ return attached; };
25 virtual void setAttached(bool isAttached=false); 26 virtual void setAttached(bool isAttached=false);
26 27
27 virtual QString getHardwareName(){ return hardwareName; }; 28 virtual QString getHardwareName(){ return hardwareName; };
28 virtual void setHardwareName(QString name="Unknown"); 29 virtual void setHardwareName(QString name="Unknown");
29 30
30 virtual Module* getModuleOwner(){ return moduleOwner; }; 31 virtual Module* getModuleOwner(){ return moduleOwner; };
31 virtual void setModuleOwner(Module *owner=NULL); 32 virtual void setModuleOwner(Module *owner=NULL);
32 33
33 // inet information. 34 // inet information.
34 QString getMacAddress(){ return macAddress; }; 35 QString getMacAddress(){ return macAddress; };
35 QString getIp(){ return ip; }; 36 QString getIp(){ return ip; };
36 QString getSubnetMask(){ return subnetMask; }; 37 QString getSubnetMask(){ return subnetMask; };
37 QString getBroadcast(){ return broadcast; }; 38 QString getBroadcast(){ return broadcast; };
38 bool isDhcp(){ return dhcp; }; 39 bool isDhcp(){ return dhcp; };
diff --git a/noncore/settings/networksettings/interfaces/interfaceinformationimp.cpp b/noncore/settings/networksettings/interfaces/interfaceinformationimp.cpp
index 43483fb..39575c4 100644
--- a/noncore/settings/networksettings/interfaces/interfaceinformationimp.cpp
+++ b/noncore/settings/networksettings/interfaces/interfaceinformationimp.cpp
@@ -1,70 +1,81 @@
1#include "interfaceinformationimp.h" 1#include "interfaceinformationimp.h"
2#include "interfaceadvanced.h" 2#include "interfaceadvanced.h"
3 3
4#include <qpushbutton.h> 4#include <qpushbutton.h>
5#include <qlabel.h> 5#include <qlabel.h>
6#include <qgroupbox.h> 6#include <qgroupbox.h>
7#include <qmessagebox.h>
8
7#include <assert.h> 9#include <assert.h>
8 10
9/** 11/**
10 * Constructor for the InterfaceInformationImp class. This class pretty much 12 * Constructor for the InterfaceInformationImp class. This class pretty much
11 * just display's information about the interface that is passed to it. 13 * just display's information about the interface that is passed to it.
12 */ 14 */
13InterfaceInformationImp::InterfaceInformationImp(QWidget *parent, const char *name, Interface *i, WFlags f):InterfaceInformation(parent, name, f){ 15InterfaceInformationImp::InterfaceInformationImp(QWidget *parent, const char *name, Interface *i, WFlags f):InterfaceInformation(parent, name, f){
14 assert(i); 16 assert(i);
15 17
16 interface = i; 18 interface = i;
17 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *))); 19 connect(i, SIGNAL(updateInterface(Interface *)), this, SLOT(updateInterface(Interface *)));
20 connect(i, SIGNAL(updateMessage(const QString &)), this, SLOT(showMessage(const QString &)));
18 updateInterface(interface); 21 updateInterface(interface);
19 connect(startButton, SIGNAL(clicked()), interface, SLOT(start())); 22 connect(startButton, SIGNAL(clicked()), interface, SLOT(start()));
20 connect(stopButton, SIGNAL(clicked()), interface, SLOT(stop())); 23 connect(stopButton, SIGNAL(clicked()), interface, SLOT(stop()));
21 connect(restartButton, SIGNAL(clicked()), interface, SLOT(restart())); 24 connect(restartButton, SIGNAL(clicked()), interface, SLOT(restart()));
22 connect(refreshButton, SIGNAL(clicked()), interface, SLOT(refresh())); 25 connect(refreshButton, SIGNAL(clicked()), interface, SLOT(refresh()));
23 connect(advancedButton, SIGNAL(clicked()), this, SLOT(advanced())); 26 connect(advancedButton, SIGNAL(clicked()), this, SLOT(advanced()));
24
25} 27}
26 28
27/** 29/**
28 * Update the interface information and buttons. 30 * Update the interface information and buttons.
29 * @param Intarface *i the interface to update (should be the one we already 31 * @param Intarface *i the interface to update (should be the one we already
30 * know about). 32 * know about).
31 */ 33 */
32void InterfaceInformationImp::updateInterface(Interface *i){ 34void InterfaceInformationImp::updateInterface(Interface *i){
33 if(interface->getStatus()){ 35 if(interface->getStatus()){
34 startButton->setEnabled(false); 36 startButton->setEnabled(false);
35 stopButton->setEnabled(true); 37 stopButton->setEnabled(true);
36 restartButton->setEnabled(true); 38 restartButton->setEnabled(true);
37 } 39 }
38 else{ 40 else{
39 startButton->setEnabled(true); 41 startButton->setEnabled(true);
40 stopButton->setEnabled(false); 42 stopButton->setEnabled(false);
41 restartButton->setEnabled(false); 43 restartButton->setEnabled(false);
42 } 44 }
43 macAddressLabel->setText(interface->getMacAddress()); 45 macAddressLabel->setText(interface->getMacAddress());
44 ipAddressLabel->setText(interface->getIp()); 46 ipAddressLabel->setText(interface->getIp());
45 subnetMaskLabel->setText(interface->getSubnetMask()); 47 subnetMaskLabel->setText(interface->getSubnetMask());
46 broadcastLabel->setText(interface->getBroadcast()); 48 broadcastLabel->setText(interface->getBroadcast());
47} 49}
48 50
49/** 51/**
50 * Create the advanced widget. Fill it with the current interface's information. 52 * Create the advanced widget. Fill it with the current interface's information.
51 * Display it. 53 * Display it.
52 */ 54 */
53void InterfaceInformationImp::advanced(){ 55void InterfaceInformationImp::advanced(){
54 InterfaceAdvanced *a = new InterfaceAdvanced(0, "InterfaceAdvanced"); 56 InterfaceAdvanced *a = new InterfaceAdvanced(0, "InterfaceAdvanced");
55 a->interfaceName->setText(interface->getInterfaceName()); 57 a->interfaceName->setText(interface->getInterfaceName());
56 a->macAddressLabel->setText(interface->getMacAddress()); 58 a->macAddressLabel->setText(interface->getMacAddress());
57 a->ipAddressLabel->setText(interface->getIp()); 59 a->ipAddressLabel->setText(interface->getIp());
58 a->subnetMaskLabel->setText(interface->getSubnetMask()); 60 a->subnetMaskLabel->setText(interface->getSubnetMask());
59 a->broadcastLabel->setText(interface->getBroadcast()); 61 a->broadcastLabel->setText(interface->getBroadcast());
60 a->dhcpServerLabel->setText(interface->getDhcpServerIp()); 62 a->dhcpServerLabel->setText(interface->getDhcpServerIp());
61 a->leaseObtainedLabel->setText(interface->getLeaseObtained()); 63 a->leaseObtainedLabel->setText(interface->getLeaseObtained());
62 a->leaseExpiresLabel->setText(interface->getLeaseExpires()); 64 a->leaseExpiresLabel->setText(interface->getLeaseExpires());
63 a->dhcpInformation->setEnabled(interface->isDhcp()); 65 a->dhcpInformation->setEnabled(interface->isDhcp());
64 66
65 a->showMaximized(); 67 a->showMaximized();
66 a->show(); 68 a->show();
67} 69}
68 70
71/**
72 * Messages from the interface if start/stop went as planned.
73 * Purly for user feedback.
74 * @param message the message to display.
75 */
76void InterfaceInformationImp::showMessage(const QString &message){
77 QMessageBox::information(this, "Message", message, QMessageBox::Ok);
78}
79
69// infoimp.cpp 80// infoimp.cpp
70 81
diff --git a/noncore/settings/networksettings/interfaces/interfaceinformationimp.h b/noncore/settings/networksettings/interfaces/interfaceinformationimp.h
index 42213cc..65cdfe0 100644
--- a/noncore/settings/networksettings/interfaces/interfaceinformationimp.h
+++ b/noncore/settings/networksettings/interfaces/interfaceinformationimp.h
@@ -1,27 +1,28 @@
1#ifndef INTERFACEINFORMATIONIMP_H 1#ifndef INTERFACEINFORMATIONIMP_H
2#define INTERFACEINFORMATIONIMP_H 2#define INTERFACEINFORMATIONIMP_H
3 3
4#include "interfaceinformation.h" 4#include "interfaceinformation.h"
5#include "interface.h" 5#include "interface.h"
6 6
7class InterfaceInformationImp : public InterfaceInformation { 7class InterfaceInformationImp : public InterfaceInformation {
8 8
9Q_OBJECT 9Q_OBJECT
10 10
11public: 11public:
12 InterfaceInformationImp(QWidget *parent=0, const char *name=0, Interface *i=0, WFlags f=0); 12 InterfaceInformationImp(QWidget *parent=0, const char *name=0, Interface *i=0, WFlags f=0);
13 ~InterfaceInformationImp(){}; 13 ~InterfaceInformationImp(){};
14 14
15private slots: 15private slots:
16 void advanced(); 16 void advanced();
17 void updateInterface(Interface *i); 17 void updateInterface(Interface *i);
18 void showMessage(const QString &message);
18 19
19private: 20private:
20 Interface *interface; 21 Interface *interface;
21 22
22}; 23};
23 24
24#endif 25#endif
25 26
26// addserviceimp.h 27// addserviceimp.h
27 28
diff --git a/noncore/settings/networksettings/interfaces/interfaces.pro b/noncore/settings/networksettings/interfaces/interfaces.pro
index 9a024f6..d6b43fb 100644
--- a/noncore/settings/networksettings/interfaces/interfaces.pro
+++ b/noncore/settings/networksettings/interfaces/interfaces.pro
@@ -1,12 +1,12 @@
1TEMPLATE = lib 1TEMPLATE = lib
2CONFIG += qt warn_on release 2CONFIG += qt warn_on release
3 #CONFIG += qt warn_on debug 3 #CONFIG += qt warn_on debug
4 DESTDIR = $(QTDIR)/lib$(PROJMAK) 4 #DESTDIR = $(QTDIR)/lib$(PROJMAK)
5 HEADERS = interface.h interfaceinformationimp.h interfaces.h interfacesetupimp.h 5 HEADERS = interface.h interfaceinformationimp.h interfaces.h interfacesetupimp.h
6 SOURCES = interface.cpp interfaces.cpp interfaceinformationimp.cpp interfacesetupimp.cpp 6 SOURCES = interface.cpp interfaces.cpp interfaceinformationimp.cpp interfacesetupimp.cpp
7 INCLUDEPATH+= $(OPIEDIR)/include ../ 7 INCLUDEPATH+= $(OPIEDIR)/include ../
8 DEPENDPATH+= $(OPIEDIR)/include 8 DEPENDPATH+= $(OPIEDIR)/include
9LIBS += -lqpe 9LIBS += -lqpe
10 INTERFACES= interfaceadvanced.ui interfaceinformation.ui interfacesetup.ui 10 INTERFACES= interfaceadvanced.ui interfaceinformation.ui interfacesetup.ui
11 TARGET = interfaces 11 TARGET = interfaces
12 VERSION = 1.0.0 12 VERSION = 1.0.0