[PC-BSD Commits] r118 - in pcbsd/trunk: NetworkManager NetworkTray ethernetconfig/src wificonfig

svn at pcbsd.org svn at pcbsd.org
Wed Mar 7 10:56:01 PST 2007


Author: kris
Date: 2007-03-07 19:56:00 +0100 (Wed, 07 Mar 2007)
New Revision: 118

Modified:
   pcbsd/trunk/NetworkManager/networkman.ui.h
   pcbsd/trunk/NetworkTray/NetworkTray.cpp
   pcbsd/trunk/NetworkTray/NetworkTray.h
   pcbsd/trunk/ethernetconfig/src/ethernetconfig.cpp
   pcbsd/trunk/ethernetconfig/src/ethernetconfig.h
   pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.cpp
   pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.h
   pcbsd/trunk/ethernetconfig/src/ethernetconfigwidgetbase.ui
   pcbsd/trunk/ethernetconfig/src/main.cpp
   pcbsd/trunk/wificonfig/main.cpp
   pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui
   pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui.h
Log:
Updates for Network Manager, adds "info" tabs, and fixes some bugs reported by charles recently. 

Modified: pcbsd/trunk/NetworkManager/networkman.ui.h
===================================================================
--- pcbsd/trunk/NetworkManager/networkman.ui.h	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/NetworkManager/networkman.ui.h	2007-03-07 18:56:00 UTC (rev 118)
@@ -18,6 +18,7 @@
     // Let the list box know to add new devices
     firstUpdate = 0;
     
+    // Get the username we're running under
     username = QString::fromLocal8Bit(getenv("LOGNAME"));
         
     connect(listNetDev, SIGNAL(selectionChanged()), this, SLOT(DevSelectionChanged()) );
@@ -55,7 +56,7 @@
     
         GetDevList = new QProcess( this );
         GetDevList->addArgument( "ifconfig" );
-        GetDevList->addArgument( "-lu" );	
+        GetDevList->addArgument( "-l" );	
         connect( GetDevList, SIGNAL(readyReadStdout()), this, SLOT(readDetectDev() ) );
         connect( GetDevList, SIGNAL(processExited()), this, SLOT(slotTimerRefresh() ) );	   
          if ( !GetDevList->start() ) {
@@ -86,7 +87,7 @@
 	    
 	    Buffer.remove(0, Buffer.find(" ") +1);
 	    
-	    if ( Devs[i].find("lo0") == -1 )
+	    if ( Devs[i].find("lo0") == -1 && Devs[i].find("fwe") == -1 && Devs[i].find("plip") == -1 && Devs[i].find("pfsync") == -1 && Devs[i].find("pflog") == -1)
 	    {		
 		qDebug("Found device: " + Devs[i]);
 		// Determine if its a wireless or wired device
@@ -829,7 +830,7 @@
 	saveValue("/etc/rc.conf", "ipv6_enable=", "ipv6_enable=\"YES\"", -1);
 	saveValue("/etc/rc.conf", "ipv6_defaultrouter=", "ipv6_defaultrouter=\"" + lineIPv6Gateway->text() + "\"", -1);
     } else {
-	saveValue("/etc/rc.conf", "ipv6_enable=", "ipv6_enable=\"NO\"", -1);
+	saveValue("/etc/rc.conf", "ipv6_enable=", "", -1);
 	saveValue("/etc/rc.conf", "ipv6_defaultrouter=", "", -1);
     }
    
@@ -1031,7 +1032,7 @@
 {
 	// Update the ppp.conf file to remove any old profile
 	updatePPPconf();
-	saveValue( "/etc/rc.conf", "ppp_enable", "ppp_enable=\"NO\"", -1);
+	saveValue( "/etc/rc.conf", "ppp_enable", "", -1);
 }
 
 
@@ -1067,8 +1068,10 @@
     if ( currentItem != -1 ) {
 	  popup = new KPopupMenu();
 	  popup->insertItem( tr("Configure ") + Devs[currentItem], this, SLOT(PropertiesSlot()));
-	  popup->insertItem( tr("Enable device (up) "), this, SLOT(slotEnableDevice()));
-	  popup->insertItem( tr("Disable device (down)"), this, SLOT(slotDisableDevice()));
+	  popup->insertItem( tr("Device Information"), this, SLOT(slotShowInfoConfig()));
+	  popup->insertSeparator();
+	  popup->insertItem( tr("Enable device"), this, SLOT(slotEnableDevice()));
+	  popup->insertItem( tr("Disable device"), this, SLOT(slotDisableDevice()));
                 popup->insertSeparator();
                 popup->insertItem( tr("Restart the Network"), this, SLOT(restartNetwork()));
 	  popup->exec( QCursor::pos() );
@@ -1096,3 +1099,38 @@
 	runCommand("ifconfig " + Devs[currentItem] + " up");		
     }	
 }
+
+
+void NetworkMan::slotShowInfoConfig()
+{
+ workingDev = listNetDev->currentItem();
+    
+    if ( workingDev != -1) {
+    
+    if ( DevsType[workingDev] == "Wireless" )
+    {
+	    ConfigDevice = new QProcess( this );
+	    ConfigDevice->addArgument( "/PCBSD/networkmanager/bin/wificonfig");
+	    ConfigDevice->addArgument( "info");
+	    ConfigDevice->addArgument( Devs[workingDev] );
+    
+	    //connect( ConfigDevice, SIGNAL(processExited()), this, SLOT(refreshDevices() ) );
+       	   
+	    if ( ConfigDevice->start() ) {
+	    }
+    } else {
+   
+    ConfigDevice = new QProcess( this );
+    ConfigDevice->addArgument( "/PCBSD/networkmanager/bin/ethernetconfig");
+    ConfigDevice->addArgument( "info");
+    ConfigDevice->addArgument( Devs[workingDev] );
+    
+    //connect( ConfigDevice, SIGNAL(processExited()), this, SLOT(refreshDevices() ) );
+       	   
+     if ( ConfigDevice->start() ) {
+         }
+     
+   }
+    
+  }
+}

Modified: pcbsd/trunk/NetworkTray/NetworkTray.cpp
===================================================================
--- pcbsd/trunk/NetworkTray/NetworkTray.cpp	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/NetworkTray/NetworkTray.cpp	2007-03-07 18:56:00 UTC (rev 118)
@@ -90,6 +90,7 @@
   contextMenu()->insertTitle(PixmapIcon, tr("Device ") + DeviceName);
   contextMenu()->insertSeparator();
   contextMenu()->insertItem( tr("Configure ") + DeviceName, this, SLOT(openConfigDlg()));
+  contextMenu()->insertItem( tr("Device Information "), this, SLOT(openDeviceInfo()));
   contextMenu()->insertItem( tr("Start the Network Manager"), this, SLOT(openNetManager()));
   contextMenu()->insertSeparator();
   contextMenu()->insertItem( tr("Restart the Network"), this, SLOT(slotRestartNetwork()));
@@ -634,3 +635,19 @@
     return "";
 }
 
+void  NetworkTray::openDeviceInfo() {
+
+	if ( DeviceType == "Ethernet" )
+	{
+		   QProcess  process(QStringList::split(' ', "/usr/local/bin/kdesu --noignorebutton -d  /PCBSD/networkmanager/bin/ethernetconfig info " + DeviceName));
+   		   if(!process.start())
+      		   KMessageBox::error(this,  tr("Can not start network configuration utility."));
+	} else {
+		   QProcess  process(QStringList::split(' ', "/usr/local/bin/kdesu --noignorebutton -d  /PCBSD/networkmanager/bin/wificonfig info " + DeviceName));
+   		   if(!process.start())
+      		   KMessageBox::error(this,  tr("Can not start network configuration utility."));
+	}
+
+
+}
+

Modified: pcbsd/trunk/NetworkTray/NetworkTray.h
===================================================================
--- pcbsd/trunk/NetworkTray/NetworkTray.h	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/NetworkTray/NetworkTray.h	2007-03-07 18:56:00 UTC (rev 118)
@@ -23,6 +23,7 @@
    void slotEnablePPPOE();
    void slotDisablePPPOE();
    void openNetManager();
+   void openDeviceInfo();
    
 protected:
    virtual void mouseDoubleClickEvent(QMouseEvent *e);

Modified: pcbsd/trunk/ethernetconfig/src/ethernetconfig.cpp
===================================================================
--- pcbsd/trunk/ethernetconfig/src/ethernetconfig.cpp	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/ethernetconfig/src/ethernetconfig.cpp	2007-03-07 18:56:00 UTC (rev 118)
@@ -25,6 +25,8 @@
 
 #include <kmainwindow.h>
 #include <klocale.h>
+#include <qdesktopwidget.h>
+#include <qapplication.h>
 
 #include "ethernetconfig.h"
 #include "ethernetconfigwidget.h"
@@ -45,6 +47,15 @@
 void ethernetconfig::setDevice(QString Device)
 {
    mainWidget->setDevice( Device);
+
+   // Center the dialog window
+   QDesktopWidget *d = QApplication::desktop();
+   move(d->width() / 3, d->height() / 4);
 }
 
+void ethernetconfig::showInfo()
+{
+   mainWidget->showInfo();
+}
+
 #include "ethernetconfig.moc"

Modified: pcbsd/trunk/ethernetconfig/src/ethernetconfig.h
===================================================================
--- pcbsd/trunk/ethernetconfig/src/ethernetconfig.h	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/ethernetconfig/src/ethernetconfig.h	2007-03-07 18:56:00 UTC (rev 118)
@@ -46,6 +46,7 @@
      */
     ethernetconfig();
     void ethernetconfig::setDevice(QString Device);
