summaryrefslogtreecommitdiff
path: root/noncore/net/networksetup/mainwindowimp.cpp
Side-by-side diff
Diffstat (limited to 'noncore/net/networksetup/mainwindowimp.cpp') (more/less context) (show whitespace changes)
-rw-r--r--noncore/net/networksetup/mainwindowimp.cpp51
1 files changed, 42 insertions, 9 deletions
diff --git a/noncore/net/networksetup/mainwindowimp.cpp b/noncore/net/networksetup/mainwindowimp.cpp
index 0f48a4b..89dac6f 100644
--- a/noncore/net/networksetup/mainwindowimp.cpp
+++ b/noncore/net/networksetup/mainwindowimp.cpp
@@ -151,7 +151,7 @@ void MainWindowImp::removeClicked(){
return;
}
- if(modules.find(interfaceItems[item]) == modules.end()){
+ if((interfaceItems[item])->getModuleOwner() == NULL){
QMessageBox::information(this, "Can't remove interface.", "Interface is built in.", "Ok");
}
else{
@@ -171,15 +171,30 @@ void MainWindowImp::configureClicked(){
return;
}
- if(modules.find(interfaceItems[item]) == modules.end()){
+ if((interfaceItems[item])->getModuleOwner() == NULL){
InterfaceSetupImp *conf = new InterfaceSetupImp(0, "InterfaceConfiguration", interfaceItems[item]);
conf->showMaximized();
conf->show();
}
else{
- InterfaceSetupImp *conf = new InterfaceSetupImp(this, "InterfaceConfiguration");
+ QTabWidget *t = NULL;
+ QWidget *conf = (interfaceItems[item])->getModuleOwner()->configure(&t);
+ if(conf != NULL){
+ qDebug("Conf found");
+ if(t != NULL){
+ qDebug("Adding Interface");
+ InterfaceSetupImp *i = new InterfaceSetupImp(t, "TCPIPInformation", interfaceItems[item], true);
+ t->insertTab(i, "TCP/IP");
+ }
+ conf->showMaximized();
conf->show();
}
+ else{
+ InterfaceSetupImp *i = new InterfaceSetupImp(0, "TCPIPInformation", interfaceItems[item], true);
+ i->showMaximized();
+ i->show();
+ }
+ }
}
/**
@@ -193,16 +208,28 @@ void MainWindowImp::informationClicked(){
return;
}
- if(modules.find(interfaceItems[item]) == modules.end()){
+ if( (interfaceItems[item])->getModuleOwner() == NULL){
InterfaceInformationImp *i = new InterfaceInformationImp(0, "InterfaceInformationImp", interfaceItems[item]);
i->showMaximized();
i->show();
}
else{
- QTabWidget *t = new QTabWidget(this, "InterfaceInformationTAB");
+ QTabWidget *t = NULL;
+ QWidget *conf = (interfaceItems[item])->getModuleOwner()->information(&t);
+ if(conf != NULL){
+ if(t){
+ qDebug("Adding Interface");
InterfaceInformationImp *i = new InterfaceInformationImp(t, "TCPIPInformation", interfaceItems[item], true);
t->insertTab(i, "TCP/IP");
- t->show();
+ }
+ conf->showMaximized();
+ conf->show();
+ }
+ else{
+ InterfaceInformationImp *i = new InterfaceInformationImp(0, "TCPIPInformation", interfaceItems[item], true);
+ i->showMaximized();
+ i->show();
+ }
}
}
@@ -286,9 +313,11 @@ void MainWindowImp::updateInterface(Interface *i){
if(items.find(i) == items.end()){
item = new QListViewItem(serviceList, "", "", "");
// See if you can't find a module owner for this interface
- //EmployeeMap::Iterator it;
- //for( it = map.begin(); it != map.end(); ++it )
- // printf( "%s, %s earns %d\n", it.key().latin1(), it.data().name().latin1(), it.data().salary() );
+ QMap<Module*, QLibrary*>::Iterator it;
+ for( it = libraries.begin(); it != libraries.end(); ++it ){
+ if(it.key()->isOwner(i))
+ i->setModuleOwner(it.key());
+ }
items.insert(i, item);
interfaceItems.insert(item, i);
@@ -309,6 +338,10 @@ void MainWindowImp::updateInterface(Interface *i){
typeName = "irda";
if(i->getInterfaceName().contains("wlan"))
typeName = "wlan";
+ // Actually try to use the Module
+ if(i->getModuleOwner() != NULL){
+ typeName = i->getModuleOwner()->getPixmapName(i);
+ }
QPixmap type = (Resource::loadPixmap(typeName));
item->setPixmap(1, type);