author | mickeyl <mickeyl> | 2003-04-30 18:50:47 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2003-04-30 18:50:47 (UTC) |
commit | e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0 (patch) (unidiff) | |
tree | 06f7877ef85b91531c4f75681e1cd91881703c18 /noncore/net/wellenreiter/gui | |
parent | 027458b66cffbfaf07c394a1a622a1f01970e11c (diff) | |
download | opie-e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0.zip opie-e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0.tar.gz opie-e6428d30a5dc90ed3ec6ca7e1cb3f92c81437cc0.tar.bz2 |
- autoscrolling for hex- and logwindow
- revamped statistics window
Diffstat (limited to 'noncore/net/wellenreiter/gui') (more/less context) (ignore whitespace changes)
-rw-r--r-- | noncore/net/wellenreiter/gui/hexwindow.cpp | 13 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/hexwindow.h | 6 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/logwindow.cpp | 15 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/statwindow.cpp | 36 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/statwindow.h | 11 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/wellenreiter.cpp | 18 |
6 files changed, 44 insertions, 55 deletions
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 | |||
@@ -22,14 +22,13 @@ MHexWindow::MHexWindow( QWidget * parent, const char * name, WFlags f ) | |||
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 | ||
29 | void MHexWindow::log( QString text ) | 27 | void 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 | ||
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 | |||
@@ -27,9 +27,9 @@ class MHexWindow: public QVBox | |||
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; |
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 | |||
@@ -22,19 +22,21 @@ MLogWindow::MLogWindow( QWidget * parent, const char * name, WFlags 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 | |||
29 | void MLogWindow::log( QString text ) | 28 | void 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 | |||
39 | void MLogWindow::clear() | 41 | void MLogWindow::clear() |
40 | { | 42 | { |
@@ -42,4 +44,5 @@ void MLogWindow::clear() | |||
42 | } | 44 | } |
43 | 45 | ||
46 | |||
44 | const QString MLogWindow::getLog() const | 47 | const QString MLogWindow::getLog() const |
45 | { | 48 | { |
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 | |||
@@ -15,31 +15,29 @@ | |||
15 | 15 | ||
16 | #include "statwindow.h" | 16 | #include "statwindow.h" |
17 | #include <qmultilineedit.h> | 17 | #include <opie2/olistview.h> |
18 | 18 | ||
19 | MStatWindow::MStatWindow( QWidget * parent, const char * name, WFlags f ) | 19 | MStatWindow::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 | ||
29 | void MStatWindow::log( QString text ) | ||
30 | { | ||
31 | |||
32 | ledit->append( text ); | ||
33 | |||
34 | }; | ||
35 | |||
36 | const QString MStatWindow::getLog() const | ||
37 | { | ||
38 | return ledit->text(); | ||
39 | } | ||
40 | 28 | ||
41 | void MStatWindow::clear() | 29 | void 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 | |||
@@ -20,18 +20,21 @@ | |||
20 | 20 | ||
21 | class QString; | 21 | class QString; |
22 | class QMultiLineEdit; | 22 | class OListView; |
23 | 23 | ||
24 | class MStatWindow: public QVBox | 24 | class 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 | }; |
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 | |||
@@ -33,4 +33,5 @@ using namespace Opie; | |||
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> |
@@ -258,21 +259,6 @@ void Wellenreiter::stopClicked() | |||
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 | ||