+    void ethernetconfig::showInfo();
 
     /**
      * Default Destructor

Modified: pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.cpp
===================================================================
--- pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.cpp	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.cpp	2007-03-07 18:56:00 UTC (rev 118)
@@ -32,7 +32,13 @@
 #include <qtabwidget.h>
 #include <iostream>
 #include <qtranslator.h>
+#include <qdesktopwidget.h>
+#include <qapplication.h>
+#include <qtimer.h>
+#include <iostream>
 
+using namespace std;
+
 QString DeviceName;
 
 #include "ethernetconfigwidget.h"
@@ -99,7 +105,7 @@
 
 	if ( checkDisableNetwork->isChecked() )
 	{
-		saveValue( "/etc/rc.conf", "ifconfig_" + DeviceName + "=", "ifconfig_" + DeviceName + "=\"OFF\"", -1);
+		saveValue( "/etc/rc.conf", "ifconfig_" + DeviceName + "=", "", -1);
 		runCommand("ifconfig " + DeviceName + " down");
 		return;
 	}
@@ -282,19 +288,22 @@
    QString tmp, tmp2;
    DeviceName = Device;
 
+
+
    this->setCaption(DeviceName + " " + tr("configuration") );
 
    // Start loading the device information
    tmp = getValue( "/etc/rc.conf", "ifconfig_" + DeviceName + "=", 1 );
 
 
-   if ( tmp.find("OFF") != -1 ) 
+   if ( tmp.isEmpty() ) 
    {
 	checkDisableNetwork->setChecked(TRUE);
 	tabMainWidget->setEnabled(FALSE);
    } else if ( tmp.find("DHCP") != -1 )
    {
       checkDHCP->setChecked(TRUE);
+      lineNetmask->setText("255.255.255.0");
       slotIPCheckbox();
 
       // Look for the mac address change
@@ -361,8 +370,10 @@
    }
 
   slotIPv6clicked();
-       
 
+  // Starts grabbing information for the info tab
+  loadInfo();
+
 }
 
 void ethernetconfigWidget::runCommand( QString command )
@@ -458,17 +469,233 @@
    }
 }
 
+void ethernetconfigWidget::loadInfo()
+{
+  // Get all the device information for the info tab
+  if ( textInfoName->text().isEmpty() ) {
+  textInfoName->setText(getNameForIdent(DeviceName) );
+  }
 
 
+  textIP->setText(getIpForIdent(DeviceName) );
+  textNetmask->setText(getNetmaskForIdent( DeviceName ) );
+  textMac->setText(getMacForIdent( DeviceName ) );
+  textStatus->setText(getStatusForIdent( DeviceName ) );
 
+  // Get the packet status for this device
+  textPacketsIn->setText(getInPacketsForIdent( DeviceName) );
+  textPacketsInErrors->setText( getInErrorsForIdent( DeviceName) );
+  textPacketsOut->setText(getOutPacketsForIdent( DeviceName) );
+  textPacketsOutErrors->setText(getOutErrorsForIdent( DeviceName) );
 
+  // Connect the slot to refresh
+  QTimer::singleShot(3000,  this,  SLOT(loadInfo()));
+}
 
+QString ethernetconfigWidget::getNameForIdent( QString ident )
+{
+	QString command = "dmesg | grep " + ident;
+	QString inputLine = getLineFromCommandOutput(command);
+	QString name = "";
+	
+	inputLine = inputLine.remove (0, inputLine.find("<") + 1);
+	inputLine.truncate(inputLine.find(">"));
+	name = inputLine;
+	
+	return name;	
+}
 
+QString ethernetconfigWidget::getIpForIdent( QString ident )
+{
+	QString command = "ifconfig " +ident + " | grep \"inet \"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString ip= "";
+	
+	if (inputLine != "" && inputLine.find("inet ") != -1){
+		
+		ip = inputLine.remove(0, inputLine.find("inet ") + 5);
+		ip.truncate(ip.find(" "));
+		
+		
+	}
+	
+	return ip;
+}
 
+QString ethernetconfigWidget::getMacForIdent( QString ident )
+{
+    	QString command = "ifconfig " +ident + " | grep \"ether\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString ether = "";
+	
+	if (inputLine != "" && inputLine.find("ether") != -1){
+		
+		ether = inputLine.remove(0, inputLine.find(" ") + 1);
+	
+	}
+	
+	return ether;
+}
 
+QString ethernetconfigWidget::getStatusForIdent( QString ident )
+{
+    	QString command = "ifconfig " +ident + " | grep \"status\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString status = "";
+	
+	if (inputLine != "" && inputLine.find("status") != -1){
+		
+		status = inputLine.remove(0, inputLine.find(" ") + 1);
+		status.truncate(inputLine.find("\n") );
+	
+	}
+	
+	return status;
+}
 
+QString ethernetconfigWidget::getInPacketsForIdent(QString ident)
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 4, 4 );
+	}
+	
+	return packets;
 
+}
 
+QString ethernetconfigWidget::getInErrorsForIdent(QString ident)
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 5, 5 );
+	}
+	
+	return packets;
+}
 
+QString ethernetconfigWidget::getOutPacketsForIdent(QString ident)
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 6, 6 );
+	}
+	
+	return packets;
+}
+
+QString ethernetconfigWidget::getOutErrorsForIdent(QString ident)
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 7, 7 );
+	}
+	
+	return packets;
+}
+
+QString ethernetconfigWidget::getNetmaskForIdent( QString ident )
+{
+int num;
+    QString RealIP, tmp;
+    
+	QString command = "ifconfig " +ident + " | grep \"netmask\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString net= "";
+	
+	if (inputLine != "" && inputLine.find("netmask ") != -1){
+		
+		net = inputLine.remove(0, inputLine.find("netmask ") + 8);
+		net.truncate(net.find(" "));
+		
+		num = net.mid(2, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = tmp;
+		
+		num = net.mid(4, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = RealIP + "." + tmp ;
+		
+		num = net.mid(6, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = RealIP + "." + tmp ;
+		
+		num = net.mid(8, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = RealIP + "." + tmp ;
+		
+		//QMessageBox::information( this, "Application name",  "IP: " + RealIP );
+		
+	}
+	
+	return RealIP;
+}
+
+QString ethernetconfigWidget::getLineFromCommandOutput( QString command )
+{
+	FILE *file = popen(command,"r"); 
+	
+	char buffer[100];
+	
+	QString line = ""; 
+	char firstChar;
+	
+	if ((firstChar = fgetc(file)) != -1){
+		line += firstChar;
+		line += fgets(buffer,100,file);
+	}
+	
+	
+	pclose(file);
+	
+	
+	return line;
+}
+
+void ethernetconfigWidget::showInfo()
+{
+	tabMainWidget->showPage( tabMainWidget->page(3) );
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
 #include "ethernetconfigwidget.moc"
 

Modified: pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.h
===================================================================
--- pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.h	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/ethernetconfig/src/ethernetconfigwidget.h	2007-03-07 18:56:00 UTC (rev 118)
@@ -36,6 +36,7 @@
     ethernetconfigWidget(QWidget* parent = 0, const char* name = 0, WFlags fl = 0 );
     ~ethernetconfigWidget();
     virtual void setDevice(QString Device);
+    virtual void showInfo();
     virtual void programInit();
     virtual bool checkRange(QString IP);
     /*$PUBLIC_FUNCTIONS$*/
@@ -61,6 +62,28 @@
 
 protected slots:
     /*$PROTECTED_SLOTS$*/
+private:
+    virtual QString getNetmaskForIdent( QString ident );
+private:
+    virtual QString getOutErrorsForIdent(QString ident);
+private:
+    virtual QString getOutPacketsForIdent(QString ident);
+private:
+    virtual QString getInErrorsForIdent(QString ident);
+private:
+    virtual QString getInPacketsForIdent(QString ident);
+private:
+    virtual QString getStatusForIdent( QString ident );
+private:
+    virtual QString getMacForIdent( QString ident );
+private:
+    virtual QString getIpForIdent( QString ident );
+private:
+    virtual QString getNameForIdent( QString ident );
+    virtual QString getLineFromCommandOutput( QString command );
+    
+private slots:
+    virtual void loadInfo();
 };
 
 #endif

Modified: pcbsd/trunk/ethernetconfig/src/ethernetconfigwidgetbase.ui
===================================================================
--- pcbsd/trunk/ethernetconfig/src/ethernetconfigwidgetbase.ui	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/ethernetconfig/src/ethernetconfigwidgetbase.ui	2007-03-07 18:56:00 UTC (rev 118)
@@ -9,7 +9,7 @@
             <x>0</x>
             <y>0</y>
             <width>285</width>
-            <height>333</height>
+            <height>383</height>
         </rect>
     </property>
     <property name="caption">
@@ -44,6 +44,45 @@
                 <string>Alt+K</string>
             </property>
         </widget>
+        <spacer row="2" column="0">
+            <property name="name">
+                <cstring>spacer2</cstring>
+            </property>
+            <property name="orientation">
+                <enum>Horizontal</enum>
+            </property>
+            <property name="sizeType">
+                <enum>Expanding</enum>
+            </property>
+            <property name="sizeHint">
+                <size>
+                    <width>69</width>
+                    <height>21</height>
+                </size>
+            </property>
+        </spacer>
+        <widget class="QPushButton" row="2" column="2">
+            <property name="name">
+                <cstring>buttonApply</cstring>
+            </property>
+            <property name="text">
+                <string>&amp;Apply</string>
+            </property>
+            <property name="accel">
+                <string>Alt+A</string>
+            </property>
+        </widget>
+        <widget class="QPushButton" row="2" column="1">
+            <property name="name">
+                <cstring>buttonOK</cstring>
+            </property>
+            <property name="text">
+                <string>&amp;OK</string>
+            </property>
+            <property name="accel">
+                <string>Alt+O</string>
+            </property>
+        </widget>
         <widget class="QTabWidget" row="0" column="0" rowspan="1" colspan="4">
             <property name="name">
                 <cstring>tabMainWidget</cstring>
@@ -304,10 +343,10 @@
                             <cstring>checkIPv6Enable</cstring>
                         </property>
                         <property name="text">
-                            <string>O&amp;btain IPv6 address automatically</string>
+                            <string>Obtain IPv6 address automaticall&amp;y</string>
                         </property>
                         <property name="accel">
-                            <string>Alt+B</string>
+                            <string>Alt+Y</string>
                         </property>
                     </widget>
                     <spacer row="2" column="0">
@@ -329,51 +368,240 @@
                     </spacer>
                 </grid>
             </widget>
