summaryrefslogtreecommitdiff
authormickeyl <mickeyl>2003-04-30 18:50:47 (UTC)
committer mickeyl <mickeyl>2003-04-30 18:50:47 (UTC)
commite6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0 (patch) (unidiff)
tree06f7877ef85b91531c4f75681e1cd91881703c18
parent027458b66cffbfaf07c394a1a622a1f01970e11c (diff)
downloadopie-e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0.zip
opie-e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0.tar.gz
opie-e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0.tar.bz2
- autoscrolling for hex- and logwindow
- revamped statistics window
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/README4
-rw-r--r--noncore/net/wellenreiter/gui/hexwindow.cpp13
-rw-r--r--noncore/net/wellenreiter/gui/hexwindow.h6
-rw-r--r--noncore/net/wellenreiter/gui/logwindow.cpp15
-rw-r--r--noncore/net/wellenreiter/gui/statwindow.cpp36
-rw-r--r--noncore/net/wellenreiter/gui/statwindow.h11
-rw-r--r--noncore/net/wellenreiter/gui/wellenreiter.cpp18
-rwxr-xr-xnoncore/net/wellenreiter/makedist.sh2
8 files changed, 47 insertions, 58 deletions
diff --git a/noncore/net/wellenreiter/README b/noncore/net/wellenreiter/README
index 291f1fe..ec621b9 100644
--- a/noncore/net/wellenreiter/README
+++ b/noncore/net/wellenreiter/README
@@ -1,21 +1,21 @@
1/************************************************************************ 1/************************************************************************
2/* W e l l e n r e i t e r I I 2/* W e l l e n r e i t e r I I
3/* =============================== 3/* ===============================
4/* 4/*
5/* Version: ALPHA-2-April 5/* Version: April BETA
6/************************************************************************ 6/************************************************************************
7 7
8---------------------------------------------------- 8----------------------------------------------------
9Release Notes for Opie-ALPHA Version April 2003 9Release Notes for Opie-Wellenreiter Version BETA April 2003
10---------------------------------------------------- 10----------------------------------------------------
11 11
12===================== 12=====================
13= Supported Devices 13= Supported Devices
14===================== 14=====================
15 15
16- HERMES chipset [ orinoco or hostap ], e.g. Lucent/Agere cards, ... 16- HERMES chipset [ orinoco or hostap ], e.g. Lucent/Agere cards, ...
17- PRISM2 chipset [ orinoco or hostap ], e.g. D-Link, Buffallo, ... 17- PRISM2 chipset [ orinoco or hostap ], e.g. D-Link, Buffallo, ...
18- SYMBOL/SPECTRUM chipset [ orinoco ], e.g. Symbol Spectrum 24, Socket Lowpower CF, ... 18- SYMBOL/SPECTRUM chipset [ orinoco ], e.g. Symbol Spectrum 24, Socket Lowpower CF, ...
19- CISCO chipset 19- CISCO chipset
20- wlan-ng supported chipsets 20- wlan-ng supported chipsets
21 21
diff --git a/noncore/net/wellenreiter/gui/hexwindow.cpp b/noncore/net/wellenreiter/gui/hexwindow.cpp
index 8b17285..2f011ca 100644
--- a/noncore/net/wellenreiter/gui/hexwindow.cpp
+++ b/noncore/net/wellenreiter/gui/hexwindow.cpp
@@ -12,34 +12,33 @@
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14**********************************************************************/ 14**********************************************************************/
15 15
16#include "hexwindow.h" 16#include "hexwindow.h"
17#include <qmultilineedit.h> 17#include <qmultilineedit.h>
18 18
19MHexWindow::MHexWindow( QWidget * parent, const char * name, WFlags f ) 19MHexWindow::MHexWindow( QWidget * parent, const char * name, WFlags f )
20 :QVBox( parent, name, f ) 20 :QVBox( parent, name, f )
21{ 21{
22 ledit = new QMultiLineEdit( this ); 22 ledit = new QMultiLineEdit( this );
23 ledit->setFont( QFont( "fixed", 10 ) ); 23 ledit->setFont( QFont( "fixed", 10 ) );
24 24 ledit->setReadOnly( true );
25 // FIXME: Set properties( font, read-only, etc...)
26
27}; 25};
28 26
29void MHexWindow::log( QString text ) 27void MHexWindow::log( const QString& text )
30{ 28{
31 29 int col;
32 ledit->append( text ); 30 int row;
33 31 ledit->getCursorPosition( &col, &row );
32 ledit->insertAt( text, col, row );
34}; 33};
35 34
36const QString MHexWindow::getLog() const 35const QString MHexWindow::getLog() const
37{ 36{
38 return ledit->text(); 37 return ledit->text();
39} 38}
40 39
41void MHexWindow::clear() 40void MHexWindow::clear()
42{ 41{
43 ledit->clear(); 42 ledit->clear();
44} 43}
45 44
diff --git a/noncore/net/wellenreiter/gui/hexwindow.h b/noncore/net/wellenreiter/gui/hexwindow.h
index f2f870c..3d4ec0f 100644
--- a/noncore/net/wellenreiter/gui/hexwindow.h
+++ b/noncore/net/wellenreiter/gui/hexwindow.h
@@ -17,24 +17,24 @@
17#define HEXWINDOW_H 17#define HEXWINDOW_H
18 18
19#include <qvbox.h> 19#include <qvbox.h>
20 20
21class QString; 21class QString;
22class QMultiLineEdit; 22class QMultiLineEdit;
23 23
24class MHexWindow: public QVBox 24class MHexWindow: public QVBox
25{ 25{
26 26
27 public: 27 public:
28 MHexWindow( QWidget * parent = 0, const char * name = "MHexWindow", WFlags f = 0 ); 28 MHexWindow( QWidget * parent = 0, const char * name = "MHexWindow", WFlags f = 0 );
29 29
30 void log( QString text ); 30 void log( const QString& text );
31 const QString getLog() const; 31 const QString getLog() const;
32 void clear(); 32 void clear();
33 33
34 protected: 34 protected:
35 QMultiLineEdit* ledit; 35 QMultiLineEdit* ledit;
36 36
37}; 37};
38 38
39#endif 39#endif
40 40
diff --git a/noncore/net/wellenreiter/gui/logwindow.cpp b/noncore/net/wellenreiter/gui/logwindow.cpp
index 55e2ccb..12f74fd 100644
--- a/noncore/net/wellenreiter/gui/logwindow.cpp
+++ b/noncore/net/wellenreiter/gui/logwindow.cpp
@@ -12,36 +12,39 @@
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14**********************************************************************/ 14**********************************************************************/
15 15
16#include "logwindow.h" 16#include "logwindow.h"
17#include <qmultilineedit.h> 17#include <qmultilineedit.h>
18#include <qdatetime.h> 18#include <qdatetime.h>
19 19
20MLogWindow::MLogWindow( QWidget * parent, const char * name, WFlags f ) 20MLogWindow::MLogWindow( QWidget * parent, const char * name, WFlags f )
21 :QVBox( parent, name, f ) 21 :QVBox( parent, name, f )
22{ 22{
23 ledit = new QMultiLineEdit( this ); 23 ledit = new QMultiLineEdit( this );
24 24 ledit->setReadOnly( true );
25 // FIXME: Set properties( font, read-only, etc...)
26
27} 25}
28 26
27
29void MLogWindow::log( QString text ) 28void MLogWindow::log( QString text )
30{ 29{
31 QTime time = QTime::currentTime(); 30 QTime time = QTime::currentTime();
32 QString line; 31 QString line;
33 line.sprintf( "[%s] %s", (const char*) time.toString(), (const char*) text ); 32 line.sprintf( "[%s] %s\n", (const char*) time.toString(), (const char*) text );
34 ledit->append( line ); 33 int col;
34 int row;
35 ledit->getCursorPosition( &col, &row );
36 ledit->insertAt( line, col, row );
35 qDebug( line ); 37 qDebug( line );
36
37} 38}
38 39
40
39void MLogWindow::clear() 41void MLogWindow::clear()
40{ 42{
41 ledit->clear(); 43 ledit->clear();
42} 44}
43 45
46
44const QString MLogWindow::getLog() const 47const QString MLogWindow::getLog() const
45{ 48{
46 return ledit->text(); 49 return ledit->text();
47} 50}
diff --git a/noncore/net/wellenreiter/gui/statwindow.cpp b/noncore/net/wellenreiter/gui/statwindow.cpp
index 07d34ef..2c8c774 100644
--- a/noncore/net/wellenreiter/gui/statwindow.cpp
+++ b/noncore/net/wellenreiter/gui/statwindow.cpp
@@ -5,41 +5,39 @@
5** 5**
6** This file may be distributed and/or modified under the terms of the 6** This file may be distributed and/or modified under the terms of the
7** GNU General Public License version 2 as published by the Free Software 7** GNU General Public License version 2 as published by the Free Software
8** Foundation and appearing in the file LICENSE.GPL included in the 8** Foundation and appearing in the file LICENSE.GPL included in the
9** packaging of this file. 9** packaging of this file.
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14**********************************************************************/ 14**********************************************************************/
15 15
16#include "statwindow.h" 16#include "statwindow.h"
17#include <qmultilineedit.h> 17#include <opie2/olistview.h>
18 18
19MStatWindow::MStatWindow( QWidget * parent, const char * name, WFlags f ) 19MStatWindow::MStatWindow( QWidget * parent, const char * name, WFlags f )
20 :QVBox( parent, name, f ) 20 :QVBox( parent, name, f )
21{ 21{
22 ledit = new QMultiLineEdit( this ); 22 table = new OListView( this );
23 ledit->setFont( QFont( "fixed", 10 ) ); 23 table->addColumn( "Protocol" );
24 24 table->addColumn( "Count" );
25 // FIXME: Set properties( font, read-only, etc...) 25 table->setItemMargin( 2 );
26
27}; 26};
28 27
29void MStatWindow::log( QString text )
30{
31
32 ledit->append( text );
33
34};
35
36const QString MStatWindow::getLog() const
37{
38 return ledit->text();
39}
40 28
41void MStatWindow::clear() 29void MStatWindow::updateCounter( const QString& protocol, int counter )
42{ 30{
43 ledit->clear(); 31 QListViewItemIterator it( table );
32 for ( ; it.current(); ++it )
33 {
34 if ( it.current()->text( 0 ) == protocol )
35 {
36 it.current()->setText( 1, QString::number( counter ) );
37 return;
38 }
39 }
40
41 new OListViewItem( table, protocol, QString::number( counter ) );
44} 42}
45 43
diff --git a/noncore/net/wellenreiter/gui/statwindow.h b/noncore/net/wellenreiter/gui/statwindow.h
index bbdf777..0ab4b50 100644
--- a/noncore/net/wellenreiter/gui/statwindow.h
+++ b/noncore/net/wellenreiter/gui/statwindow.h
@@ -10,31 +10,34 @@
10** 10**
11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE 11** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE
12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. 12** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.
13** 13**
14**********************************************************************/ 14**********************************************************************/
15 15
16#ifndef STATWINDOW_H 16#ifndef STATWINDOW_H
17#define STATWINDOW_H 17#define STATWINDOW_H
18 18
19#include <qvbox.h> 19#include <qvbox.h>
20 20
21class QString; 21class QString;
22class QMultiLineEdit; 22class OListView;
23 23
24class MStatWindow: public QVBox 24class MStatWindow: public QVBox
25{ 25{
26 Q_OBJECT
26 27
27 public: 28 public:
28 MStatWindow( QWidget * parent = 0, const char * name = "MStatWindow", WFlags f = 0 ); 29 MStatWindow( QWidget * parent = 0, const char * name = "MStatWindow", WFlags f = 0 );
29 30
30 void log( QString text ); 31 void log( QString text );
31 const QString getLog() const; 32 const QString getLog() const;
32 void clear(); 33 void clear();
33 34
35 void updateCounter( const QString&, int );
36
34 protected: 37 protected:
35 QMultiLineEdit* ledit; 38 OListView* table;
36 39
37}; 40};
38 41
39#endif 42#endif
40 43
diff --git a/noncore/net/wellenreiter/gui/wellenreiter.cpp b/noncore/net/wellenreiter/gui/wellenreiter.cpp
index 0105e09..5ec9ee4 100644
--- a/noncore/net/wellenreiter/gui/wellenreiter.cpp
+++ b/noncore/net/wellenreiter/gui/wellenreiter.cpp
@@ -23,24 +23,25 @@ using namespace Opie;
23#ifdef QWS 23#ifdef QWS
24#include <opie2/oapplication.h> 24#include <opie2/oapplication.h>
25#else 25#else
26#include <qapplication.h> 26#include <qapplication.h>
27#endif 27#endif
28#include <opie2/onetwork.h> 28#include <opie2/onetwork.h>
29#include <opie2/opcap.h> 29#include <opie2/opcap.h>
30 30
31// Qt 31// Qt
32 32
33#include <qcheckbox.h> 33#include <qcheckbox.h>
34#include <qcombobox.h> 34#include <qcombobox.h>
35#include <qdatetime.h>
35#include <qpushbutton.h> 36#include <qpushbutton.h>
36#include <qlineedit.h> 37#include <qlineedit.h>
37#include <qmessagebox.h> 38#include <qmessagebox.h>
38#include <qregexp.h> 39#include <qregexp.h>
39#include <qspinbox.h> 40#include <qspinbox.h>
40#include <qtoolbutton.h> 41#include <qtoolbutton.h>
41#include <qmainwindow.h> 42#include <qmainwindow.h>
42 43
43// Standard 44// Standard
44 45
45#include <assert.h> 46#include <assert.h>
46#include <errno.h> 47#include <errno.h>
@@ -248,41 +249,26 @@ void Wellenreiter::stopClicked()
248 249
249 logwindow->log( "(i) Stopped Scanning." ); 250 logwindow->log( "(i) Stopped Scanning." );
250 assert( parent() ); 251 assert( parent() );
251 ( (QMainWindow*) parent() )->setCaption( "Wellenreiter II" ); 252 ( (QMainWindow*) parent() )->setCaption( "Wellenreiter II" );
252 253
253 // message the user 254 // message the user
254 QMessageBox::information( this, "Wellenreiter II", "Your wireless card\nshould now be usable again." ); 255 QMessageBox::information( this, "Wellenreiter II", "Your wireless card\nshould now be usable again." );
255 256
256 sniffing = false; 257 sniffing = false;
257 emit( stoppedSniffing() ); 258 emit( stoppedSniffing() );
258 259
259 // print out statistics 260 // print out statistics
260 statwindow->log( "-----------------------------------------" );
261 statwindow->log( "- Wellenreiter II Capturing Statistic -" );
262 statwindow->log( "-----------------------------------------" );
263 statwindow->log( "Packet Type | Receive Count" );
264
265 for( QMap<QString,int>::ConstIterator it = pcap->statistics().begin(); it != pcap->statistics().end(); ++it ) 261 for( QMap<QString,int>::ConstIterator it = pcap->statistics().begin(); it != pcap->statistics().end(); ++it )
266 { 262 statwindow->updateCounter( it.key(), it.data() );
267 QString left;
268 left.sprintf( "%s", (const char*) it.key() );
269 left = left.leftJustify( 20 );
270 left.append( '|' );
271 QString right;
272 right.sprintf( "%d", it.data() );
273 right = right.rightJustify( 7 );
274 statwindow->log( left + right );
275 }
276
277} 263}
278 264
279 265
280void Wellenreiter::startClicked() 266void Wellenreiter::startClicked()
281{ 267{
282 // get configuration from config window 268 // get configuration from config window
283 269
284 const QString& interface = configwindow->interfaceName->currentText(); 270 const QString& interface = configwindow->interfaceName->currentText();
285 const int cardtype = configwindow->daemonDeviceType(); 271 const int cardtype = configwindow->daemonDeviceType();
286 const int interval = configwindow->daemonHopInterval(); 272 const int interval = configwindow->daemonHopInterval();
287 273
288 if ( ( interface == "" ) || ( cardtype == 0 ) ) 274 if ( ( interface == "" ) || ( cardtype == 0 ) )
diff --git a/noncore/net/wellenreiter/makedist.sh b/noncore/net/wellenreiter/makedist.sh
index 1795ae5..cfb0b16 100755
--- a/noncore/net/wellenreiter/makedist.sh
+++ b/noncore/net/wellenreiter/makedist.sh
@@ -1,13 +1,13 @@
1VERSION=2-alpha2 1VERSION=2-beta
2 2
3TGZDIR=$PWD 3TGZDIR=$PWD
4 4
5# script to make a .tgz distributable for the Wellenreiter X11 Standalone Version 5# script to make a .tgz distributable for the Wellenreiter X11 Standalone Version
6 6
7find . -name "*.o"|xargs rm -f 7find . -name "*.o"|xargs rm -f
8find . -name "Makefile"|xargs rm -f 8find . -name "Makefile"|xargs rm -f
9find . -name "*moc*"|xargs rm -f 9find . -name "*moc*"|xargs rm -f
10#TMPFILE=`mktemp -d -q /tmp/build.XXXXXX` 10#TMPFILE=`mktemp -d -q /tmp/build.XXXXXX`
11TMPFILE=/tmp/build 11TMPFILE=/tmp/build
12#if [ $? -ne 0 ]; then 12#if [ $? -ne 0 ]; then
13# echo "$0: Can't create temp file, exiting..." 13# echo "$0: Can't create temp file, exiting..."