-rw-r--r-- | noncore/net/wellenreiter/cornucopia/olistview.cpp | 8 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/mainwindow.cpp | 58 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/mainwindow.h | 4 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/scanlist.cpp | 14 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/scanlist.h | 4 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/scanlistitem.cpp | 21 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/scanlistitem.h | 4 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/wellenreiter.cpp | 5 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/wellenreiter.h | 1 |
9 files changed, 105 insertions, 14 deletions
diff --git a/noncore/net/wellenreiter/cornucopia/olistview.cpp b/noncore/net/wellenreiter/cornucopia/olistview.cpp index bca17b2..8bc59de 100644 --- a/noncore/net/wellenreiter/cornucopia/olistview.cpp +++ b/noncore/net/wellenreiter/cornucopia/olistview.cpp | |||
@@ -203,8 +203,8 @@ bool OListViewItem::isAlternate() | |||
203 | // check if the item above is an OListViewItem | 203 | // check if the item above is an OListViewItem |
204 | OListViewItem *above = static_cast<OListViewItem*>( itemAbove() ); | 204 | OListViewItem *above = static_cast<OListViewItem*>( itemAbove() ); |
205 | /*if (not itemAbove()->inherits( "OListViewItem" )) return false;*/ | 205 | /*if (! itemAbove()->inherits( "OListViewItem" )) return false;*/ |
206 | 206 | ||
207 | // check if we have a valid alternate background color | 207 | // check if we have a valid alternate background color |
208 | if (not (lv && lv->alternateBackground().isValid())) return false; | 208 | if (!(lv && lv->alternateBackground().isValid())) return false; |
209 | 209 | ||
210 | m_known = above ? above->m_known : true; | 210 | m_known = above ? above->m_known : true; |
@@ -222,5 +222,5 @@ bool OListViewItem::isAlternate() | |||
222 | if ( item /*&& item->inherits( "OListViewItem" )*/ ) previous = item->m_odd; | 222 | if ( item /*&& item->inherits( "OListViewItem" )*/ ) previous = item->m_odd; |
223 | item = static_cast<OListViewItem *>(parent()->firstChild()); | 223 | item = static_cast<OListViewItem *>(parent()->firstChild()); |
224 | /* if !( item.inherits( "OListViewItem" ) item = 0; */ | 224 | /* if ( !item.inherits( "OListViewItem" ) item = 0; */ |
225 | } | 225 | } |
226 | else | 226 | else |
@@ -234,5 +234,5 @@ bool OListViewItem::isAlternate() | |||
234 | item->m_known = true; | 234 | item->m_known = true; |
235 | item = static_cast<OListViewItem *>(item->nextSibling()); | 235 | item = static_cast<OListViewItem *>(item->nextSibling()); |
236 | /* if !(item.inherits( "OListViewItem" ) ) break; */ | 236 | /* if (!item.inherits( "OListViewItem" ) ) break; */ |
237 | } | 237 | } |
238 | } | 238 | } |
diff --git a/noncore/net/wellenreiter/gui/mainwindow.cpp b/noncore/net/wellenreiter/gui/mainwindow.cpp index cb003dd..e388fc5 100644 --- a/noncore/net/wellenreiter/gui/mainwindow.cpp +++ b/noncore/net/wellenreiter/gui/mainwindow.cpp | |||
@@ -25,4 +25,5 @@ | |||
25 | #include <qiconset.h> | 25 | #include <qiconset.h> |
26 | #include <qmenubar.h> | 26 | #include <qmenubar.h> |
27 | #include <qmessagebox.h> | ||
27 | #include <qpopupmenu.h> | 28 | #include <qpopupmenu.h> |
28 | #include <qstatusbar.h> | 29 | #include <qstatusbar.h> |
@@ -60,5 +61,7 @@ WellenreiterMainWindow::WellenreiterMainWindow( QWidget * parent, const char * n | |||
60 | 61 | ||
61 | startStopButton = new QToolButton( 0 ); | 62 | startStopButton = new QToolButton( 0 ); |
63 | #ifdef QWS | ||
62 | startStopButton->setAutoRaise( true ); | 64 | startStopButton->setAutoRaise( true ); |
65 | #endif | ||
63 | #ifdef QWS | 66 | #ifdef QWS |
64 | startStopButton->setOnIconSet( *cancelIconSet ); | 67 | startStopButton->setOnIconSet( *cancelIconSet ); |
@@ -72,10 +75,14 @@ WellenreiterMainWindow::WellenreiterMainWindow( QWidget * parent, const char * n | |||
72 | 75 | ||
73 | QToolButton* c = new QToolButton( 0 ); | 76 | QToolButton* c = new QToolButton( 0 ); |
77 | #ifdef QWS | ||
74 | c->setAutoRaise( true ); | 78 | c->setAutoRaise( true ); |
79 | #endif | ||
75 | c->setIconSet( *infoIconSet ); | 80 | c->setIconSet( *infoIconSet ); |
76 | c->setEnabled( false ); | 81 | c->setEnabled( false ); |
77 | 82 | ||
78 | QToolButton* d = new QToolButton( 0 ); | 83 | QToolButton* d = new QToolButton( 0 ); |
84 | #ifdef QWS | ||
79 | d->setAutoRaise( true ); | 85 | d->setAutoRaise( true ); |
86 | #endif | ||
80 | d->setIconSet( *settingsIconSet ); | 87 | d->setIconSet( *settingsIconSet ); |
81 | connect( d, SIGNAL( clicked() ), this, SLOT( showConfigure() ) ); | 88 | connect( d, SIGNAL( clicked() ), this, SLOT( showConfigure() ) ); |
@@ -88,8 +95,13 @@ WellenreiterMainWindow::WellenreiterMainWindow( QWidget * parent, const char * n | |||
88 | 95 | ||
89 | QPopupMenu* fileSave = new QPopupMenu( mb ); | 96 | QPopupMenu* fileSave = new QPopupMenu( mb ); |
97 | fileSave->insertItem( "&Session", this, SLOT( fileSaveSession() ) ); | ||
90 | fileSave->insertItem( "&Log", this, SLOT( fileSaveLog() ) ); | 98 | fileSave->insertItem( "&Log", this, SLOT( fileSaveLog() ) ); |
91 | 99 | ||
100 | QPopupMenu* fileLoad = new QPopupMenu( mb ); | ||
101 | fileLoad->insertItem( "&Session", this, SLOT( fileLoadSession() ) ); | ||
102 | fileLoad->insertItem( "&Log", this, SLOT( fileLoadLog() ) ); | ||
103 | |||
92 | QPopupMenu* file = new QPopupMenu( mb ); | 104 | QPopupMenu* file = new QPopupMenu( mb ); |
93 | id = file->insertItem( "&Load" ); | 105 | id = file->insertItem( "&Load", fileLoad ); |
94 | file->setItemEnabled( id, false ); | 106 | file->setItemEnabled( id, false ); |
95 | file->insertItem( "&Save", fileSave ); | 107 | file->insertItem( "&Save", fileSave ); |
@@ -173,9 +185,9 @@ WellenreiterMainWindow::~WellenreiterMainWindow() | |||
173 | void WellenreiterMainWindow::demoAddStations() | 185 | void WellenreiterMainWindow::demoAddStations() |
174 | { | 186 | { |
175 | mw->netView()->addNewItem( "managed", "Vanille", "04:00:20:EF:A6:43", true, 6, 80 ); | 187 | mw->netView()->addNewItem( "managed", "Vanille", "00:00:20:EF:A6:43", true, 6, 80 ); |
176 | mw->netView()->addNewItem( "managed", "Vanille", "04:00:20:EF:A6:23", true, 11, 10 ); | 188 | mw->netView()->addNewItem( "managed", "Vanille", "00:00:1c:EF:A6:23", true, 11, 10 ); |
177 | mw->netView()->addNewItem( "adhoc", "ELAN", "40:03:43:E7:16:22", false, 3, 10 ); | 189 | mw->netView()->addNewItem( "adhoc", "ELAN", "00:A0:F8:E7:16:22", false, 3, 10 ); |
178 | mw->netView()->addNewItem( "adhoc", "ELAN", "40:03:53:E7:56:62", false, 3, 15 ); | 190 | mw->netView()->addNewItem( "adhoc", "ELAN", "00:AA:01:E7:56:62", false, 3, 15 ); |
179 | mw->netView()->addNewItem( "adhoc", "ELAN", "40:03:63:E7:56:E2", false, 3, 20 ); | 191 | mw->netView()->addNewItem( "adhoc", "ELAN", "00:B0:8E:E7:56:E2", false, 3, 20 ); |
180 | } | 192 | } |
181 | 193 | ||
@@ -189,10 +201,40 @@ void WellenreiterMainWindow::fileSaveLog() | |||
189 | t << mw->logWindow()->getLog(); | 201 | t << mw->logWindow()->getLog(); |
190 | f.close(); | 202 | f.close(); |
191 | qDebug( "saved log in file '%s'", (const char*) fname ); | 203 | qDebug( "Saved log to file '%s'", (const char*) fname ); |
192 | } | 204 | } |
193 | else | 205 | else |
194 | { | 206 | { |
195 | qDebug( "Problem saving log in file '%s'", (const char*) fname ); | 207 | qDebug( "Problem saving log to file '%s'", (const char*) fname ); |
196 | } | 208 | } |
197 | 209 | ||
198 | } \ No newline at end of file | 210 | } \ No newline at end of file |
211 | |||
212 | void WellenreiterMainWindow::fileSaveSession() | ||
213 | { | ||
214 | const QString fname( "/tmp/session.xml" ); | ||
215 | QFile f( fname ); | ||
216 | if ( f.open(IO_WriteOnly) ) | ||
217 | { | ||
218 | QTextStream t( &f ); | ||
219 | mw->netView()->dump( t ); | ||
220 | f.close(); | ||
221 | qDebug( "Saved session to file '%s'", (const char*) fname ); | ||
222 | } | ||
223 | else | ||
224 | { | ||
225 | qDebug( "Problem saving session to file '%s'", (const char*) fname ); | ||
226 | } | ||
227 | } | ||
228 | |||
229 | void WellenreiterMainWindow::closeEvent( QCloseEvent* e ) | ||
230 | { | ||
231 | if ( mw->isDaemonRunning() ) | ||
232 | { | ||
233 | QMessageBox::warning( this, "Wellenreiter/Opie", "Sniffing in progress!\nPlease stop sniffing before closing." ); | ||
234 | e->ignore(); | ||
235 | } | ||
236 | else | ||
237 | { | ||
238 | QMainWindow::closeEvent( e ); | ||
239 | } | ||
240 | } | ||
diff --git a/noncore/net/wellenreiter/gui/mainwindow.h b/noncore/net/wellenreiter/gui/mainwindow.h index 03aa08a..8bfccf3 100644 --- a/noncore/net/wellenreiter/gui/mainwindow.h +++ b/noncore/net/wellenreiter/gui/mainwindow.h | |||
@@ -44,8 +44,12 @@ class WellenreiterMainWindow: public QMainWindow | |||
44 | QToolButton* startStopButton; | 44 | QToolButton* startStopButton; |
45 | 45 | ||
46 | protected: | ||
47 | virtual void closeEvent( QCloseEvent* ); | ||
48 | |||
46 | public slots: | 49 | public slots: |
47 | void showConfigure(); | 50 | void showConfigure(); |
48 | void demoAddStations(); | 51 | void demoAddStations(); |
49 | void fileSaveLog(); | 52 | void fileSaveLog(); |
53 | void fileSaveSession(); | ||
50 | }; | 54 | }; |
51 | 55 | ||
diff --git a/noncore/net/wellenreiter/gui/scanlist.cpp b/noncore/net/wellenreiter/gui/scanlist.cpp index 6d3469c..cdc2c48 100644 --- a/noncore/net/wellenreiter/gui/scanlist.cpp +++ b/noncore/net/wellenreiter/gui/scanlist.cpp | |||
@@ -21,4 +21,6 @@ | |||
21 | #include "manufacturers.h" | 21 | #include "manufacturers.h" |
22 | 22 | ||
23 | #include <qtextstream.h> | ||
24 | |||
23 | MScanListView::MScanListView( QWidget* parent, const char* name ) | 25 | MScanListView::MScanListView( QWidget* parent, const char* name ) |
24 | :OListView( parent, name ), _manufacturerdb( 0 ) | 26 | :OListView( parent, name ), _manufacturerdb( 0 ) |
@@ -152,2 +154,14 @@ void MScanListView::addNewItem( QString type, QString essid, QString macaddr, bo | |||
152 | } | 154 | } |
153 | 155 | ||
156 | void MScanListView::dump( QTextStream& t ) const | ||
157 | { | ||
158 | qDebug( "dumping scanlist..." ); | ||
159 | |||
160 | QListViewItemIterator it( const_cast<MScanListView*>( this ) ); | ||
161 | for ( ; it.current(); ++it ) | ||
162 | { | ||
163 | static_cast<MScanListItem*>( it.current() )->dump( t ); | ||
164 | } | ||
165 | |||
166 | qDebug( "dump finished." ); | ||
167 | } | ||
diff --git a/noncore/net/wellenreiter/gui/scanlist.h b/noncore/net/wellenreiter/gui/scanlist.h index 475f7b6..f06f251 100644 --- a/noncore/net/wellenreiter/gui/scanlist.h +++ b/noncore/net/wellenreiter/gui/scanlist.h | |||
@@ -19,6 +19,7 @@ | |||
19 | #include <cornucopia/olistview.h> | 19 | #include <cornucopia/olistview.h> |
20 | 20 | ||
21 | class QString; | 21 | #include <qtextstream.h> |
22 | 22 | ||
23 | class QString; | ||
23 | class ManufacturerDB; | 24 | class ManufacturerDB; |
24 | 25 | ||
@@ -32,4 +33,5 @@ class MScanListView: public OListView | |||
32 | 33 | ||
33 | void setManufacturerDB( ManufacturerDB* manufacturerdb ); | 34 | void setManufacturerDB( ManufacturerDB* manufacturerdb ); |
35 | void dump( QTextStream& t ) const; | ||
34 | 36 | ||
35 | public slots: | 37 | public slots: |
diff --git a/noncore/net/wellenreiter/gui/scanlistitem.cpp b/noncore/net/wellenreiter/gui/scanlistitem.cpp index bfa7aa9..4aecd2b 100644 --- a/noncore/net/wellenreiter/gui/scanlistitem.cpp +++ b/noncore/net/wellenreiter/gui/scanlistitem.cpp | |||
@@ -84,5 +84,10 @@ void MScanListItem::decorateItem( QString type, QString essid, QString macaddr, | |||
84 | 84 | ||
85 | this->type = type; | 85 | this->type = type; |
86 | 86 | _type = type; | |
87 | _essid = essid; | ||
88 | _macaddr = macaddr; | ||
89 | _channel = channel; | ||
90 | _beacons = 0; | ||
91 | _signal = 0; | ||
87 | } | 92 | } |
88 | 93 | ||
@@ -101,2 +106,16 @@ void MScanListItem::receivedBeacon() | |||
101 | setText( col_lastseen, QTime::currentTime().toString() ); | 106 | setText( col_lastseen, QTime::currentTime().toString() ); |
102 | } | 107 | } |
108 | |||
109 | void MScanListItem::dump( QTextStream& t ) const | ||
110 | { | ||
111 | qDebug( "dumping scanlistitem at <%d>", this ); | ||
112 | t << "<ITEM type=" << _type; | ||
113 | t << " ESSID='" << _essid; | ||
114 | t << "' MAC=" << _macaddr; | ||
115 | t << " WEP=" << _wep; | ||
116 | t << " CHANNEL=" << _channel; | ||
117 | t << " SIGNAL=" << _signal; | ||
118 | t << " BEACONS=" << _beacons; | ||
119 | t << ">\n"; | ||
120 | } | ||
121 | |||
diff --git a/noncore/net/wellenreiter/gui/scanlistitem.h b/noncore/net/wellenreiter/gui/scanlistitem.h index 89b3bc4..5f6ae40 100644 --- a/noncore/net/wellenreiter/gui/scanlistitem.h +++ b/noncore/net/wellenreiter/gui/scanlistitem.h | |||
@@ -19,4 +19,6 @@ | |||
19 | #include <cornucopia/olistview.h> | 19 | #include <cornucopia/olistview.h> |
20 | 20 | ||
21 | #include <qtextstream.h> | ||
22 | |||
21 | class QString; | 23 | class QString; |
22 | 24 | ||
@@ -65,4 +67,6 @@ class MScanListItem: public OListViewItem | |||
65 | void setManufacturer( const QString& manufacturer ); | 67 | void setManufacturer( const QString& manufacturer ); |
66 | 68 | ||
69 | void dump( QTextStream& t ) const; | ||
70 | |||
67 | private: | 71 | private: |
68 | QString _type; | 72 | QString _type; |
diff --git a/noncore/net/wellenreiter/gui/wellenreiter.cpp b/noncore/net/wellenreiter/gui/wellenreiter.cpp index c599bb4..1ccf971 100644 --- a/noncore/net/wellenreiter/gui/wellenreiter.cpp +++ b/noncore/net/wellenreiter/gui/wellenreiter.cpp | |||
@@ -124,4 +124,9 @@ Wellenreiter::~Wellenreiter() | |||
124 | 124 | ||
125 | delete manufacturerdb; | 125 | delete manufacturerdb; |
126 | if ( daemon_fd != -1 ) | ||
127 | { | ||
128 | qDebug( "closing comm socket" ); | ||
129 | close( daemon_fd ); | ||
130 | } | ||
126 | } | 131 | } |
127 | 132 | ||
diff --git a/noncore/net/wellenreiter/gui/wellenreiter.h b/noncore/net/wellenreiter/gui/wellenreiter.h index ff523d4..ee9dca9 100644 --- a/noncore/net/wellenreiter/gui/wellenreiter.h +++ b/noncore/net/wellenreiter/gui/wellenreiter.h | |||
@@ -54,4 +54,5 @@ class Wellenreiter : public WellenreiterBase { | |||
54 | MScanListView* netView() const { return netview; }; | 54 | MScanListView* netView() const { return netview; }; |
55 | MLogWindow* logWindow() const { return logwindow; }; | 55 | MLogWindow* logWindow() const { return logwindow; }; |
56 | bool isDaemonRunning() const { return daemonRunning; }; | ||
56 | 57 | ||
57 | protected: | 58 | protected: |