+            <widget class="QWidget">
+                <property name="name">
+                    <cstring>TabPage</cstring>
+                </property>
+                <attribute name="title">
+                    <string>I&amp;nfo</string>
+                </attribute>
+                <grid>
+                    <property name="name">
+                        <cstring>unnamed</cstring>
+                    </property>
+                    <widget class="QLabel" row="0" column="0">
+                        <property name="name">
+                            <cstring>textInfoName</cstring>
+                        </property>
+                        <property name="text">
+                            <string></string>
+                        </property>
+                    </widget>
+                    <widget class="QGroupBox" row="2" column="0">
+                        <property name="name">
+                            <cstring>groupBox5</cstring>
+                        </property>
+                        <property name="title">
+                            <string>Traffic info</string>
+                        </property>
+                        <grid>
+                            <property name="name">
+                                <cstring>unnamed</cstring>
+                            </property>
+                            <widget class="QLabel" row="1" column="2">
+                                <property name="name">
+                                    <cstring>textPacketsOut</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="1">
+                                <property name="name">
+                                    <cstring>textPacketsIn</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="2">
+                                <property name="name">
+                                    <cstring>textPacketsOutErrors</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="1">
+                                <property name="name">
+                                    <cstring>textPacketsInErrors</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="0">
+                                <property name="name">
+                                    <cstring>textLabel6</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Packets:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="0">
+                                <property name="name">
+                                    <cstring>textLabel6_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Errors:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <spacer row="0" column="0">
+                                <property name="name">
+                                    <cstring>spacer8_2</cstring>
+                                </property>
+                                <property name="orientation">
+                                    <enum>Vertical</enum>
+                                </property>
+                                <property name="sizeType">
+                                    <enum>Expanding</enum>
+                                </property>
+                                <property name="sizeHint">
+                                    <size>
+                                        <width>20</width>
+                                        <height>20</height>
+                                    </size>
+                                </property>
+                            </spacer>
+                            <widget class="QLabel" row="0" column="1">
+                                <property name="name">
+                                    <cstring>textLabel5</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>In:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="0" column="2">
+                                <property name="name">
+                                    <cstring>textLabel5_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Out:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                        </grid>
+                    </widget>
+                    <widget class="QGroupBox" row="1" column="0">
+                        <property name="name">
+                            <cstring>groupBox4</cstring>
+                        </property>
+                        <property name="title">
+                            <string>Configuration info</string>
+                        </property>
+                        <grid>
+                            <property name="name">
+                                <cstring>unnamed</cstring>
+                            </property>
+                            <widget class="QLabel" row="0" column="1">
+                                <property name="name">
+                                    <cstring>textIP</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="0" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>IP:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Netmask:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="1">
+                                <property name="name">
+                                    <cstring>textNetmask</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="3" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Status:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2_2_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Mac:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="3" column="1">
+                                <property name="name">
+                                    <cstring>textStatus</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="1">
+                                <property name="name">
+                                    <cstring>textMac</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                        </grid>
+                    </widget>
+                </grid>
+            </widget>
         </widget>
-        <spacer row="2" column="0">
-            <property name="name">
-                <cstring>spacer2</cstring>
-            </property>
-            <property name="orientation">
-                <enum>Horizontal</enum>
-            </property>
-            <property name="sizeType">
-                <enum>Expanding</enum>
-            </property>
-            <property name="sizeHint">
-                <size>
-                    <width>20</width>
-                    <height>21</height>
-                </size>
-            </property>
-        </spacer>
-        <widget class="QPushButton" row="2" column="2">
-            <property name="name">
-                <cstring>buttonApply</cstring>
-            </property>
-            <property name="text">
-                <string>&amp;Apply</string>
-            </property>
-            <property name="accel">
-                <string>Alt+A</string>
-            </property>
-        </widget>
-        <widget class="QPushButton" row="2" column="1">
-            <property name="name">
-                <cstring>buttonOK</cstring>
-            </property>
-            <property name="text">
-                <string>&amp;OK</string>
-            </property>
-            <property name="accel">
-                <string>Alt+O</string>
-            </property>
-        </widget>
     </grid>
 </widget>
 <images>
     <image name="image0">
-        <data format="PNG" length="5568">89504e470d0a1a0a0000000d4948445200000040000000400806000000aa6971de0000158749444154789ce59b7f685b5996e73f596c781a6290a00c7e430cd662836414287b2a505277c146330333f6f43f4fec1f236df71f3133b071ed4077320d3371cd3f49b174db99a107bb979ab16ba9c57a7ff4446a286c0f74ad55436aac1449590eb12c8b3858c11ef4845de8093be83d62c3d93feeb362a7e24aba7a7b7b367de1f1d57df7fdbae79ef33de7dc7b754644f86d2effe137fd01bfe9f27a09c0465847a6fe7e4aec4f6d99f9e98c38771c99f8f1c4a96afe7a092000f3e579928749cc5513030373c584c3d36f79bd0460c1706418b3cd64a87b889c9e23793e096da7dff27a0940f734a02d49663d43c24990ddc8922275ea2daf9700b6950664b52ca37f384ada4d933a9f22ab654fbde5f5124037e4ca399224c9ae6749b5a5c86c6448923cf596d74a00a59512f1489cac9625359022d39621713e81d9669e7acfd7d0c3ff1fe5cc0fce0887a0b581f3fd26b9728e142932e50c898184e284afd180dfa800cefce08c1001ff97e09e07ff36701ea828d41e0311a00cbc09beb2572f423202661906de5375fb2c4c15a7187df32a99cf33242209e68bf30c478699d99d618491177fc3370d85cffce08cd0065d5!
 de0b681df0f2e1008a88fd41e831b01ed91fa78ad0c0c80b6aa3ae75b07c2c006387de03bc27570c2c02ab821d08a0af1502b83dbab8472a2fd13588a56597f5c21762ec67c59753e57ce11dd8ee2fb73df99177644445a47348f8cd791e85de4e253e462099915646813b92548b28acc0992ac234b825cde431605b9748475af7dc7c3aabacfd87a86b382189bde731f22b3a2c9d0434d61c9aff0815f2e3e45a20564b2a9be27da44a279647c0f19c823037564e036727d0709e7909e0232b9302e5217995b9813d914595c5814d912999d9995e3fd3c7eb43420be7e4606c3a0010690458d288003f80ec069079fe327e903d3d1d07c1aecfb487640765fc3ed006ddf8fd1e1b2600770030ed83e520187f4ae0f3a815d0da3d3266bf968e80e6c83d3dd808a861b6cc00634fa1cecd51a6eaf4bf051986be707c85634086a04b60324bb0d16ac3ba4f424192b4b421f217d6f8a54cf28f9477962e762e4ca39e291b8d2804a14dfa59768c0b420d7b397e4e2b72f4a4f4f8f749deb92cb3f3244a42acb322bc7cb9acc79bf14ae3d5d54d5a7dee9a74bcfd5974fd4af5787644da6e5cad6455996a85cde8ccaa28ccba5870332276149967a64faa926d1bbc8a62ccada9ef7bc3d05cbcfd7eb4bead9b7d5b9c55f2c8a54452427223b22b31fbd82060caf9f91f9b090fe308!
 df94fca6d4c46c771be0bfdc17ec0060238d8f85e88163e746c2c0227b0428!
 0600b0b4
e8eacef266c83d16d6356349cd6c8bbb00e6ed8c15ea9d1e87531bebcc4587086b435415c8f33b33185db07acbb58bd0db422d44236f1fb06a3a1ab141e15c87d9a43efd2497d2785d5b0d03fd3e17bbc50035a71801386f4a7ea25d16894c94be3e47bef789d07088053c24700b6e715aecee0db77e1931bf8b66df8f92801db66de99200064f66fa06133638f02153880415fdcebbc8359d1308209d880441fb00e46d8394180a9600af6c1ff86c9f067bf07fe0fc97efa2159bfc99d7f5960a16b81c2bfdcc1080d912be6188c0cd26834b8f9773719b932821ed4c974644e27f3e31c900b4b6b242df2e8c428314f3fc314c830f8bf4cf8a7accaaeda78215a1707f0ff308a698311703177c1e87449efc2d5ce3405671e7c37c96e83ddedc206b8dec837c22eac3ab82117fb7e03b7d7c568280d48ad0cb2726e058ae084c0778465707a61b4769daba1314a8f4bf4afbf47e6f31c37ef8599f8db0962e762d0fd120d488501e6f1a103a01383e39d27a12e3c4a2d4f413dec62da3e8c40caebbc41da8244a7e169c030d98a0fa33be58dbceb8dbc81b60ac91050d430422e94950614f6f318a1241481a3ce7bf1801302ca9008195084fe483ff3ae9f788ffaa681c30172e5dc2faf0115f204895122473f7125848d05f8ef39f00740d354a7350dfc01668a2e339f15a04d!
 a3a141574f80891f875978e2c20060c1989ea1b03f8fd971132a60071b681b1a8dbe86b2fd5e4705352197c6fd1a6e08925f5e62ac6f86c4bd410ae756be32f247f1c095230df8b712fdf7de67ea5f1748af8799fee934fd5dfda0bf58035a6c78519035b92527cb92bc52a92b18ffd1b84cbe3d29d1b7a3127d2b2ad73eba2ccbcd59b9be65c8a6dc12d95a1491a65c79785196242a971f2af64f3e08cb2d098b51e891d966975cbceb6ff9f9355914d913b9d51c90f02f909e2ad2b380f46c29ecda44ba3e46aaf53559cc2b6f74fdbdeb127d3b2a57be7f45f9aaecdca95ee05932b40afd2470b000a890036238d800d85400b028795800a0749087009456d5f9425f81603048b02f08b8648b598c6e5858f9108cdfa774fe7770de6890ded070fb5cd2eb26ee79303de2338b1a6eafcbc0ff1e62607b88953b156883957f8c637fa6d49fe391a1574f97b3c443712aeb15c67ac7b8f1373798f8d104b665331c193ed5045a02488400322d0e081207506c4f81005de0cca0a39373a6d0d1c9ecdfa0bf5d27bd3f0687351afe0a63df1f25fc4741d2ef4da3077592179264b7c1081900f41f82afa891e84b78b68f67fb8e67d32eda7d3f63da24c1475162b53863d7c788330487cf6cfe78784c11121103ca100c07e102c4ff380e8f21a007982fcfbf0207ac9e91dc7969f9!
 ef23db3ff2f3f9831962ed0639c724ee73987760d89720b39f26d1e192b65d!
 86020ed9
