summaryrefslogtreecommitdiff
path: root/noncore/applets/wirelessapplet/wireless.cpp
Unidiff
Diffstat (limited to 'noncore/applets/wirelessapplet/wireless.cpp') (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/applets/wirelessapplet/wireless.cpp50
1 files changed, 31 insertions, 19 deletions
diff --git a/noncore/applets/wirelessapplet/wireless.cpp b/noncore/applets/wirelessapplet/wireless.cpp
index cbaf5d6..dc9742a 100644
--- a/noncore/applets/wirelessapplet/wireless.cpp
+++ b/noncore/applets/wirelessapplet/wireless.cpp
@@ -21,12 +21,13 @@
21#include "connect3.xpm" 21#include "connect3.xpm"
22#include "connect4.xpm" 22#include "connect4.xpm"
23#include "connect5.xpm" 23#include "connect5.xpm"
24#include "nowireless.xpm" 24#include "nowireless.xpm"
25 25
26/* OPIE */ 26/* OPIE */
27#include <opie2/onetwork.h>
27#include <opie2/otaskbarapplet.h> 28#include <opie2/otaskbarapplet.h>
28#include <qpe/qpeapplication.h> 29#include <qpe/qpeapplication.h>
29#include <qpe/config.h> 30#include <qpe/config.h>
30 31
31/* QT */ 32/* QT */
32#include <qpoint.h> 33#include <qpoint.h>
@@ -204,28 +205,35 @@ void WirelessControl::writeConfigEntry( const char *entry, int val )
204} 205}
205 206
206//=========================================================================== 207//===========================================================================
207 208
208WirelessApplet::WirelessApplet( QWidget *parent, const char *name ) 209WirelessApplet::WirelessApplet( QWidget *parent, const char *name )
209 : QWidget( parent, name ), visualStyle( STYLE_ANTENNA ), 210 : QWidget( parent, name ), visualStyle( STYLE_ANTENNA ),
210 timer( 0 ), interface( 0 ), 211 timer( 0 ), interface( 0 ), oldiface( 0 ),
211 rocESSID( false ), rocFREQ( false ), rocAP( false ), rocMODE( false ) 212 rocESSID( false ), rocFREQ( false ), rocAP( false ), rocMODE( false )
212{ 213{
213 setFixedHeight( 18 ); 214 setFixedHeight( 18 );
214 setFixedWidth( 14 ); 215 setFixedWidth( 14 );
215 network = new MWirelessNetwork();
216 status = new WirelessControl( this, this, "wireless status" ); 216 status = new WirelessControl( this, this, "wireless status" );
217} 217}
218 218
219void WirelessApplet::checkInterface() 219void WirelessApplet::checkInterface()
220{ 220{
221 interface = network->getFirstInterface(); 221 interface = 0L;
222 ONetwork* net = ONetwork::instance();
223 ONetwork::InterfaceIterator it = net->iterator();
224
225 while ( it.current() && !it.current()->isWireless() ) ++it;
226
227 if ( it.current() && it.current()->isWireless() )
228 interface = static_cast<OWirelessNetworkInterface*>( it.current() );
229
222 if ( interface ) 230 if ( interface )
223 { 231 {
224#ifdef MDEBUG 232#ifdef MDEBUG
225 qDebug( "WIFIAPPLET: using interface '%s'", ( const char* ) interface->getName() ); 233 qDebug( "WIFIAPPLET: using interface '%s'", ( const char* ) interface->name() );
226#endif 234#endif
227 235
228 } 236 }
229 else 237 else
230 { 238 {
231#ifdef MDEBUG 239#ifdef MDEBUG
@@ -241,13 +249,13 @@ void WirelessApplet::renewDHCP()
241 qDebug( "WIFIAPPLET: Going to request a DHCP configuration renew." ); 249 qDebug( "WIFIAPPLET: Going to request a DHCP configuration renew." );
242#endif 250#endif
243 251
244 QString pidfile; 252 QString pidfile;
245 if ( !interface ) 253 if ( !interface )
246 return ; 254 return ;
247 QString ifacename( interface->getName() ); 255 QString ifacename( interface->name() );
248 256
249 // At first we are trying dhcpcd 257 // At first we are trying dhcpcd
250 258
251 pidfile.sprintf( "/var/run/dhcpcd-%s.pid", ( const char* ) ifacename ); 259 pidfile.sprintf( "/var/run/dhcpcd-%s.pid", ( const char* ) ifacename );
252#ifdef MDEBUG 260#ifdef MDEBUG
253 qDebug( "WIFIAPPLET: dhcpcd pidfile is '%s'", ( const char* ) pidfile ); 261 qDebug( "WIFIAPPLET: dhcpcd pidfile is '%s'", ( const char* ) pidfile );
@@ -314,13 +322,15 @@ void WirelessApplet::displayStyleChange( int style )
314 322
315WirelessApplet::~WirelessApplet() 323WirelessApplet::~WirelessApplet()
316{} 324{}
317 325
318void WirelessApplet::timerEvent( QTimerEvent* ) 326void WirelessApplet::timerEvent( QTimerEvent* )
319{ 327{
320 MWirelessNetworkInterface * iface = ( MWirelessNetworkInterface* ) interface; 328 /*
329
330 OWirelessNetworkInterface* iface = interface;
321 331
322 if ( iface ) 332 if ( iface )
323 { 333 {
324 bool statResult = iface->updateStatistics(); 334 bool statResult = iface->updateStatistics();
325 if ( !statResult ) 335 if ( !statResult )
326 { 336 {
@@ -336,25 +346,27 @@ void WirelessApplet::timerEvent( QTimerEvent* )
336 } 346 }
337 347
338 if ( status->isVisible() ) 348 if ( status->isVisible() )
339 updatePopupWindow(); 349 updatePopupWindow();
340 } 350 }
341 else checkInterface(); 351 else checkInterface();
352
353 */
342} 354}
343 355
344void WirelessApplet::mousePressEvent( QMouseEvent * ) 356void WirelessApplet::mousePressEvent( QMouseEvent * )
345{ 357{
346 if ( status->isVisible() ) 358 if ( status->isVisible() )
347 status->hide(); 359 status->hide();
348 else 360 else
349 status->show( true ); 361 status->show( true );
350} 362}
351 363
352bool WirelessApplet::mustRepaint() 364bool WirelessApplet::mustRepaint()
353{ 365{
354 MWirelessNetworkInterface * iface = ( MWirelessNetworkInterface* ) interface; 366 OWirelessNetworkInterface* iface = interface;
355 367
356 // check if there are enough changes to justify a (flickering) repaint 368 // check if there are enough changes to justify a (flickering) repaint
357 369
358 // has the interface changed? 370 // has the interface changed?
359 371
360 if ( iface != oldiface ) 372 if ( iface != oldiface )
@@ -382,59 +394,59 @@ bool WirelessApplet::mustRepaint()
382 if ( pixmap && ( pixmap != oldpixmap ) ) 394 if ( pixmap && ( pixmap != oldpixmap ) )
383 { 395 {
384 oldpixmap = pixmap; 396 oldpixmap = pixmap;
385 return true; 397 return true;
386 } 398 }
387 399
388 int noiseH = iface->noisePercent() * ( height() - 3 ) / 100; 400 int noiseH = 50; // iface->noisePercent() * ( height() - 3 ) / 100;
389 int signalH = iface->signalPercent() * ( height() - 3 ) / 100; 401 int signalH = iface->signalStrength() * ( height() - 3 ) / 100;
390 int qualityH = iface->qualityPercent() * ( height() - 3 ) / 100; 402 int qualityH = 50; // iface->qualityPercent() * ( height() - 3 ) / 100;
391 403
392 if ( ( noiseH != oldnoiseH ) 404 if ( ( noiseH != oldnoiseH )
393 || ( signalH != oldsignalH ) 405 || ( signalH != oldsignalH )
394 || ( qualityH != oldqualityH ) ) 406 || ( qualityH != oldqualityH ) )
395 { 407 {
396 oldnoiseH = noiseH; 408 oldnoiseH = noiseH;
397 oldsignalH = signalH; 409 oldsignalH = signalH;
398 oldqualityH = qualityH; 410 oldqualityH = qualityH;
399 return true; 411 return true;
400 } 412 }
401 413
402 if ( rocESSID && ( oldESSID != iface->essid ) ) 414 if ( rocESSID && ( oldESSID != iface->SSID() ) )
403 { 415 {
404#ifdef MDEBUG 416#ifdef MDEBUG
405 qDebug( "WIFIAPPLET: ESSID has changed." ); 417 qDebug( "WIFIAPPLET: ESSID has changed." );
406#endif 418#endif
407 renewDHCP(); 419 renewDHCP();
408 } 420 }
409 else if ( rocFREQ && ( oldFREQ != iface->freq ) ) 421 else if ( rocFREQ && ( oldFREQ != iface->frequency() ) )
410 { 422 {
411#ifdef MDEBUG 423#ifdef MDEBUG
412 qDebug( "WIFIAPPLET: FREQ has changed." ); 424 qDebug( "WIFIAPPLET: FREQ has changed." );
413#endif 425#endif
414 renewDHCP(); 426 renewDHCP();
415 } 427 }
416 else if ( rocAP && ( oldAP != iface->APAddr ) ) 428 else if ( rocAP && ( oldAP != iface->associatedAP().toString() ) )
417 { 429 {
418#ifdef MDEBUG 430#ifdef MDEBUG
419 qDebug( "WIFIAPPLET: AP has changed." ); 431 qDebug( "WIFIAPPLET: AP has changed." );
420#endif 432#endif
421 renewDHCP(); 433 renewDHCP();
422 } 434 }
423 else if ( rocMODE && ( oldMODE != iface->mode ) ) 435 else if ( rocMODE && ( oldMODE != iface->mode() ) )
424 { 436 {
425#ifdef MDEBUG 437#ifdef MDEBUG
426 qDebug( "WIFIAPPLET: MODE has changed." ); 438 qDebug( "WIFIAPPLET: MODE has changed." );
427#endif 439#endif
428 renewDHCP(); 440 renewDHCP();
429 } 441 }
430 442
431 oldESSID = iface->essid; 443 oldESSID = iface->SSID();
432 oldMODE = iface->mode; 444 oldMODE = iface->mode();
433 oldFREQ = iface->freq; 445 oldFREQ = iface->frequency();
434 oldAP = iface->APAddr; 446 oldAP = iface->associatedAP().toString();
435 447
436 return false; 448 return false;
437} 449}
438 450
439void WirelessApplet::updatePopupWindow() 451void WirelessApplet::updatePopupWindow()
440{ 452{