summaryrefslogtreecommitdiff
path: root/noncore/settings/networksettings/wlan/infoimp.cpp
authorbenmeyer <benmeyer>2002-10-25 15:47:02 (UTC)
committer benmeyer <benmeyer>2002-10-25 15:47:02 (UTC)
commite26cf0e83db11d6d135176f874c0781b4b6481d2 (patch) (side-by-side diff)
treea7fbeb28b804f91f76eaa24ec23449bbd623bd45 /noncore/settings/networksettings/wlan/infoimp.cpp
parentd0d87d596d64cc1d5ef6322896c68883e4dfb5d0 (diff)
downloadopie-e26cf0e83db11d6d135176f874c0781b4b6481d2.zip
opie-e26cf0e83db11d6d135176f874c0781b4b6481d2.tar.gz
opie-e26cf0e83db11d6d135176f874c0781b4b6481d2.tar.bz2
Adding infoimp class
Diffstat (limited to 'noncore/settings/networksettings/wlan/infoimp.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/settings/networksettings/wlan/infoimp.cpp55
1 files changed, 55 insertions, 0 deletions
diff --git a/noncore/settings/networksettings/wlan/infoimp.cpp b/noncore/settings/networksettings/wlan/infoimp.cpp
new file mode 100644
index 0000000..e1eef81
--- a/dev/null
+++ b/noncore/settings/networksettings/wlan/infoimp.cpp
@@ -0,0 +1,55 @@
+#include "infoimp.h"
+#include "wextensions.h"
+#include <qtimer.h>
+#include <qprogressbar.h>
+#include <qlabel.h>
+
+/**
+ * Constructor. If wireless extensions are enabled on device name then
+ * start a timer that every second will update the information.
+ */
+WlanInfoImp::WlanInfoImp( QWidget* parent, const char* name, WFlags fl): WlanInfo(parent, name, fl){
+ WExtensions *wExtensions = new WExtensions(name);
+ if(!wExtensions->doesHaveWirelessExtensions()){
+ delete wExtensions;
+ qDebug("No extension");
+ return;
+ }
+ delete wExtensions;
+ timer = new QTimer( this );
+ connect( timer, SIGNAL(timeout()), this, SLOT(update()));
+ timer->start( 1000, false );
+}
+
+/**
+ * Updates the information about the wireless device.
+ */
+void WlanInfoImp::update(){
+ WExtensions *wExtensions = new WExtensions(this->name());
+ if(!wExtensions->doesHaveWirelessExtensions()){
+ qDebug("No extension");
+ delete wExtensions;
+ timer->stop();
+ return;
+ }
+ essidLabel->setText(wExtensions->essid());
+ apLabel->setText(wExtensions->ap());
+ stationLabel->setText(wExtensions->station());
+ modeLabel->setText(wExtensions->mode());
+ freqLabel->setText(QString("%1 GHz").arg(wExtensions->frequency()));
+ int signal = 0;
+ int noise = 0;
+ int quality = 0;
+ wExtensions->stats(signal, noise, quality);
+ if(signalProgressBar->progress() != signal)
+ signalProgressBar->setProgress(signal);
+ if(noiseProgressBar->progress() != noise)
+ noiseProgressBar->setProgress(noise);
+ if(qualityProgressBar->progress() != quality)
+ qualityProgressBar->setProgress(quality);
+ rateLabel->setText(QString("%1 Mb/s").arg(wExtensions->rate()));
+ delete wExtensions;
+}
+
+// infoimp.cpp
+