5d4876fa681c8ca2b7fbb9b1fd2e6eb78bff9ecdd5cb9f5271219d37e04b3f46d0255b01821a54c008ba981b1af6b906fdff234eb41665aa36857656c3d7e663e6ec4dfcefbc3847b8d6501c60352cf4a04e65a342b02f88b56da11fea107c0907449f22cbcf71c0f311de527356449a22cd691169cae2deb488d4656e6f5244aa32bd7345eab224d33b9eedd5a7654d6ec9b54d43aa7b1745de422482c843ef05cd350fbdf7ed79116355a4fa8baa5cfbab6b32f7fe9c5cfe6f9765696a49bade7b66f35d0f91ae2ce22f21fe9f21d5bdcd1607c84f2645ea224b8525a9ef6d8a2cc82b7040110649b46cbd7490a3bf5d6900ed606311f3a57070c13782438378c708362ec31da3d880d1e960eea6313a1dac830ac30183ecb68911744997f1b803e873c8d919f0f593db4d83cf617e374d7f4798f4f614965e22bb9ac53d74c99655dc912d67710f9fd9fc090e388074314d3c12c7aa58e01a58f7f3c44231a68a532a857e1907a422c0419a004165abed7138f038e0204fc0e306552f28ae38409df750f9fd04a6e5436f0f326f9b18dd49b215885f4831f53703b83f0b33b2f2fb38810a89957eecb3ef337caf9f9a7695f867ff91f7b57749fcf3b7180a0ee1b80e46c8c0d7e663a87708dabe6afbaed7b944240545d0833afca98e7e31060d188b4e907b747a1cd01240ba0!
 8b41bc734601edaf1342086ed7987f9fd09685f2063df80f612697baca52146a74bd6ca90d48f34208959317183606e64297c47e3065db8111773d58410989e5f4f17351a2117ee831569b0602d30f1e60481688089b7275878bca0d2d3e7469ea23a9d29a62102d6b605dd605b36e8e0d80ef150fce5022004f983ec310d18a674e0c5fcc7467ab82345c686442045da3631020638aa3d6b69187a02d34269c0ae89113460038c3e076d5dc30827a00c86378286c7fe6ec885a2db8af026bef32ebfd7f9bbe47b12c47cfde4be9b410b7d75e409a9143e1549912be7d0bb75b014fbb30bbe804fcd289d525a5e2076ef8ce42f34b1a9a9aced609ec1f6e1961738cae632fb13243a1264ec3443011773d765a47302fbc062a67d0cb621d5adc1c155f4763f5737fe0b4e9fe365792eaca246ba086eafdd8afc2882d553fb4a84f79519a122b80740bb420d700fe17a789caba1abd84f6c027a007bd726d019c0d977f0b93ee87c8917186f22f274fa6484d73ccaf78fe7f79b72ab7e5d44d6647ae79a346559d69aaa7d7ceb926cca9c8c6f5d56d77bf9fa52dd9b3fa82b2fb3b8a370aeaae6196e556745a42eb35b932d6c4a5da6379fc38793eabead5b2750fb08d9dcdb14b92b2d2fa2dee7bdfff6d2a95ee0991bbc8b8834a52e9b2222b2fcf496e7a1eadeb3d4f95bf5711!
 1b926b33bd7a42ecb2d97577dba299b9294eb5b97645c2e49f5a9babeeab9b!
 acde770a
da95cde91eb5bae2fbd1aee7c15b519643c3f2eb22752af7adfbba3b0b9d714d9915305d0e200370439c76c71c0607b8282e37180833a7f0089c055d80f93eabc4176d7c4e8541ca03f0992fb2ccca83646e09330fa9320f3ff3c4fe17fae33766704c757636c63047c0d6e6c8c82afc1d8fa086e87c5e84a82865661e4de30565b85d49d634885d467cfb04285c4a70a339534839d3100529104f9725ed9be0581ce00d8e0eb78450e18bc73460ad13a16163afd383f1cc41719c0f9de84e280830a81f6e0b3999e030bda6f625a30aa4f30f1e30946df1825db9665a831c48c3b83ebba4cfdfc26b19f05f1bb7e1abd8d63840776af034517aba7f64bdbbc066c7eafcefaee3adffaf9b7183f3fced5c82fcf012d0d484600c74447cd00f95657a0b88e8f00252747a03dd8627b0e20d0ae635a60e806792b47bc2bce7bc5f7d06b3aef7efe2eb1b331026703e85d3a94358c50c2637d4eb07fa3b7f1c2d8fe34b677c39ec686c15c3789791a908828eff2220dc817f3a76a404b006611f025b10e545677b464e260d3ef8b93b127c05722bd7b43f9fd030b4377c86ea789e971161e2f30fac62899c76afa295d4e631c1ae8812ebaded4b9f3a8c0b50b41561e87e9792b48fe513f5a04fc8ffc04225de88fba08bc7912750ffd171472a8a9758543601592e124f9dd3c1c42a6!
 9c81901707e860efda6a166fdf2116899d6e03476430504716f726a555fe0891bf8caadfcd3911d994d99debd294b556ec3eb97559aab228529d93cdeca68cbf3f2e4b3f5992e49f2665696a49c67f342e7337e7441ecc9d20bc13b3b9c7d8ba55df91134477545f7abe5e55753e40aacdaa2cdef572812d39719de45e81042943bce3c51a806f98cc6e06a3d3c5dc35c1a734c0e986f47606f461d2ab695c5cd2e534a06277800f8b1fe2f40c92dbcdd0df3148dece4107e4ac0c838118f35646edecf0ea053b0f9d50d8cd33d819a3b0fbac1eeb8ca911ef84fc6e9e981e6b6940ba98261e8a9f8c043b3d4d089dae002d12bc619f9181b649863b4655cb1f9f81f351f8719ec2fe3c831dfdccecce90ec4c52711af4fb624c6c8f92e84e60590efe7f0db2b0b140ec6c8ca9cfa718fdf628f92779b2ae49e03c24ff208979ff43ec9083f5458dc7e7d4ec2fedd07510c41d78ace6fc22c00a6a8d70d5b3f955200cfe0d3f9cd75a75bc65b6dabd1ad5ef56d18b3a5c40ad2d065199970eb94f72c4ff30fef524982dc27087d1d200eb3f1bf05f07b0b119ec1866dece91ec4c625a26fdbe18f68145a2db255d4913d387c9ae6719728758a82de07fc34ff65196f89771ac4f2c9c908b5934b1430e8d2f6aca0bac7a2f5ee75996772cb667d53b7fcce66b4f1a34eed5a8356a!
 d4eed5a83d51c8a1e21c4250d9a840109515ea4a135e29177043306f67d1db!
 9517d02f
cd927b2346c0cb05860323989689a11bb0afbc40baa26178f3f623ef8cb0125ae1c6776f107f27cec49f4d50b950c17d0294d54c8ff545ad15f672de7bf111ab7f0ddb7f05dbbcfb8f612a942257cca9a9b80d2f2bac785ea1786aff4f72c070c0a172a0e6fa72b649bc638892933fc6fa2ee6b6091d601d581074c96ea4a10378db25951ca2d25322f82759469f24c8fd2793d85f0771dfb2a97c5ec10db9cff2f9e31ac0d78fbc7b08dafab3fa8b305bce128fa83941fa9ed384afe18067714008323604db0701880792647667e8f7e914f6f3caef6f6b24bb9394f6f3e8edba97e519e4ed1cba2f48da3209fafa311fc150244eed9145e5db15ac62ad15fc1cf9f7e31aa0fd0a237f844644ad0b04c3414aaba5139a305f7c8539c1fe4fcf48e9e22695039b60fb2036360102ccdb330c0746b00f2cdc768becb6c968f704d64105bb7d0c7343e346df0c9653c1efd3a83936136def51fba242e1dc3a145d826f85093e0ed2e87570ef377042e01647704306f6a75370218dafec623b0ddc4317d75b6471bd9d1faecba92b514738f9ce24a3e746d5ca50a49f52b944fff97e2aeb15826d41e87b493618ae22b776c695df6cadea8a88345b7e7b72eb8a5465a955bff6f0922ccb5ccb8fab6c4e64e87658cddb7face6f0c64bd7be919f5fdc527efdd6a64acc661fce4a5dea3!
 2f96052ea5297f1c2b8ac35d7e4da5df5fcc5fca28a510aeadbd71ea8c4eb56f6d6a97140eb87715b139171697a139dcdba4a553777269510ea7322724516ab5744a429f5fa9c342529d30f9322d2946a7d499a72599677e664a0dad55ab4e8f918d9943559ae2f9d486d9f4f698f84b1f44db1ba24521759bebb2cb227b2565001db5a614da4747a20d4fa315747a439ae3adb54b3bcb2755d44363d5c16d9bba670f3b2882c8ad42f89c84591428fc80e220f34911d4d64d32f227e912d0f0b5d227b3d32f7c02ffe07883f4d0bb502a27d846877116d06f1dfd5a42bdd255d852ee9faa84b064a0332901d90f1d2b85cfcf8a2cc6ecdcad0c290cc6ecdcaa5db97647167512eddbe24cb7bcb32bd30ad8490574290bbaa3bb77e76ba06b43820f5994fd2ef94e02007ed06d8331048c07e063a1a5e7061c17e033a2a70cf820baeda36a0a9b93ca2c01d0f6d0d0278db0adcd6f9e0cf356afb0d65dbcf2dacfe3236ff22bcac5d26154c118bc428940b0c4606156e0c42f2251c30574764af47447a44f60644242c5208abfa832e913d4d64cf1bd107da8beb0ffd227b8854bdf347ed25af7dcb2f935bd7853fe38523c24f106e23fc04218730e5d58f631ee1030f674ee2e5f4e5133b43966e2bb3984d9fbe43a4f52399d7d4c736bd8fdef43ab3e317114de4eef1f6d3eac!
 7f0e839cfb5471706843f78b1007ed5a3fe51bdb53d6629b7f44c081f9dce0!
 1c7e2005
