summaryrefslogtreecommitdiff
Side-by-side diff
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--noncore/applets/wirelessapplet/wireless.cpp68
-rw-r--r--noncore/applets/wirelessapplet/wireless.h12
2 files changed, 59 insertions, 21 deletions
diff --git a/noncore/applets/wirelessapplet/wireless.cpp b/noncore/applets/wirelessapplet/wireless.cpp
index 15ccc58..183aab8 100644
--- a/noncore/applets/wirelessapplet/wireless.cpp
+++ b/noncore/applets/wirelessapplet/wireless.cpp
@@ -18,4 +18,5 @@
#include <qapplication.h>
#include <qpe/qpeapplication.h>
+#include <qpe/config.h>
#include <qpoint.h>
@@ -50,4 +51,8 @@ WirelessControl::WirelessControl( WirelessApplet *applet, QWidget *parent, const
{
+ readConfig();
+ writeConfigEntry( "UpdateFrequency", updateFrequency );
+ writeConfigEntry( "DisplayStyle", displayStyle );
+
setFrameStyle( QFrame::PopupPanel | QFrame::Raised );
QGridLayout *grid = new QGridLayout( this, 3, 2, 6, 2, "top layout" );
@@ -78,5 +83,5 @@ WirelessControl::WirelessControl( WirelessApplet *applet, QWidget *parent, const
r2->setFocusPolicy( QWidget::NoFocus );
group->setFocusPolicy( QWidget::NoFocus );
- group->setButton( STYLE_ANTENNA );
+ group->setButton( displayStyle );
grid->addWidget( group, 0, 1 );
@@ -100,5 +105,6 @@ WirelessControl::WirelessControl( WirelessApplet *applet, QWidget *parent, const
updateLabel = new QLabel( this );
- updateLabel->setText( "Update every 500 ms" );
+ text.sprintf( "Update every %d s", updateFrequency );
+ updateLabel->setText( text );
grid->addWidget( updateLabel, 2, 1 );
@@ -106,9 +112,9 @@ WirelessControl::WirelessControl( WirelessApplet *applet, QWidget *parent, const
QSlider* updateSlider = new QSlider( QSlider::Horizontal, this );
- updateSlider->setRange( 50, 999 );
- updateSlider->setValue( 500 );
+ updateSlider->setRange( 0, 9 );
+ updateSlider->setValue( updateFrequency );
updateSlider->setTickmarks( QSlider::Both );
- updateSlider->setTickInterval( 100 );
- updateSlider->setSteps( 50, 50 );
+ updateSlider->setTickInterval( 1 );
+ updateSlider->setSteps( 1, 1 );
updateSlider->setFocusPolicy( QWidget::NoFocus );
grid->addWidget( updateSlider, 1, 1 );
@@ -119,7 +125,9 @@ WirelessControl::WirelessControl( WirelessApplet *applet, QWidget *parent, const
setFocusPolicy( QWidget::NoFocus );
- connect( group, SIGNAL( clicked( int ) ),
- applet, SLOT( styleChange( int ) ) );
+ applet->displayStyleChange( displayStyle );
+ applet->updateDelayChange( updateFrequency );
+ connect( group, SIGNAL( clicked( int ) ),
+ this, SLOT( displayStyleChange( int ) ) );
}
@@ -127,7 +135,14 @@ void WirelessControl::updateDelayChange( int delay )
{
QString text;
- text.sprintf( "Update every %3d ms", delay );
+ text.sprintf( "Update every %d s", delay );
updateLabel->setText( text );
applet->updateDelayChange( delay );
+ writeConfigEntry( "UpdateFrequency", delay );
+}
+
+void WirelessControl::displayStyleChange( int style )
+{
+ applet->displayStyleChange( style );
+ writeConfigEntry( "DisplayStyle", style );
}
@@ -146,17 +161,30 @@ void WirelessControl::show ( bool )
}
+void WirelessControl::readConfig()
+{
+ Config cfg( "qpe" );
+ cfg.setGroup( "Wireless" );
+
+ updateFrequency = cfg.readNumEntry( "UpdateFrequency", 2 );
+ displayStyle = cfg. readNumEntry( "DisplayStyle", STYLE_ANTENNA );
+}
+
+void WirelessControl::writeConfigEntry( const char *entry, int val )
+{
+ Config cfg( "qpe" );
+ cfg.setGroup( "Wireless" );
+ cfg.writeEntry( entry, val );
+}
//===========================================================================
WirelessApplet::WirelessApplet( QWidget *parent, const char *name )
- : QWidget( parent, name ), visualStyle( STYLE_ANTENNA ), interface( 0 )
+ : QWidget( parent, name ), visualStyle( STYLE_ANTENNA ),
+ timer( 0 ), interface( 0 )
{
setFixedHeight( 18 );
setFixedWidth( 14 );
- status = new WirelessControl( this, 0, "wireless status" );
-
network = new MWirelessNetwork();
-
- timer = startTimer( 500 );
+ status = new WirelessControl( this, 0, "wireless status" );
}
@@ -177,16 +205,20 @@ void WirelessApplet::checkInterface()
void WirelessApplet::updateDelayChange( int delay )
{
+ if ( timer )
killTimer( timer );
+ delay *= 1000;
+ if ( delay == 0 )
+ delay = 50;
timer = startTimer( delay );
}
-WirelessApplet::~WirelessApplet()
+void WirelessApplet::displayStyleChange( int style )
{
+ visualStyle = style;
+ repaint();
}
-void WirelessApplet::styleChange( int style )
+WirelessApplet::~WirelessApplet()
{
- visualStyle = style;
- repaint();
}
diff --git a/noncore/applets/wirelessapplet/wireless.h b/noncore/applets/wirelessapplet/wireless.h
index d45ac68..45c519d 100644
--- a/noncore/applets/wirelessapplet/wireless.h
+++ b/noncore/applets/wirelessapplet/wireless.h
@@ -36,4 +36,7 @@ public:
void show( bool );
+ void readConfig();
+ void writeConfigEntry( const char* entry, int val );
+
MGraph* mgraph;
QLabel* statusLabel;
@@ -42,7 +45,12 @@ public:
public slots:
void updateDelayChange( int );
+ void displayStyleChange( int );
private:
WirelessApplet* applet;
+
+ int displayStyle;
+ int updateFrequency;
+
};
@@ -57,7 +65,5 @@ public:
virtual void timerEvent( QTimerEvent* );
void updateDelayChange( int delay );
-
-public slots:
- void styleChange( int );
+ void displayStyleChange( int style );
private: