author | tille <tille> | 2003-06-12 15:04:14 (UTC) |
---|---|---|
committer | tille <tille> | 2003-06-12 15:04:14 (UTC) |
commit | f0f9cf3fa486a577770e3c0e89280c66ea331e73 (patch) (unidiff) | |
tree | cdafae987efebf441b70a527a6e832333c1410e3 | |
parent | 65327026c2f26e28c76bf234f8b7943612b49b05 (diff) | |
download | opie-f0f9cf3fa486a577770e3c0e89280c66ea331e73.zip opie-f0f9cf3fa486a577770e3c0e89280c66ea331e73.tar.gz opie-f0f9cf3fa486a577770e3c0e89280c66ea331e73.tar.bz2 |
1st version of qcop call in oder to let wellenreiter copy the APs it found...
... and more later.
-rw-r--r-- | noncore/settings/networksettings/mainwindowimp.cpp | 44 | ||||
-rw-r--r-- | noncore/settings/networksettings/mainwindowimp.h | 140 | ||||
-rw-r--r-- | noncore/settings/networksettings/module.h | 12 | ||||
-rw-r--r-- | noncore/settings/networksettings/networksettings.pro | 5 | ||||
-rw-r--r-- | noncore/settings/networksettings/ppp/pppmodule.h | 2 | ||||
-rw-r--r-- | noncore/settings/networksettings/wlan/wlanmodule.cpp | 72 | ||||
-rw-r--r-- | noncore/settings/networksettings/wlan/wlanmodule.h | 3 |
7 files changed, 191 insertions, 87 deletions
diff --git a/noncore/settings/networksettings/mainwindowimp.cpp b/noncore/settings/networksettings/mainwindowimp.cpp index 4119490..0ef1e68 100644 --- a/noncore/settings/networksettings/mainwindowimp.cpp +++ b/noncore/settings/networksettings/mainwindowimp.cpp | |||
@@ -6,16 +6,17 @@ | |||
6 | #include "module.h" | 6 | #include "module.h" |
7 | 7 | ||
8 | #include <qpushbutton.h> | 8 | #include <qpushbutton.h> |
9 | #include <qlistbox.h> | 9 | #include <qlistbox.h> |
10 | #include <qlineedit.h> | 10 | #include <qlineedit.h> |
11 | #include <qlistview.h> | 11 | #include <qlistview.h> |
12 | #include <qheader.h> | 12 | #include <qheader.h> |
13 | #include <qlabel.h> | 13 | #include <qlabel.h> |
14 | #include <qpe/qcopenvelope_qws.h> | ||
14 | #include <qtabwidget.h> // in order to disable the profiles tab | 15 | #include <qtabwidget.h> // in order to disable the profiles tab |
15 | 16 | ||
16 | #include <qmessagebox.h> | 17 | #include <qmessagebox.h> |
17 | 18 | ||
18 | #ifdef QWS | 19 | #ifdef QWS |
19 | #include <qpe/config.h> | 20 | #include <qpe/config.h> |
20 | #include <qpe/qlibrary.h> | 21 | #include <qpe/qlibrary.h> |
21 | #include <qpe/resource.h> | 22 | #include <qpe/resource.h> |
@@ -56,17 +57,17 @@ MainWindowImp::MainWindowImp(QWidget *parent, const char *name) : MainWindow(par | |||
56 | 57 | ||
57 | connect(newProfileButton, SIGNAL(clicked()), this, SLOT(addProfile())); | 58 | connect(newProfileButton, SIGNAL(clicked()), this, SLOT(addProfile())); |
58 | connect(removeProfileButton, SIGNAL(clicked()), this, SLOT(removeProfile())); | 59 | connect(removeProfileButton, SIGNAL(clicked()), this, SLOT(removeProfile())); |
59 | connect(setCurrentProfileButton, SIGNAL(clicked()), this, SLOT(changeProfile())); | 60 | connect(setCurrentProfileButton, SIGNAL(clicked()), this, SLOT(changeProfile())); |
60 | 61 | ||
61 | connect(newProfile, SIGNAL(textChanged(const QString&)), this, SLOT(newProfileChanged(const QString&))); | 62 | connect(newProfile, SIGNAL(textChanged(const QString&)), this, SLOT(newProfileChanged(const QString&))); |
62 | 63 | ||
63 | //FIXME: disable profiles for the moment: | 64 | //FIXME: disable profiles for the moment: |
64 | tabWidget->setTabEnabled( tab, false ); | 65 | // tabWidget->setTabEnabled( tab, false ); |
65 | 66 | ||
66 | // Load connections. | 67 | // Load connections. |
67 | // /usr/local/kde/lib/libinterfaces.la | 68 | // /usr/local/kde/lib/libinterfaces.la |
68 | #ifdef QWS | 69 | #ifdef QWS |
69 | loadModules(QPEApplication::qpeDir() + "/plugins/networksettings"); | 70 | loadModules(QPEApplication::qpeDir() + "/plugins/networksettings"); |
70 | #else | 71 | #else |
71 | loader = KLibLoader::self(); | 72 | loader = KLibLoader::self(); |
72 | loadModules(QString("/usr/")+KStandardDirs::kde_default("lib")); | 73 | loadModules(QString("/usr/")+KStandardDirs::kde_default("lib")); |
@@ -114,16 +115,17 @@ MainWindowImp::MainWindowImp(QWidget *parent, const char *name) : MainWindow(par | |||
114 | if(line.contains("SCHEME")){ | 115 | if(line.contains("SCHEME")){ |
115 | line = line.mid(7, line.length()); | 116 | line = line.mid(7, line.length()); |
116 | currentProfileLabel->setText(line); | 117 | currentProfileLabel->setText(line); |
117 | break; | 118 | break; |
118 | } | 119 | } |
119 | } | 120 | } |
120 | file.close(); | 121 | file.close(); |
121 | } | 122 | } |
123 | makeChannel(); | ||
122 | } | 124 | } |
123 | 125 | ||
124 | /** | 126 | /** |
125 | * Deconstructor. Save profiles. Delete loaded libraries. | 127 | * Deconstructor. Save profiles. Delete loaded libraries. |
126 | */ | 128 | */ |
127 | MainWindowImp::~MainWindowImp(){ | 129 | MainWindowImp::~MainWindowImp(){ |
128 | // Save profiles. | 130 | // Save profiles. |
129 | Config cfg("NetworkSetup"); | 131 | Config cfg("NetworkSetup"); |
@@ -188,17 +190,18 @@ void MainWindowImp::getAllInterfaces(){ | |||
188 | while((line = procTs.readLine().simplifyWhiteSpace()) != QString::null) { | 190 | while((line = procTs.readLine().simplifyWhiteSpace()) != QString::null) { |
189 | if((loc = line.find(":")) != -1) { | 191 | if((loc = line.find(":")) != -1) { |
190 | ifaces += line.left(loc); | 192 | ifaces += line.left(loc); |
191 | } | 193 | } |
192 | } | 194 | } |
193 | } | 195 | } |
194 | 196 | ||
195 | for (QStringList::Iterator it = ifaces.begin(); it != ifaces.end(); ++it) { | 197 | for (QStringList::Iterator it = ifaces.begin(); it != ifaces.end(); ++it) { |
196 | int flags = 0, family; | 198 | int flags = 0; |
199 | // int family; | ||
197 | i = NULL; | 200 | i = NULL; |
198 | 201 | ||
199 | strcpy(ifr.ifr_name, (*it).latin1()); | 202 | strcpy(ifr.ifr_name, (*it).latin1()); |
200 | 203 | ||
201 | struct ifreq ifcopy; | 204 | struct ifreq ifcopy; |
202 | ifcopy = ifr; | 205 | ifcopy = ifr; |
203 | result = ioctl(sockfd, SIOCGIFFLAGS, &ifcopy); | 206 | result = ioctl(sockfd, SIOCGIFFLAGS, &ifcopy); |
204 | flags = ifcopy.ifr_flags; | 207 | flags = ifcopy.ifr_flags; |
@@ -619,8 +622,45 @@ void MainWindowImp::changeProfile(){ | |||
619 | if(it.key()->getStatus() == true) | 622 | if(it.key()->getStatus() == true) |
620 | it.key()->restart(); | 623 | it.key()->restart(); |
621 | } | 624 | } |
622 | } | 625 | } |
623 | } | 626 | } |
624 | // TODO change the profile in the modules | 627 | // TODO change the profile in the modules |
625 | } | 628 | } |
626 | 629 | ||
630 | |||
631 | void MainWindowImp::makeChannel() | ||
632 | { | ||
633 | channel = new QCopChannel( "QPE/Application/networksettings", this ); | ||
634 | connect( channel, SIGNAL(received(const QCString&, const QByteArray&)), | ||
635 | this, SLOT(receive(const QCString&, const QByteArray&)) ); | ||
636 | } | ||
637 | |||
638 | void MainWindowImp::receive(const QCString &msg, const QByteArray &arg) | ||
639 | { | ||
640 | bool found = false; | ||
641 | qDebug("MainWindowImp::receive QCop msg >"+msg+"<"); | ||
642 | |||
643 | QString dest = msg.left(msg.find("(")); | ||
644 | QCString param = msg.right(msg.length() - msg.find("(") - 1); | ||
645 | param = param.left( param.length() - 1 ); | ||
646 | qDebug("dest >%s< param >"+param+"<",dest.latin1()); | ||
647 | |||
648 | // if (param.contains("QString,QString,QString")) { | ||
649 | // QDataStream stream(arg,IO_ReadOnly); | ||
650 | // QString arg1, arg2, arg3; | ||
651 | // stream >> arg1 >> arg2 >> arg3 ; | ||
652 | // qDebug("args: >%s< >%s< >%s<",arg1.latin1(),arg2.latin1(),arg3.latin1()); | ||
653 | // } | ||
654 | |||
655 | QMap<Module*, QLibrary*>::Iterator it; | ||
656 | for( it = libraries.begin(); it != libraries.end(); ++it ){ | ||
657 | qDebug("plugin >%s<", it.key()->type().latin1() ); | ||
658 | if(it.key()->type() == dest){ | ||
659 | it.key()->receive( param, arg ); | ||
660 | found = true; | ||
661 | } | ||
662 | } | ||
663 | |||
664 | |||
665 | if (!found) qDebug("Huh what do ya want"); | ||
666 | } | ||
diff --git a/noncore/settings/networksettings/mainwindowimp.h b/noncore/settings/networksettings/mainwindowimp.h index c045fe6..a553f75 100644 --- a/noncore/settings/networksettings/mainwindowimp.h +++ b/noncore/settings/networksettings/mainwindowimp.h | |||
@@ -1,67 +1,73 @@ | |||
1 | #ifndef MAINWINOWIMP_H | 1 | #ifndef MAINWINOWIMP_H |
2 | #define MAINWINOWIMP_H | 2 | #define MAINWINOWIMP_H |
3 | 3 | ||
4 | #include "mainwindow.h" | 4 | #include "mainwindow.h" |
5 | #include <qmap.h> | 5 | #include <qmap.h> |
6 | #include <qstringlist.h> | 6 | #include <qstringlist.h> |
7 | 7 | ||
8 | class Module; | 8 | class Module; |
9 | class Interface; | 9 | class Interface; |
10 | class QLibrary; | 10 | class QLibrary; |
11 | class KProcess; | 11 | class KProcess; |
12 | #ifdef QWS | 12 | class QCopChannel; |
13 | class QLibrary; | 13 | #ifdef QWS |
14 | #else | 14 | class QLibrary; |
15 | class KLibrary; | 15 | #else |
16 | class KLibLoader; | 16 | class KLibrary; |
17 | #define QLibrary KLibrary | 17 | class KLibLoader; |
18 | #endif | 18 | #define QLibrary KLibrary |
19 | 19 | #endif | |
20 | 20 | ||
21 | class MainWindowImp : public MainWindow { | 21 | |
22 | Q_OBJECT | 22 | class MainWindowImp : public MainWindow { |
23 | 23 | Q_OBJECT | |
24 | public: | 24 | |
25 | MainWindowImp(QWidget *parent=0, const char *name=0); | 25 | public: |
26 | ~MainWindowImp(); | 26 | MainWindowImp(QWidget *parent=0, const char *name=0); |
27 | 27 | ~MainWindowImp(); | |
28 | private slots: | 28 | |
29 | void getAllInterfaces(); | 29 | QCopChannel *channel; |
30 | 30 | ||
31 | void addClicked(); | 31 | private slots: |
32 | void removeClicked(); | 32 | void getAllInterfaces(); |
33 | void configureClicked(); | 33 | |
34 | void informationClicked(); | 34 | void addClicked(); |
35 | 35 | void removeClicked(); | |
36 | void addProfile(); | 36 | void configureClicked(); |
37 | void removeProfile(); | 37 | void informationClicked(); |
38 | void changeProfile(); | 38 | |
39 | 39 | void addProfile(); | |
40 | void updateInterface(Interface *i); | 40 | void removeProfile(); |
41 | void newProfileChanged(const QString& newText); | 41 | void changeProfile(); |
42 | 42 | ||
43 | private: | 43 | void updateInterface(Interface *i); |
44 | void loadModules(const QString &path); | 44 | void newProfileChanged(const QString& newText); |
45 | 45 | ||
46 | Module* loadPlugin(const QString &pluginFileName, | 46 | void receive (const QCString &, const QByteArray &); |
47 | const QString &resolveString = "create_plugin"); | 47 | |
48 | 48 | private: | |
49 | // For our local list of names | 49 | void makeChannel(); |
50 | QMap<QString, Interface*> interfaceNames; | 50 | void loadModules(const QString &path); |
51 | 51 | ||
52 | QMap<Module*, QLibrary*> libraries; | 52 | Module* loadPlugin(const QString &pluginFileName, |
53 | QMap<Interface*, QListViewItem*> items; | 53 | const QString &resolveString = "create_plugin"); |
54 | QMap<QListViewItem*, Interface*> interfaceItems; | 54 | |
55 | 55 | // For our local list of names | |
56 | QMap<KProcess*, QString> threads; | 56 | QMap<QString, Interface*> interfaceNames; |
57 | QStringList profiles; | 57 | |
58 | 58 | QMap<Module*, QLibrary*> libraries; | |
59 | bool advancedUserMode; | 59 | QMap<Interface*, QListViewItem*> items; |
60 | QString scheme; | 60 | QMap<QListViewItem*, Interface*> interfaceItems; |
61 | #ifndef QWS | 61 | |
62 | KLibLoader *loader; | 62 | QMap<KProcess*, QString> threads; |
63 | #endif | 63 | QStringList profiles; |
64 | }; | 64 | |
65 | 65 | bool advancedUserMode; | |
66 | #endif // MAINWINOWIMP_H | 66 | QString scheme; |
67 | 67 | #ifndef QWS | |
68 | KLibLoader *loader; | ||
69 | #endif | ||
70 | }; | ||
71 | |||
72 | #endif // MAINWINOWIMP_H | ||
73 | |||
diff --git a/noncore/settings/networksettings/module.h b/noncore/settings/networksettings/module.h index 46a3c77..db74394 100644 --- a/noncore/settings/networksettings/module.h +++ b/noncore/settings/networksettings/module.h | |||
@@ -12,21 +12,28 @@ | |||
12 | 12 | ||
13 | class QWidget; | 13 | class QWidget; |
14 | class QTabWidget; | 14 | class QTabWidget; |
15 | 15 | ||
16 | class Module : QObject{ | 16 | class Module : QObject{ |
17 | 17 | ||
18 | signals: | 18 | signals: |
19 | void updateInterface(Interface *i); | 19 | void updateInterface(Interface *i); |
20 | |||
20 | 21 | ||
21 | public: | 22 | public: |
22 | Module(){}; | 23 | Module(){}; |
23 | 24 | ||
24 | /** | 25 | /** |
26 | * The type of the plugin | ||
27 | * and the name of the dcop call | ||
28 | */ | ||
29 | virtual const QString type() = 0; | ||
30 | |||
31 | /** | ||
25 | * The current profile has been changed and the module should do any | 32 | * The current profile has been changed and the module should do any |
26 | * neccesary changes also. | 33 | * neccesary changes also. |
27 | * @param newProfile what the profile should be changed to. | 34 | * @param newProfile what the profile should be changed to. |
28 | */ | 35 | */ |
29 | virtual void setProfile(const QString &newProfile) = 0; | 36 | virtual void setProfile(const QString &newProfile) = 0; |
30 | 37 | ||
31 | /** | 38 | /** |
32 | * get the icon name for this device. | 39 | * get the icon name for this device. |
@@ -77,14 +84,19 @@ public: | |||
77 | virtual Interface *addNewInterface(const QString &name) = 0; | 84 | virtual Interface *addNewInterface(const QString &name) = 0; |
78 | 85 | ||
79 | /** | 86 | /** |
80 | * Attempts to remove the interface, doesn't delete i | 87 | * Attempts to remove the interface, doesn't delete i |
81 | * @return bool true if successfull, false otherwise. | 88 | * @return bool true if successfull, false otherwise. |
82 | */ | 89 | */ |
83 | virtual bool remove(Interface* i) = 0; | 90 | virtual bool remove(Interface* i) = 0; |
84 | 91 | ||
92 | /** | ||
93 | * get dcop calls | ||
94 | */ | ||
95 | virtual void receive(const QCString &msg, const QByteArray &arg) = 0; | ||
96 | |||
85 | }; | 97 | }; |
86 | 98 | ||
87 | #endif | 99 | #endif |
88 | 100 | ||
89 | // module.h | 101 | // module.h |
90 | 102 | ||
diff --git a/noncore/settings/networksettings/networksettings.pro b/noncore/settings/networksettings/networksettings.pro index 875c68e..cdd133a 100644 --- a/noncore/settings/networksettings/networksettings.pro +++ b/noncore/settings/networksettings/networksettings.pro | |||
@@ -1,12 +1,13 @@ | |||
1 | DESTDIR = $(OPIEDIR)/bin | 1 | DESTDIR = $(OPIEDIR)/bin |
2 | TEMPLATE = app | 2 | TEMPLATE = app |
3 | #CONFIG = qt warn_on debug | 3 | # |
4 | CONFIG = qt warn_on release | 4 | CONFIG = qt warn_on debug |
5 | #CONFIG = qt warn_on release | ||
5 | HEADERS = mainwindowimp.h addconnectionimp.h defaultmodule.h module.h | 6 | HEADERS = mainwindowimp.h addconnectionimp.h defaultmodule.h module.h |
6 | SOURCES = main.cpp mainwindowimp.cpp addconnectionimp.cpp | 7 | SOURCES = main.cpp mainwindowimp.cpp addconnectionimp.cpp |
7 | INCLUDEPATH += $(OPIEDIR)/include interfaces/ | 8 | INCLUDEPATH += $(OPIEDIR)/include interfaces/ |
8 | DEPENDPATH += $(OPIEDIR)/include interfaces/ wlan/ | 9 | DEPENDPATH += $(OPIEDIR)/include interfaces/ wlan/ |
9 | LIBS += -lqpe -L$(OPIEDIR)/plugins/networksettings -Linterfaces/ -linterfaces -lopie | 10 | LIBS += -lqpe -L$(OPIEDIR)/plugins/networksettings -Linterfaces/ -linterfaces -lopie |
10 | INTERFACES = mainwindow.ui addconnection.ui | 11 | INTERFACES = mainwindow.ui addconnection.ui |
11 | TARGET = networksettings | 12 | TARGET = networksettings |
12 | 13 | ||
diff --git a/noncore/settings/networksettings/ppp/pppmodule.h b/noncore/settings/networksettings/ppp/pppmodule.h index 6464f87..de649e4 100644 --- a/noncore/settings/networksettings/ppp/pppmodule.h +++ b/noncore/settings/networksettings/ppp/pppmodule.h | |||
@@ -7,25 +7,27 @@ class PPPModule : Module { | |||
7 | 7 | ||
8 | signals: | 8 | signals: |
9 | void updateInterface(Interface *i); | 9 | void updateInterface(Interface *i); |
10 | 10 | ||
11 | public: | 11 | public: |
12 | PPPModule(); | 12 | PPPModule(); |
13 | ~PPPModule(); | 13 | ~PPPModule(); |
14 | 14 | ||
15 | virtual const QString type() {return "ppp";}; | ||
15 | virtual void setProfile(const QString &newProfile); | 16 | virtual void setProfile(const QString &newProfile); |
16 | virtual bool isOwner(Interface *); | 17 | virtual bool isOwner(Interface *); |
17 | virtual QWidget *configure(Interface *i); | 18 | virtual QWidget *configure(Interface *i); |
18 | virtual QWidget *information(Interface *i); | 19 | virtual QWidget *information(Interface *i); |
19 | virtual QList<Interface> getInterfaces(); | 20 | virtual QList<Interface> getInterfaces(); |
20 | virtual void possibleNewInterfaces(QMap<QString, QString> &); | 21 | virtual void possibleNewInterfaces(QMap<QString, QString> &); |
21 | virtual Interface *addNewInterface(const QString &name); | 22 | virtual Interface *addNewInterface(const QString &name); |
22 | virtual bool remove(Interface* i); | 23 | virtual bool remove(Interface* i); |
23 | virtual QString getPixmapName(Interface* i); | 24 | virtual QString getPixmapName(Interface* i); |
25 | virtual void receive(const QCString &msg, const QByteArray &arg) {}; | ||
24 | 26 | ||
25 | private: | 27 | private: |
26 | QList<Interface> list; | 28 | QList<Interface> list; |
27 | QString profile; | 29 | QString profile; |
28 | 30 | ||
29 | }; | 31 | }; |
30 | 32 | ||
31 | extern "C" | 33 | extern "C" |
diff --git a/noncore/settings/networksettings/wlan/wlanmodule.cpp b/noncore/settings/networksettings/wlan/wlanmodule.cpp index 3979e60..3c988d5 100644 --- a/noncore/settings/networksettings/wlan/wlanmodule.cpp +++ b/noncore/settings/networksettings/wlan/wlanmodule.cpp | |||
@@ -5,79 +5,79 @@ | |||
5 | #include "interfaceinformationimp.h" | 5 | #include "interfaceinformationimp.h" |
6 | 6 | ||
7 | #include <qlabel.h> | 7 | #include <qlabel.h> |
8 | #include <qprogressbar.h> | 8 | #include <qprogressbar.h> |
9 | #include <qtabwidget.h> | 9 | #include <qtabwidget.h> |
10 | 10 | ||
11 | /** | 11 | /** |
12 | * Constructor, find all of the possible interfaces | 12 | * Constructor, find all of the possible interfaces |
13 | */ | 13 | */ |
14 | WLANModule::WLANModule() : Module() { | 14 | WLANModule::WLANModule() : Module() { |
15 | } | 15 | } |
16 | 16 | ||
17 | /** | 17 | /** |
18 | * Delete any interfaces that we own. | 18 | * Delete any interfaces that we own. |
19 | */ | 19 | */ |
20 | WLANModule::~WLANModule(){ | 20 | WLANModule::~WLANModule(){ |
21 | Interface *i; | 21 | Interface *i; |
22 | for ( i=list.first(); i != 0; i=list.next() ) | 22 | for ( i=list.first(); i != 0; i=list.next() ) |
23 | delete i; | 23 | delete i; |
24 | } | 24 | } |
25 | 25 | ||
26 | /** | 26 | /** |
27 | * Change the current profile | 27 | * Change the current profile |
28 | */ | 28 | */ |
29 | void WLANModule::setProfile(const QString &newProfile){ | 29 | void WLANModule::setProfile(const QString &newProfile){ |
30 | profile = newProfile; | 30 | profile = newProfile; |
31 | } | 31 | } |
32 | 32 | ||
33 | /** | 33 | /** |
34 | * get the icon name for this device. | 34 | * get the icon name for this device. |
35 | * @param Interface* can be used in determining the icon. | 35 | * @param Interface* can be used in determining the icon. |
36 | * @return QString the icon name (minus .png, .gif etc) | 36 | * @return QString the icon name (minus .png, .gif etc) |
37 | */ | 37 | */ |
38 | QString WLANModule::getPixmapName(Interface* ){ | 38 | QString WLANModule::getPixmapName(Interface* ){ |
39 | return "wlan"; | 39 | return "wlan"; |
40 | } | 40 | } |
41 | 41 | ||
42 | /** | 42 | /** |
43 | * Check to see if the interface i is owned by this module. | 43 | * Check to see if the interface i is owned by this module. |
44 | * @param Interface* interface to check against | 44 | * @param Interface* interface to check against |
45 | * @return bool true if i is owned by this module, false otherwise. | 45 | * @return bool true if i is owned by this module, false otherwise. |
46 | */ | 46 | */ |
47 | bool WLANModule::isOwner(Interface *i){ | 47 | bool WLANModule::isOwner(Interface *i){ |
48 | WExtensions we(i->getInterfaceName()); | 48 | WExtensions we(i->getInterfaceName()); |
49 | if(!we.doesHaveWirelessExtensions()) | 49 | if(!we.doesHaveWirelessExtensions()) |
50 | return false; | 50 | return false; |
51 | 51 | ||
52 | i->setHardwareName("802.11b"); | 52 | i->setHardwareName("802.11b"); |
53 | list.append(i); | 53 | list.append(i); |
54 | return true; | 54 | return true; |
55 | } | 55 | } |
56 | 56 | ||
57 | /** | 57 | /** |
58 | * Create, and return the WLANConfigure Module | 58 | * Create, and return the WLANConfigure Module |
59 | * @return QWidget* pointer to this modules configure. | 59 | * @return QWidget* pointer to this modules configure. |
60 | */ | 60 | */ |
61 | QWidget *WLANModule::configure(Interface *i){ | 61 | QWidget *WLANModule::configure(Interface *i){ |
62 | WLANImp *wlanconfig = new WLANImp(0, "WlanConfig", i, false, Qt::WDestructiveClose); | 62 | WLANImp *wlanconfig = new WLANImp(0, "WlanConfig", i, false, Qt::WDestructiveClose); |
63 | wlanconfig->setProfile(profile); | 63 | wlanconfig->setProfile(profile); |
64 | return wlanconfig; | 64 | return wlanconfig; |
65 | } | 65 | } |
66 | 66 | ||
67 | /** | 67 | /** |
68 | * Create, and return the Information Module | 68 | * Create, and return the Information Module |
69 | * @return QWidget* pointer to this modules info. | 69 | * @return QWidget* pointer to this modules info. |
70 | */ | 70 | */ |
71 | QWidget *WLANModule::information(Interface *i){ | 71 | QWidget *WLANModule::information(Interface *i){ |
72 | WExtensions we(i->getInterfaceName()); | 72 | WExtensions we(i->getInterfaceName()); |
73 | if(!we.doesHaveWirelessExtensions()) | 73 | if(!we.doesHaveWirelessExtensions()) |
74 | return NULL; | 74 | return NULL; |
75 | 75 | ||
76 | WlanInfoImp *info = new WlanInfoImp(0, i->getInterfaceName(), Qt::WDestructiveClose); | 76 | WlanInfoImp *info = new WlanInfoImp(0, i->getInterfaceName(), Qt::WDestructiveClose); |
77 | InterfaceInformationImp *information = new InterfaceInformationImp(info->tabWidget, "InterfaceSetupImp", i); | 77 | InterfaceInformationImp *information = new InterfaceInformationImp(info->tabWidget, "InterfaceSetupImp", i); |
78 | info->tabWidget->insertTab(information, "TCP/IP"); | 78 | info->tabWidget->insertTab(information, "TCP/IP"); |
79 | return info; | 79 | return info; |
80 | } | 80 | } |
81 | 81 | ||
82 | /** | 82 | /** |
83 | * Get all active (up or down) interfaces | 83 | * Get all active (up or down) interfaces |
@@ -88,26 +88,66 @@ QList<Interface> WLANModule::getInterfaces(){ | |||
88 | return list; | 88 | return list; |
89 | } | 89 | } |
90 | 90 | ||
91 | /** | 91 | /** |
92 | * Attempt to add a new interface as defined by name | 92 | * Attempt to add a new interface as defined by name |
93 | * @param name the name of the type of interface that should be created given | 93 | * @param name the name of the type of interface that should be created given |
94 | * by possibleNewInterfaces(); | 94 | * by possibleNewInterfaces(); |
95 | * @return Interface* NULL if it was unable to be created. | 95 | * @return Interface* NULL if it was unable to be created. |
96 | */ | 96 | */ |
97 | Interface *WLANModule::addNewInterface(const QString &){ | 97 | Interface *WLANModule::addNewInterface(const QString &){ |
98 | // We can't add a 802.11 interface, either the hardware will be there | 98 | // We can't add a 802.11 interface, either the hardware will be there |
99 | // or it wont. | 99 | // or it wont. |
100 | return NULL; | 100 | return NULL; |
101 | } | 101 | } |
102 | 102 | ||
103 | /** | 103 | /** |
104 | * Attempts to remove the interface, doesn't delete i | 104 | * Attempts to remove the interface, doesn't delete i |
105 | * @return bool true if successfull, false otherwise. | 105 | * @return bool true if successfull, false otherwise. |
106 | */ | 106 | */ |
107 | bool WLANModule::remove(Interface*){ | 107 | bool WLANModule::remove(Interface*){ |
108 | // Can't remove a hardware device, you can stop it though. | 108 | // Can't remove a hardware device, you can stop it though. |
109 | return false; | 109 | return false; |
110 | } | 110 | } |
111 | 111 | ||
112 | // wlanmodule.cpp | 112 | void WLANModule::receive(const QCString ¶m, const QByteArray &arg) |
113 | { | ||
114 | qDebug("WLANModule::receive "+param); | ||
115 | QStringList params = QStringList::split(",",param); | ||
116 | int count = params.count(); | ||
117 | qDebug("got %i params", count ); | ||
118 | if (count < 2){ | ||
119 | qDebug("Erorr less than 2 parameter"); | ||
120 | qDebug("RETURNING"); | ||
121 | return; | ||
122 | } | ||
123 | |||
124 | QDataStream stream(arg,IO_ReadOnly); | ||
125 | QString interface; | ||
126 | QString action; | ||
127 | |||
128 | stream >> interface; | ||
129 | stream >> action; | ||
130 | qDebug("got interface %s and acion %s", interface.latin1(), action.latin1()); | ||
131 | |||
132 | if (count == 2){ | ||
133 | // those should call the interface | ||
134 | if ( action.contains("start" ) ){ | ||
135 | qDebug("starting %s not yet implemented",interface.latin1()); | ||
136 | } else if ( action.contains("restart" ) ){ | ||
137 | qDebug("restarting %s not yet implemented",interface.latin1()); | ||
138 | } else if ( action.contains("stop" ) ){ | ||
139 | qDebug("stopping %s not yet implemented",interface.latin1()); | ||
140 | } | ||
141 | }else if (count == 3){ | ||
142 | QString value; | ||
143 | stream >> value; | ||
144 | qDebug("setting %s of %s to %s", action.latin1(), interface.latin1(), value.latin1() ); | ||
145 | } | ||
146 | // if (param.contains("QString,QString,QString")) { | ||
147 | // QDataStream stream(arg,IO_ReadOnly); | ||
148 | // QString arg1, arg2, arg3; | ||
149 | // stream >> arg1 >> arg2 >> arg3 ; | ||
150 | // qDebug("interface >%s< setting >%s< value >%s<",arg1.latin1(),arg2.latin1(),arg3.latin1()); | ||
151 | // } | ||
152 | } | ||
113 | 153 | ||
diff --git a/noncore/settings/networksettings/wlan/wlanmodule.h b/noncore/settings/networksettings/wlan/wlanmodule.h index 3a54de6..a617a90 100644 --- a/noncore/settings/networksettings/wlan/wlanmodule.h +++ b/noncore/settings/networksettings/wlan/wlanmodule.h | |||
@@ -7,25 +7,28 @@ class WLANModule : Module{ | |||
7 | 7 | ||
8 | signals: | 8 | signals: |
9 | void updateInterface(Interface *i); | 9 | void updateInterface(Interface *i); |
10 | 10 | ||
11 | public: | 11 | public: |
12 | WLANModule(); | 12 | WLANModule(); |
13 | ~WLANModule(); | 13 | ~WLANModule(); |
14 | 14 | ||
15 | |||
16 | virtual const QString type() {return "wlan";}; | ||
15 | void setProfile(const QString &newProfile); | 17 | void setProfile(const QString &newProfile); |
16 | bool isOwner(Interface *); | 18 | bool isOwner(Interface *); |
17 | QWidget *configure(Interface *i); | 19 | QWidget *configure(Interface *i); |
18 | QWidget *information(Interface *i); | 20 | QWidget *information(Interface *i); |
19 | QList<Interface> getInterfaces(); | 21 | QList<Interface> getInterfaces(); |
20 | void possibleNewInterfaces(QMap<QString, QString> &){}; | 22 | void possibleNewInterfaces(QMap<QString, QString> &){}; |
21 | Interface *addNewInterface(const QString &name); | 23 | Interface *addNewInterface(const QString &name); |
22 | bool remove(Interface* i); | 24 | bool remove(Interface* i); |
23 | QString getPixmapName(Interface* i); | 25 | QString getPixmapName(Interface* i); |
26 | virtual void receive(const QCString&, const QByteArray&); | ||
24 | 27 | ||
25 | private: | 28 | private: |
26 | QList<Interface> list; | 29 | QList<Interface> list; |
27 | QString profile; | 30 | QString profile; |
28 | 31 | ||
29 | }; | 32 | }; |
30 | 33 | ||
31 | extern "C" | 34 | extern "C" |