785a23e14065d78a4a98d4deb40e458fb69f56d542c6f6bcf9ee343994fc4855d4db5ff9a76272eb42d100fc5c91573c44231b80fb1de1869d2a7ded312c0cd2f342aed2e331b40bbcb7c051880d22e1006bba641bb777118f8b7e7ea8f34e8061ea16c1e9eb507bdf64ef76bc3d25fb5a40e53ccdf9f27de1b27773f0721c815731887c6e937bdaa7a697944fb00f1df45a25964e02192fc8526b7aac895bc264b7b9a5c2f68b2d9d4647653a9fbd291f9543db3d8eb92eb0f7b7e2dea2f22cc7e342bf25064ee63b54ff008a767a65fce01ff2f0ea67e3db67f7434679a2ae829799b223c61343f68fefb10c0affb989d991579e0f9fd92b48431fdc1e91af08df70aff7b2cce3f38b2707681c461426d952741a63d43dc8a13f88bc0d74f88bc0ec5c424d197204d9a44d8c3de0426a7ff5fe0b5d200fba7b664b52cc9c324d9b62c06466b9de2b74203b26419393fc2cd2f6f12eb8c31559b221688611efeb668c0dfdbb2e05f60a831c4d497532d0de010b4b31a577f78f5ab5af09b66eeffdb473d5757b1ff43cf156e8ada23f47c96a8d60e5e2f0d385e66fe6146928749cc3693645b922ceaff8369d2a4b414193224928933afad005eb5bc5624f84dcaff016bea8b97b1b53adf0000000049454e44ae426082</data>
+        <data format="PNG" length="5241">89504e470d0a1a0a0000000d4948445200000040000000400806000000aa6971de0000144049444154789ce59b5f685b599ee73f596cb8820a48d00609262041054a2601cb3850f2743dd8cc43b5f366330f6b330d2b31036b510b3df634f438c5b0ebf4438d9d816eac862c562083550fd5761a32b21b02562de991aa896dd938b15c388dd4388564ec4257d88b74b10ddf7db857f29fc495744f17359bbe70f9fae8fade7bceef7ccff7f73bbf73ee2549fc391fffe5bbaec0777dbc5d0630114514ff795c7c8112bf48885534f9cf9317d2fced328007e6d7e6891dc7882fc5891225f145028e2fbee5ed3240196e76dd24de1267f0ea2073be39a237a2d072f12d6f97017c0e035a622456130cd407483e4d122376f13d92de9e735b52499a4e4c4bebd24c62465a97a67e36a58beeb9f496b941a57f9da6b7dc4bb225c91043ccb5cc31f0f500fc0f2ebdfa8eefbad7fe84e7466e43da95669233d296349b9c95b6a4a9f8c50cf8ce2bfd1f3df911e22364fc0869575a7cb42825a5d9cf66a582947a9092e2facf69007e844822f727c84823ef5de4cd216f1279b790ff21f297907f01f92b289846c17d1ba7f651f0310ad550e831f2e7d1d4c2845491661fcc4adb4ee3b7a5e9bbd3171ae08fd6804b7f7f49b480d70!
 b560bb8dd60011e0fd005c697607581f10c0883b10a84c0780a5c07d72610049e43fd2ab81ab809f520f014acebf67d56085802ab038c35b0ae016b4e79d946fe0df23d35b25faed2fd6e37f36bf3dcecba497a2d4def8b5ef8bb37d08070164dd750f809ea11eac9a394505f012d0a0d96504668b082368486f7d18a50a48115e7faae8325fbbefeed134c09f5179ce76ea1940cf56d1936e6dd36aebbd52314cea119d9f5090b85b368fa1085b2273d3fe530a2c9809a945a484925697161d1d684c4cceb19d0bb79499d4130802890c0ee51803ae03a827a2bb8ea6e622e88d70d0c9701072e6297217160605d06e3c04df4b245d2f46079ea60ba8879eac4f75cd006ec1944db4c126517555f1d5e40fd4a158a0656a00acfa17ab58ef97407ebba45e06990c9eb2112450302069e171e6257a224cb0b0cf962cc95130cf8a22497e20cbd1723fb2c4bf7bbdd76cf77f5da58ec85c86b18302b34fe20a29eeff7c8eff7cbfb175e0d7fd22fa9a615cde8f4b1a194f3978d1b878b76f1d0f9f93073aebc72a63c5eea5349b31ad9ee5141610d17c25ad1b4225b216514d460deaf59190a3f4115ad6863df79debe0d2be7cb15a7fcd87ec7e2a345a922296dffcfccfd3760c0cdcd4b9a0f8ae4bd249ffef2530066c2d394ffc6a43dd00e9880873a26ae576219173e4cca78c!
 e60110f8126e6ea691eb8eec00b885e3189170deacd9eb76013ac601d73758!
 7ea358bf
eaf22dc0a24489627e9f70d70e7f96dacabc0a6453958c558859d9049ef17fdc43a46c93dcb91fe3c8dcfeb63e8af8728ef94f1fdc6073f7c0d037a8466d213aaa56b1aff9fe3aa3c2c6926397da6e755dbb071db61c0fab47458931e8d4bbb25e9c1b0542b29559b9054d3ecfeb8a482a62bc392569a0c18dbee53413d1a29f46843331ade0a6945210de6835a945ffdeb7e8565289cb519a07d29a3d099311faca0e023db3bf81750ad56d2e2639b89633f1953a823a4c87f8b4872bcc29b68403aa8664f96c9e2a39b3cf3b473931c7374feeba7f0cb07f6ecaa855762b92784efc7611226443d16f13d88b4d938da9624579fc7e3ba43e20598572c780e96d3f3d5a0054feb58d72dcca52ad6358bfe1d9b0143ab9dacbebb0acb50ef005703d7a07e0d62bf1f67b4e316f92ff3b46f7eccdc6fd3dc590a32f92f9374bfdb0d6daf66407332140b02cce3c207808f6e38dd7806ec7f6c4c2d2f405fc82261ba887a624ee3a3c4cb106d8bc21174ba6e9228ba885e89c173883a8d8f06a3184f21761d5835887658b006b1408cdc4196682806cb40a3f15d348dc11a443ba2b00ceda176e62d3703efd975ea6eb105f1a2e3420614c912a09b3c69dae9b58df06201fe290d6e0f1886dd68c300b787c4338bc46f72d0625035c0ebf790f87990e4d716848032dcf2cd913b98e7!
 d3cb77a00866a08af1dca07ab5da1cfbac8219b2a87eb183d501835f45b87535c1c05227b977575feaf9463c30d260c0eff2b42ffd94f8bf2f90dc0c32fd8b69dafdede079030dd8d0ecd931af8cdee8a8d830f1c98466de9f51f8fdb0c25d618ddd1f5641298d6ff7aba24569db1ea3235b3dda5058c35bb6fa0fae07b5a8a0fa737ea5e455cf1377d3cf971c0d5854e8cc98f7efdae82d21ef434703b2f6f3c73f1e57f8fdb0467e3422c989085fab014f2f297dfd3403d204e86daa7c43c5cbe4f1d14e991c3e3ac91f65696fed26ff34cfc2af17d87cb689756c4710810f0d085689dd8007ab16b1bf5b206f41fc4908be7263393d6f8f7db0aed76109cc6b3b0453bd7004bd817e86c2516efd7c94c4d777f07c70b6e71b91e0c85736038abf2f12580a906e4bd3fb835eccb289e7d803575ea301d1eb00734d0d08d00b800b0f90c34300ea097cb493aec7f11164eee036edad419207b7f0b45854dd45267f728be08701923f4de20bf888dd8891780191500480f663702d1b44af469db18f33f6edc6d73b2c8cdfba9974cf10f85d98be6a3fb7fef116fdc6201c9f8c79abc3d6800646bba2b0068160006e40ef0f7ae139787c1ee6d7e6df40031c0634fc7763ec3718903d4ad0dd1a255d8fd3ebaa335f879bae28730771062e5b244d8b214f9dc41e44db5c948f62f8!
 5a03dc7e318475c5c2bd64323afc39450b92b97ef8ca4d346091280201038a!
 100d58c4
9f1b9857abb4ff4b2f7d3b7ddcdeb98df18e81abc545e29d3bb83f38370770706cc7664079a78c2fe0a3f8bc48e06a80f28b32be161ff85ea30161a195731a703ec2cbd49c88b066c7078bfb36a6f6a724d534bd3b2269c34129559956498b1a2bf4ab76d82375215d43da725ed0882b6acefbf69d88b124d51ed734f6933165ee6434fcd1b036121bf27e7c32e6bddbc8fb00b90bc8fd19aa1d569a1aa09f4d49352993cb4887156941176ac0890172387a5638d3f89aa3701595ce946b4eb972068735b53b2c6958a543fb39e3dbfd2aa84f134f6c0394aed9ef59acd8c65edcb58d9a7270667b4a35953475674a23ff30a2c8df4434fcdf8735f2d188dc3fb1a7c8a71beffd0cb99368223b2e1d4aa54249faa4a652da16f0f1ec88b4fb06069811d2e1d998ffa5d8bef9fbcab9eb364ced0eaba6154d951a0c987218d0a7826635f530a44a21a8482eac8ca6d59fb3d5bfef895fb3875ef53cf62ab88fc20b6e55162a1afe6858993b198d7c34a295bb2b727ffc72cfbb0bb6012a871529ebd4675b4d2649d2627af142033435a07bf592b22135d53e7f344f7bebcd535ec0d686f983496e5eb6983361c0132569c619f2dcc6a48cc12dee950d623e281f8de26b0d70ab388015b0233ef3aa099b0656b0eaa8be65ab7e471d96a17aad8af5db2af50e18fde5143123463690a!
 5bbdccde8f22889963b18e1531a7004b4da381e1867b4cbd1802b3e5bfd7d1eea661d17aed7c70161a1cc39066c1ca65ed1d335cd56c625553453199354688ee1a9528301c30eada754504a235b7dda508f86f33dca684683eb212d2aa4fe2741a50efdeac9fa15ae79154a1b67fc7cf0a15bd325afc20f820ae5fdf2265eee79f7968db5c38a169f2c9ee97987faf6acf0b50c58baa4ec8d1306e48ee6e93cc300fbf7b98349062e479933e30c782c127b16d1b649cca33289d65bf00262570caa0e03469fdfa47eb5ee447ab6bfaf5eb76015ac6b262c83d961c13294dfdb7929c23baff6e77bde00ac63180f4e30da318af9b5ddf3e69e89a7cd43fdc061c0e5d730605a4887e7677f8df9fee9f97dc5614049d3bb3603366af6f589ed882aca6862db664063be9ea9384c6a0a9f8da992cdb8d9d289009ec6e9c239dcb231b53d7b068dfb8e063cd1590638116ae671e642069c0c812767bdc0caa1fdf0132f60ff3e5b999034a619a7f10d97573a2ca8a2418d6f4734a148d30b941c575738871b355b481baeaf91d4782deebe8c46024d6427a443a95272eabbeb78abfd5aa323bed900a143b4583bcb801587018d31ded4827dbbc71a7e5f35fb7fa61f8f4bfb154d3f3ac9cd65128b1acb4654d28ac6b622aa6843e35bc376391f5141190de7fab5a294224ffa94394c6!
 9307b0a6b290d3e3ec1c5fd94fad336ce16ec7a18095b03324f1ca69e63801!
 e5f6c80a
606747e7149b9b09ab17efdc79db8ae85a8ff70d2d680a3229ed6c049a6e7a88ca7f50ef132c47c934cfef324a3df1bb55764aa434c5a93589645fc5777e87e18c05d7553bd5e75b2bbf69837afd561d9a2fcdece1f3ce60dc0fca1c8ee65f9cb5ffd2513d72718edfac335e0241fd005d4e3f86807c0f574159e6de2c243be9ec6d31a803a78f0c111785a7dc4cb10f145c896d30c0406187d364ab01a64e8b743f47daf0fcf3b1e7c5e1fac1944af476109224ee322a75cdfab62fb26763915ec701a1fb28b5608e29b71badbba8193b980c7e7813278da3c6082ebb28bec72f695fa77c600f165c015a37c94b77f709694eb98b4bb7a993327c15526b9771b5ac13c2a13f1d5b9f7224eb7af97e46692b1ef8d91f832613f6f2d4ee43882cfe3c5fbbe8f85cd349337027cfe65107f38c0c2b3768c2e703f73e3e9f2e27be6c5f3fe59f439e8fec0468e0d8c25ec3cc412c48231b27b593886c45a023aa0fca20c3e30f74cf040fda04e7757f7850638d1801a5adc9f3a11800f91fe21ec68404a524533bbb6fa37fdfeb6edf7554aa9b250d1c44f27b471774383ff75501b890d4d7c32a14c3c23ada7ce08de4bd9dccab9b2e3bf1b42d72867ce974b7699bba8a6da491cd08804df200e38d91fb006bd975fcd005c3799db4b30d46691d88b83cb6640fd0ac45f24c07793f8!
 521c0b8bf85a1c807b6bf700b8b37c07deeb25bd3747fbe54eb2661a2e43ba3c47a7a79bf9f29cbdb3c329e7cc2cb4416e2f4b675b37b9bd9372775bb7dde36d90ddcbd2edeb6e3220be14a7b7a3d766c01530cb26b4394ce8b898004d4b4cd57066752f336065df6680edf74ba7fcfeb02a5a51a69452e961e9950c087f1252df83905287d3ea7b1c5478df2fff8221b62492120f256fd27f618467e491711f19ebc89b74cbbbe59537e99537ef95f7be8d0d0634e38082838db9c0a337980b74fee692721fd4281f15f1b5b653be3780ef075e4cdf6d3c78983713dcf4f49128c789fa6e631e95a1f516f122dc0a24b8fdbf6e133d8e123f8e63fe5f13578b8b584b8cde2fba09fcab07d78e8179cda4faef3b981d163b9f3b6b92bf03b73f80e1fafd856a6f390957eb188c16b02c5eca464f842718bd366a6784ae062817edbc805936f1b4782ecc0a372d11dc47a9ca2906485a74fc7dc3ff4f979cd8df19c3e385e166ceae96add9ebf28593a5e9d9cf66e5edf0aae741503db5a0fc0b46733e7f9a01eefbfe6fec792381c821ee5e8c35d54ef2018d7c438309df900f38a301373d758a473900d26682decb43e4ebd9a6ea477d16f11771b80ce5a332042c12cfed72b56387a1c1218ade3c9d7ffd80d8d703a43ffc94ee7f0c607ddfa4f87f8a581d168693da66c979ef!
 aab306b9ece092d3d3a7d4de3a7656979df2abf0deea3d7abb7a296e16e12a!
 149f1721
00e562f91b35e0240ee880391302ad9d00f47aa2cced4dd2ee0a923bc8da7eff8541ec4a8cfc41165fabcfc9eb47c99a697cae00c9729c80ab9df85318bad1cfceb332c5bf2a525ede69063f0dffce0de7c5219be6aff2f32f618b73df2b30128ac0b29d13cc3fcd13b81a80e7e00bf8985f7e839c60fbe79794efa9503c2a1268edc4c43c35f6a39847658c568b7b2fe2c4ae4c523e2ada1af0dce0f6d504e57a119fcb4bb15e64d2f5313b5f14c9bdbb09cb1681ef07097c19a07aadde9cef5bcb51ac8e08e6af7f0a1f2471ad5998f52ad6b1f54663fe3c4e7d3045ecdd98bd32146a27ff344ffbf5768a9b4502ef042ecc0a9f684005cdee4e9c19f327b1bf0d53db23aa69a3591edbb263f9861f6fcce2fa1e07edbcfd433b8737911fb3bdc91fe8e7179d7584d9823d319bd9b235696add7ecf446e42259534f6c47e7e530372366cacdb13af6f5a1b6cfed1ffd89034a19a93e8ac55ec9715761d61aca4248d68d14977552a2949839ade1a9424952a1949c35ad94d2954f136172dfc0f5145a566e31b53dbf353da8631327f2c9632524d5a79622fc26ee49c59676ea32186df6c804c0da9e630a0666779b56d677e6c2c48fb8e172838abbd9588a41e29e797f691d60d69df900a6e496e69dbc19c573af42bb5ee6eaafc456aef5e37cef8f95021a4d08390a60bd3ea7!
 9d8a3d46e4a7d0b7d4aeda614791cd1cafe8a228f232a1c1634bd306d1b21ebac443b71c1ec676fb03a3cf41b97921f94e0e801b446c19c044f140e1270b90a45205086832a5c2ec252196e58ceb6010bbe00c29ca069808797ae077e65b07350b5c7f6b985d53f64ccbf0a878d61860243747775935bcbd1d9d569e3f34e187c8d06646a48fb7e497e693f242928e5827679dd2b1d1ad2bed3a3ebc6abcb5b6ee910a9e4fcdeb89e77ae6fbb35b33b25fe9657f6083f433c41fc0c9145c49df2693cedff13677138397c666748e6b13d2c669217ef1069fe319835eccad69c4a179cc6ecba2519d293d3d72f2a9fc2c673ce5d0f2f84c45fbdda00ffe1f3fec9f6984c3a736284fb6faa01874ea50f9d4ae78c931ed4a9eb1795b79dc6574e3fc72d159cebbb6e857743e2c36fc70033c99993cd9215498f6c09fba63d42cd3f7a1e19aac8d0f496ddf854c16ecc86c3804ac131861ce36c9d2baf1b67b179edecf5f0c2b76700dd97520fcf6e915b7cb42825de8001af3b8d1c32ee22f73a0a3f40a16d34f8c8d062058d640d6d1c1a1acfd9469c718c97690c9f9263947dafa6b6fddf4ee32566eecfd83b441d2334703a71f14ed16fa52217be2cfe2df57ce34c38414fe1649b6cea614abafb2760c0ff0fe74cc2d925de988d3ac6f856f60affa73cfe379a7b678e81e301f!
 b3b0106986b9d63a07cf1f7026fd5273309120c5c1f204992819083d706881!
 3bff09eb
78b01bf40092341f438dafc62a4b14ef167c380e88d28b7bfbe4ddf953e267726e9f3f5113ffe7361c0cf51d26df7f8edaf6fdbdf0db6d8df0d1aef188cfe78f465167cd7cafd273fb34eecdff862a4243b27787e96e86c9bf9ee2bfc2d9dd377a7a5b8e30213ce47130d4c3a1f54bd756ef08f38de2a11fc638eff0761a4e68f8a4e1edf0000000049454e44ae426082</data>
     </image>
 </images>
 <connections>
@@ -429,12 +657,22 @@
     <slot>slotOK()</slot>
     <slot>slotIPv6clicked()</slot>
     <slot>slotMacClicked()</slot>
+    <slot access="private">loadInfo()</slot>
 </slots>
 <functions>
     <function returnType="bool">checkRange(QString IP)</function>
     <function access="private">saveValue( QString File, QString oldKey, QString newKey, int occur )</function>
     <function>setDevice(QString Device)</function>
     <function access="private" returnType="QString">getValue( QString File, QString Key, int occur )</function>
+    <function access="private" returnType="QString">getNameForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getIpForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getMacForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getStatusForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getInPacketsForIdent(QString ident)</function>
+    <function access="private" returnType="QString">getInErrorsForIdent(QString ident)</function>
+    <function access="private" returnType="QString">getOutPacketsForIdent(QString ident)</function>
+    <function access="private" returnType="QString">getOutErrorsForIdent(QString ident)</function>
+    <function access="private" returnType="QString">getLineFromCommandOutput( QString command )</function>
 </functions>
 <layoutdefaults spacing="6" margin="11"/>
 </UI>

Modified: pcbsd/trunk/ethernetconfig/src/main.cpp
===================================================================
--- pcbsd/trunk/ethernetconfig/src/main.cpp	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/ethernetconfig/src/main.cpp	2007-03-07 18:56:00 UTC (rev 118)
@@ -30,15 +30,17 @@
 #include <kcmdlineargs.h>
 #include <klocale.h>
 #include <qtranslator.h>
+#include <qdesktopwidget.h>
 
 static const char description[] =
     I18N_NOOP("A KDE KPart Application");
 
-static const char version[] = "0.1";
+static const char version[] = "1.0";
 
 static KCmdLineOptions options[] =
  {
     { "+<device>", "Start the Network configuration on specified ethernet device.", 0 },
+    { "info <device>", "Show the info tab on the specified ethernet device.", 0 },
     KCmdLineLastOption
  };
 
@@ -72,7 +74,25 @@
 		QString Device = argv[1];
 		mainWin->setDevice( Device );
 		mainWin->setCaption(Device + " " + "configuration");
+
+       		// Center the dialog window
+   		QDesktopWidget *d = KApplication::desktop();
+   		mainWin->move(d->width() / 3, d->height() / 4);
 	        mainWin->show();
+	} else if ( argc == 3  ) {
+	 QString val = argv[1];
+	 if ( val != "info" ) {
+	   exit(1);  
+	 }
+	 
+	        QString Device = argv[2];
+		mainWin->setDevice( Device );
+		mainWin->setCaption(Device + " " + "configuration");
+		mainWin->showInfo();
+       		// Center the dialog window
+   		QDesktopWidget *d = KApplication::desktop();
+   		mainWin->move(d->width() / 3, d->height() / 4);
+		mainWin->show();
 	} else {
 		exit(1);
 	}

Modified: pcbsd/trunk/wificonfig/main.cpp
===================================================================
--- pcbsd/trunk/wificonfig/main.cpp	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/wificonfig/main.cpp	2007-03-07 18:56:00 UTC (rev 118)
@@ -10,7 +10,8 @@
  
  static KCmdLineOptions options[] =
  {
-    { "+<device>", "Start the Network configuration on specified ethernet device.", 0 },
+    { "+<device>", "Start the Network configuration on specified wireless device.", 0 },
+    { "info <device>", "Show the info tab on the specified wireless device.", 0 },
     KCmdLineLastOption
  };
    
@@ -31,7 +32,17 @@
 		QString Device = argv[1];
 		w.setDevice(Device);
 		w.show();
-	} else {
+     } else if ( argc == 3  ) {
+	 QString val = argv[1];
+	 if ( val != "info" ) {
+	   exit(1);  
+	 }
+	 
+	 QString Device = argv[2];
+	 w.setDevice(Device);
+	 w.showInfo();
+	 w.show();
+     } else {
 		exit(1);
      }
 

Modified: pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui
===================================================================
--- pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui	2007-03-07 18:56:00 UTC (rev 118)
@@ -49,6 +49,12 @@
                         <property name="name">
                             <cstring>textLabel1</cstring>
                         </property>
+                        <property name="frameShape">
+                            <enum>NoFrame</enum>
+                        </property>
+                        <property name="frameShadow">
+                            <enum>Plain</enum>
+                        </property>
                         <property name="text">
                             <string>Network address configuration</string>
                         </property>
@@ -124,82 +130,55 @@
                         <property name="title">
                             <string>Assign static IP address</string>
                         </property>
-                        <widget class="QLabel">
+                        <grid>
                             <property name="name">
-                                <cstring>textLabel3</cstring>
+                                <cstring>unnamed</cstring>
                             </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>8</x>
-                                    <y>31</y>
-                                    <width>70</width>
-                                    <height>21</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>IP:</string>
-                            </property>
-                            <property name="alignment">
-                                <set>AlignVCenter|AlignRight</set>
-                            </property>
-                        </widget>
-                        <widget class="QLabel">
-                            <property name="name">
-                                <cstring>textLabel3_2</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>10</x>
-                                    <y>60</y>
-                                    <width>70</width>
-                                    <height>21</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>Netmask:</string>
-                            </property>
-                            <property name="alignment">
-                                <set>AlignVCenter|AlignRight</set>
-                            </property>
-                        </widget>
-                        <widget class="QLineEdit">
-                            <property name="name">
-                                <cstring>lineNetmask</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>90</x>
-                                    <y>60</y>
-                                    <width>160</width>
-                                    <height>23</height>
-                                </rect>
-                            </property>
-                            <property name="alignment">
-                                <set>AlignHCenter</set>
-                            </property>
-                            <property name="inputMask">
-                                <string>999\.999\.999\.999; </string>
-                            </property>
-                        </widget>
-                        <widget class="QLineEdit">
-                            <property name="name">
-                                <cstring>lineIP</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>90</x>
-                                    <y>30</y>
-                                    <width>160</width>
-                                    <height>23</height>
-                                </rect>
-                            </property>
-                            <property name="alignment">
-                                <set>AlignHCenter</set>
-                            </property>
-                            <property name="inputMask">
-                                <string>999\.999\.999\.999; </string>
-                            </property>
-                        </widget>
+                            <widget class="QLabel" row="0" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>IP:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Netmask:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLineEdit" row="1" column="1">
+                                <property name="name">
+                                    <cstring>lineNetmask</cstring>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignHCenter</set>
+                                </property>
+                                <property name="inputMask">
+                                    <string>999\.999\.999\.999; </string>
+                                </property>
+                            </widget>
+                            <widget class="QLineEdit" row="0" column="1">
+                                <property name="name">
+                                    <cstring>lineIP</cstring>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignHCenter</set>
+                                </property>
+                                <property name="inputMask">
+                                    <string>999\.999\.999\.999; </string>
+                                </property>
+                            </widget>
+                        </grid>
                     </widget>
                     <spacer row="7" column="0" rowspan="1" colspan="2">
                         <property name="name">
@@ -280,126 +259,83 @@
                         <property name="title">
                             <string>Security Mode</string>
                         </property>
-                        <spacer>
+                        <grid>
                             <property name="name">
-                                <cstring>spacer6</cstring>
+                                <cstring>unnamed</cstring>
                             </property>
-                            <property name="orientation">
-                                <enum>Horizontal</enum>
-                            </property>
-                            <property name="sizeType">
-                                <enum>Expanding</enum>
-                            </property>
-                            <property name="sizeHint">
-                                <size>
-                                    <width>130</width>
-                                    <height>20</height>
-                                </size>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>7</x>
-                                    <y>150</y>
-                                    <width>130</width>
-                                    <height>20</height>
-                                </rect>
-                            </property>
-                        </spacer>
-                        <widget class="QRadioButton">
-                            <property name="name">
-                                <cstring>radioSecurityWPAEnt</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>10</x>
-                                    <y>100</y>
-                                    <width>251</width>
-                                    <height>20</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>WPA Enterprise</string>
-                            </property>
-                            <property name="accel">
-                                <string></string>
-                            </property>
-                        </widget>
-                        <widget class="QRadioButton">
-                            <property name="name">
-                                <cstring>radioSecurityDisabled</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>10</x>
-                                    <y>20</y>
-                                    <width>250</width>
-                                    <height>20</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>Disa&amp;bled</string>
-                            </property>
-                            <property name="accel">
-                                <string>Alt+B</string>
-                            </property>
-                            <property name="checked">
-                                <bool>true</bool>
-                            </property>
-                        </widget>
-                        <widget class="QRadioButton">
-                            <property name="name">
-                                <cstring>radioSecurityWEP</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>10</x>
-                                    <y>50</y>
-                                    <width>250</width>
-                                    <height>20</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>WEP</string>
-                            </property>
-                        </widget>
-                        <widget class="QRadioButton">
-                            <property name="name">
-                                <cstring>radioSecurityWPAPersonal</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>10</x>
-                                    <y>75</y>
-                                    <width>251</width>
-                                    <height>20</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>WPA Personal</string>
-                            </property>
-                            <property name="accel">
-                                <string></string>
-                            </property>
-                        </widget>
-                        <widget class="QPushButton">
-                            <property name="name">
-                                <cstring>pushSecurity</cstring>
-                            </property>
-                            <property name="geometry">
-                                <rect>
-                                    <x>150</x>
-                                    <y>150</y>
-                                    <width>110</width>
-                                    <height>20</height>
-                                </rect>
-                            </property>
-                            <property name="text">
-                                <string>Configure</string>
-                            </property>
-                            <property name="accel">
-                                <string></string>
-                            </property>
-                        </widget>
+                            <spacer row="4" column="0">
+                                <property name="name">
+                                    <cstring>spacer6</cstring>
+                                </property>
+                                <property name="orientation">
+                                    <enum>Horizontal</enum>
+                                </property>
+                                <property name="sizeType">
+                                    <enum>Expanding</enum>
+                                </property>
+                                <property name="sizeHint">
+                                    <size>
+                                        <width>130</width>
+                                        <height>20</height>
+                                    </size>
+                                </property>
+                            </spacer>
+                            <widget class="QRadioButton" row="3" column="0" rowspan="1" colspan="2">
+                                <property name="name">
+                                    <cstring>radioSecurityWPAEnt</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>WPA Enterprise</string>
+                                </property>
+                                <property name="accel">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QRadioButton" row="1" column="0" rowspan="1" colspan="2">
+                                <property name="name">
+                                    <cstring>radioSecurityWEP</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>WEP</string>
+                                </property>
+                            </widget>
+                            <widget class="QRadioButton" row="2" column="0" rowspan="1" colspan="2">
+                                <property name="name">
+                                    <cstring>radioSecurityWPAPersonal</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>WPA Personal</string>
+                                </property>
+                                <property name="accel">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QPushButton" row="4" column="1">
+                                <property name="name">
+                                    <cstring>pushSecurity</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Configure</string>
+                                </property>
+                                <property name="accel">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QRadioButton" row="0" column="0" rowspan="1" colspan="2">
+                                <property name="name">
+                                    <cstring>radioSecurityDisabled</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Disa&amp;bled</string>
+                                </property>
+                                <property name="accel">
+                                    <string>Alt+B</string>
+                                </property>
+                                <property name="checked">
+                                    <bool>true</bool>
+                                </property>
+                            </widget>
+                        </grid>
                     </widget>
                 </grid>
             </widget>
@@ -468,6 +404,282 @@
                     </spacer>
                 </grid>
             </widget>
+            <widget class="QWidget">
+                <property name="name">
+                    <cstring>TabPage</cstring>
+                </property>
+                <attribute name="title">
+                    <string>Info</string>
+                </attribute>
+                <grid>
+                    <property name="name">
+                        <cstring>unnamed</cstring>
+                    </property>
+                    <widget class="QLabel" row="0" column="0">
+                        <property name="name">
+                            <cstring>textInfoName</cstring>
+                        </property>
+                        <property name="text">
+                            <string></string>
+                        </property>
+                    </widget>
+                    <widget class="QGroupBox" row="2" column="0">
+                        <property name="name">
+                            <cstring>groupBox5</cstring>
+                        </property>
+                        <property name="title">
+                            <string>Traffic info</string>
+                        </property>
+                        <grid>
+                            <property name="name">
+                                <cstring>unnamed</cstring>
+                            </property>
+                            <widget class="QLabel" row="1" column="2">
+                                <property name="name">
+                                    <cstring>textPacketsOut</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="1">
+                                <property name="name">
+                                    <cstring>textPacketsIn</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="2">
+                                <property name="name">
+                                    <cstring>textPacketsOutErrors</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="1">
+                                <property name="name">
+                                    <cstring>textPacketsInErrors</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="0">
+                                <property name="name">
+                                    <cstring>textLabel6</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Packets:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="0">
+                                <property name="name">
+                                    <cstring>textLabel6_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Errors:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <spacer row="0" column="0">
+                                <property name="name">
+                                    <cstring>spacer8_2</cstring>
+                                </property>
+                                <property name="orientation">
+                                    <enum>Vertical</enum>
+                                </property>
+                                <property name="sizeType">
+                                    <enum>Expanding</enum>
+                                </property>
+                                <property name="sizeHint">
+                                    <size>
+                                        <width>20</width>
+                                        <height>20</height>
+                                    </size>
+                                </property>
+                            </spacer>
+                            <widget class="QLabel" row="0" column="1">
+                                <property name="name">
+                                    <cstring>textLabel5</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>In:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="0" column="2">
+                                <property name="name">
+                                    <cstring>textLabel5_2</cstring>
+                                </property>
+                                <property name="text">
+                                    <string>Out:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignCenter</set>
+                                </property>
+                            </widget>
+                        </grid>
+                    </widget>
+                    <widget class="QGroupBox" row="1" column="0">
+                        <property name="name">
+                            <cstring>groupBox4</cstring>
+                        </property>
+                        <property name="title">
+                            <string>Configuration info</string>
+                        </property>
+                        <grid>
+                            <property name="name">
+                                <cstring>unnamed</cstring>
+                            </property>
+                            <widget class="QLabel" row="0" column="1">
+                                <property name="name">
+                                    <cstring>textIP</cstring>
+                                </property>
+                                <property name="sizePolicy">
+                                    <sizepolicy>
+                                        <hsizetype>7</hsizetype>
+                                        <vsizetype>5</vsizetype>
+                                        <horstretch>0</horstretch>
+                                        <verstretch>0</verstretch>
+                                    </sizepolicy>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="0" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_3</cstring>
+                                </property>
+                                <property name="sizePolicy">
+                                    <sizepolicy>
+                                        <hsizetype>1</hsizetype>
+                                        <vsizetype>5</vsizetype>
+                                        <horstretch>0</horstretch>
+                                        <verstretch>0</verstretch>
+                                    </sizepolicy>
+                                </property>
+                                <property name="text">
+                                    <string>IP:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2_2</cstring>
+                                </property>
+                                <property name="sizePolicy">
+                                    <sizepolicy>
+                                        <hsizetype>1</hsizetype>
+                                        <vsizetype>5</vsizetype>
+                                        <horstretch>0</horstretch>
+                                        <verstretch>0</verstretch>
+                                    </sizepolicy>
+                                </property>
+                                <property name="text">
+                                    <string>Netmask:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="1" column="1">
+                                <property name="name">
+                                    <cstring>textNetmask</cstring>
+                                </property>
+                                <property name="sizePolicy">
+                                    <sizepolicy>
+                                        <hsizetype>7</hsizetype>
+                                        <vsizetype>5</vsizetype>
+                                        <horstretch>0</horstretch>
+                                        <verstretch>0</verstretch>
+                                    </sizepolicy>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="3" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2_2_2</cstring>
+                                </property>
+                                <property name="sizePolicy">
+                                    <sizepolicy>
+                                        <hsizetype>1</hsizetype>
+                                        <vsizetype>5</vsizetype>
+                                        <horstretch>0</horstretch>
+                                        <verstretch>0</verstretch>
+                                    </sizepolicy>
+                                </property>
+                                <property name="text">
+                                    <string>Status:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="0">
+                                <property name="name">
+                                    <cstring>textLabel3_2_2_2_2</cstring>
+                                </property>
+                                <property name="sizePolicy">
+                                    <sizepolicy>
+                                        <hsizetype>1</hsizetype>
+                                        <vsizetype>5</vsizetype>
+                                        <horstretch>0</horstretch>
+                                        <verstretch>0</verstretch>
+                                    </sizepolicy>
+                                </property>
+                                <property name="text">
+                                    <string>Mac:</string>
+                                </property>
+                                <property name="alignment">
+                                    <set>AlignVCenter|AlignRight</set>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="3" column="1">
+                                <property name="name">
+                                    <cstring>textStatus</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                            <widget class="QLabel" row="2" column="1">
+                                <property name="name">
+                                    <cstring>textMac</cstring>
+                                </property>
+                                <property name="text">
+                                    <string></string>
+                                </property>
+                            </widget>
+                        </grid>
+                    </widget>
+                </grid>
+            </widget>
         </widget>
         <widget class="QPushButton" row="2" column="3">
             <property name="name">
@@ -610,10 +822,14 @@
     <tabstop>checkDHCP</tabstop>
     <tabstop>lineIP</tabstop>
     <tabstop>lineNetmask</tabstop>
+    <tabstop>pushOK</tabstop>
     <tabstop>pushApply</tabstop>
     <tabstop>buttonCancel</tabstop>
     <tabstop>radioSecurityDisabled</tabstop>
     <tabstop>pushSecurity</tabstop>
+    <tabstop>checkDisableWireless</tabstop>
+    <tabstop>checkMAC</tabstop>
+    <tabstop>lineMAC</tabstop>
 </tabstops>
 <includes>
     <include location="local" impldecl="in declaration">qmessagebox.h</include>
@@ -623,6 +839,8 @@
     <include location="local" impldecl="in declaration">wepconfig.h</include>
     <include location="local" impldecl="in declaration">dialogwpapersonal.h</include>
     <include location="local" impldecl="in declaration">dialogwpaenterprise.h</include>
+    <include location="local" impldecl="in declaration">qdesktopwidget.h</include>
+    <include location="local" impldecl="in declaration">qapplication.h</include>
     <include location="local" impldecl="in implementation">wificonfigwidgetbase.ui.h</include>
 </includes>
 <variables>
@@ -658,6 +876,7 @@
     <slot access="private">slotCheckDisabled()</slot>
     <slot access="private">slotOK()</slot>
     <slot access="private">slotMACClicked()</slot>
+    <slot access="private">loadInfo()</slot>
 </slots>
 <functions>
     <function>setDevice( QString Device )</function>
@@ -665,6 +884,17 @@
     <function access="private">saveValue( QString File, QString oldKey, QString newKey, int occur )</function>
     <function access="private" returnType="QString">getValue( QString File, QString Key, int occur )</function>
     <function access="private">runCommand( QString Command )</function>
+    <function access="private" returnType="QString">getLineFromCommandOutput( QString command )</function>
+    <function access="private" returnType="QString">getNetmaskForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getOutErrorsForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getOutPacketsForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getInErrorsForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getInPacketsForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getStatusForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getMacForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getIpForIdent( QString ident )</function>
+    <function access="private" returnType="QString">getNameForIdent( QString ident )</function>
+    <function>showInfo()</function>
 </functions>
 <layoutdefaults spacing="6" margin="11"/>
 </UI>

Modified: pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui.h
===================================================================
--- pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui.h	2007-03-05 23:03:20 UTC (rev 117)
+++ pcbsd/trunk/wificonfig/wificonfigwidgetbase.ui.h	2007-03-07 18:56:00 UTC (rev 118)
@@ -25,7 +25,7 @@
     // If the user disabled the device, do so now
     if ( checkDisableWireless->isChecked() )
     {
-	 saveValue( "/etc/rc.conf", "ifconfig_" + DeviceName, "ifconfig_" + DeviceName + "=\"OFF\"", -1);
+	 saveValue( "/etc/rc.conf", "ifconfig_" + DeviceName, "", -1);
 	 runCommand("ifconfig " + DeviceName + " down");
 	 return;
     }
@@ -195,7 +195,8 @@
 
 
 void wificonfigWidgetBase::setDevice( QString Device )
-{
+{ 
+    
 QString tmp, tmp2;
 bool ok;
 
@@ -211,9 +212,13 @@
 WPAEPassword="";
 
 
-	// Save the device name for later
-	DeviceName = Device;
+  // Save the device name for later
+  DeviceName = Device;
 
+  // Center the dialog window
+ QDesktopWidget *d = QApplication::desktop();
+ move(d->width() / 3, d->height() / 4);
+  
    // Get the ifconfig string
    tmp = getValue( "/etc/rc.conf", "ifconfig_" + DeviceName + "=", 1 );
    if ( tmp != "" ) {
@@ -419,6 +424,9 @@
    
    slotCheckSecurityRadio();
    
+   
+   // Start loading the info tab
+   loadInfo();
 }
 
 
@@ -798,3 +806,219 @@
 	groupMAC->setEnabled(TRUE);
    }
 }
+
+
+QString wificonfigWidgetBase::getLineFromCommandOutput( QString command )
+{
+	FILE *file = popen(command,"r"); 
+	
+	char buffer[100];
+	
+	QString line = ""; 
+	char firstChar;
+	
+	if ((firstChar = fgetc(file)) != -1){
+		line += firstChar;
+		line += fgets(buffer,100,file);
+	}
+	
+	
+	pclose(file);
+	
+	
+	return line;
+}
+
+
+QString wificonfigWidgetBase::getNetmaskForIdent( QString ident )
+{
+int num;
+    QString RealIP, tmp;
+    
+	QString command = "ifconfig " +ident + " | grep \"netmask\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString net= "";
+	
+	if (inputLine != "" && inputLine.find("netmask ") != -1){
+		
+		net = inputLine.remove(0, inputLine.find("netmask ") + 8);
+		net.truncate(net.find(" "));
+		
+		num = net.mid(2, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = tmp;
+		
+		num = net.mid(4, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = RealIP + "." + tmp ;
+		
+		num = net.mid(6, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = RealIP + "." + tmp ;
+		
+		num = net.mid(8, 2).toInt(0, 16);
+		tmp.setNum(num);
+		RealIP = RealIP + "." + tmp ;
+		
+		//QMessageBox::information( this, "Application name",  "IP: " + RealIP );
+		
+	}
+	
+	return RealIP;
+
+}
+
+
+QString wificonfigWidgetBase::getOutErrorsForIdent( QString ident )
+{
+         QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 7, 7 );
+	}
+	
+	return packets;    
+}
+
+
+QString wificonfigWidgetBase::getOutPacketsForIdent( QString ident )
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 6, 6 );
+	}
+	
+	return packets;
+}
+
+
+QString wificonfigWidgetBase::getInErrorsForIdent( QString ident )
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 5, 5 );
+	}
+	
+	return packets;
+}
+
+
+QString wificonfigWidgetBase::getInPacketsForIdent( QString ident )
+{
+        QString command = "netstat -I " +ident + " | grep \"Link\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString packets = "";
+	
+	if (inputLine != "" && inputLine.find("Link") != -1){
+		inputLine = inputLine.simplifyWhiteSpace();
+		packets = inputLine.section(' ', 4, 4 );
+	}
+	
+	return packets;
+}
+
+
+QString wificonfigWidgetBase::getStatusForIdent( QString ident )
+{
+    	QString command = "ifconfig " +ident + " | grep \"status\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString status = "";
+	
+	if (inputLine != "" && inputLine.find("status") != -1){
+		
+		status = inputLine.remove(0, inputLine.find(" ") + 1);
+		status.truncate(inputLine.find("\n") );
+	
+	}
+	
+	return status;
+}
+
+
+QString wificonfigWidgetBase::getMacForIdent( QString ident )
+{
+    	QString command = "ifconfig " +ident + " | grep \"ether\"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString ether = "";
+	
+	if (inputLine != "" && inputLine.find("ether") != -1){
+		
+		ether = inputLine.remove(0, inputLine.find(" ") + 1);
+	
+	}
+	
+	return ether;
+}
+
+
+QString wificonfigWidgetBase::getIpForIdent( QString ident )
+{
+	QString command = "ifconfig " +ident + " | grep \"inet \"";
+	QString inputLine = getLineFromCommandOutput(command);
+	QString ip= "";
+	
+	if (inputLine != "" && inputLine.find("inet ") != -1){
+		
+		ip = inputLine.remove(0, inputLine.find("inet ") + 5);
+		ip.truncate(ip.find(" "));
+		
+		
+	}
+	
+	return ip;
+}
+
+
+QString wificonfigWidgetBase::getNameForIdent( QString ident )
+{
+	QString command = "dmesg | grep " + ident;
+	QString inputLine = getLineFromCommandOutput(command);
+	QString name = "";
+	
+	inputLine = inputLine.remove (0, inputLine.find("<") + 1);
+	inputLine.truncate(inputLine.find(">"));
+	name = inputLine;
+	
+	return name;	
+}
+
+
+void wificonfigWidgetBase::loadInfo()
+{
+  // Get all the device information for the info tab
+  if ( textInfoName->text().isEmpty() ) {
+  textInfoName->setText(getNameForIdent(DeviceName) );
+  }
+
+
+  textIP->setText(getIpForIdent(DeviceName) );
+  textNetmask->setText(getNetmaskForIdent( DeviceName ) );
+  textMac->setText(getMacForIdent( DeviceName ) );
+  textStatus->setText(getStatusForIdent( DeviceName ) );
+
+  // Get the packet status for this device
+  textPacketsIn->setText(getInPacketsForIdent( DeviceName) );
+  textPacketsInErrors->setText( getInErrorsForIdent( DeviceName) );
+  textPacketsOut->setText(getOutPacketsForIdent( DeviceName) );
+  textPacketsOutErrors->setText(getOutErrorsForIdent( DeviceName) );
+
+  // Connect the slot to refresh
+  QTimer::singleShot(3000,  this,  SLOT(loadInfo() ) );
+}
+
+
+void wificonfigWidgetBase::showInfo()
+{
+     tabMainWidget->showPage( tabMainWidget->page(3) );
+}



More information about the Commits mailing list