summaryrefslogtreecommitdiff
authormickeyl <mickeyl>2003-05-02 23:32:16 (UTC)
committer mickeyl <mickeyl>2003-05-02 23:32:16 (UTC)
commit4aaa8efd13ad014280a6f1f05391c1ec464790db (patch) (unidiff)
tree4c9612dcd9897d8b2af48a731305e304dd523dc9
parent5ca7f12dab929b21c133f785a3328c949df69401 (diff)
downloadopie-4aaa8efd13ad014280a6f1f05391c1ec464790db.zip
opie-4aaa8efd13ad014280a6f1f05391c1ec464790db.tar.gz
opie-4aaa8efd13ad014280a6f1f05391c1ec464790db.tar.bz2
add parsing and interpretating of fromDS frames and getting pretty close to the 1.0 release
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/net/wellenreiter/gui/scanlist.cpp23
-rw-r--r--noncore/net/wellenreiter/gui/scanlist.h2
2 files changed, 20 insertions, 5 deletions
diff --git a/noncore/net/wellenreiter/gui/scanlist.cpp b/noncore/net/wellenreiter/gui/scanlist.cpp
index b8aa81c..1cf49e0 100644
--- a/noncore/net/wellenreiter/gui/scanlist.cpp
+++ b/noncore/net/wellenreiter/gui/scanlist.cpp
@@ -165,46 +165,46 @@ void MScanListView::addNewItem( QString type, QString essid, QString macaddr, bo
165 if ( type == "managed" ) 165 if ( type == "managed" )
166 { 166 {
167 s.sprintf( "(i) new AP in '%s' [%d]", (const char*) essid, channel ); 167 s.sprintf( "(i) new AP in '%s' [%d]", (const char*) essid, channel );
168 } 168 }
169 else 169 else
170 { 170 {
171 s.sprintf( "(i) new adhoc station in '%s' [%d]", (const char*) essid, channel ); 171 s.sprintf( "(i) new adhoc station in '%s' [%d]", (const char*) essid, channel );
172 } 172 }
173 173
174} 174}
175 175
176 176
177void MScanListView::addIfNotExisting( MScanListItem* network, QString addr ) 177void MScanListView::addIfNotExisting( MScanListItem* network, QString addr, const QString& type )
178{ 178{
179 MScanListItem* subitem = static_cast<MScanListItem*>( network->firstChild() ); 179 MScanListItem* subitem = static_cast<MScanListItem*>( network->firstChild() );
180 180
181 while ( subitem && ( subitem->text( col_ap ) != addr ) ) 181 while ( subitem && ( subitem->text( col_ap ) != addr ) )
182 { 182 {
183 qDebug( "subitemtext: %s", (const char*) subitem->text( col_ap ) ); 183 qDebug( "subitemtext: %s", (const char*) subitem->text( col_ap ) );
184 subitem = static_cast<MScanListItem*> ( subitem->nextSibling() ); 184 subitem = static_cast<MScanListItem*> ( subitem->nextSibling() );
185 } 185 }
186 186
187 if ( subitem ) 187 if ( subitem )
188 { 188 {
189 // we have already seen this item, it's a dupe 189 // we have already seen this item, it's a dupe
190 #ifdef DEBUG 190 #ifdef DEBUG
191 qDebug( "%s is a dupe - ignoring...", (const char*) addr ); 191 qDebug( "%s is a dupe - ignoring...", (const char*) addr );
192 #endif 192 #endif
193 subitem->receivedBeacon(); //FIXME: sent data bit 193 subitem->receivedBeacon(); //FIXME: sent data bit
194 return; 194 return;
195 } 195 }
196 196
197 // Hey, it seems to be a new item :-D 197 // Hey, it seems to be a new item :-D
198 MScanListItem* station = new MScanListItem( network, "station", /* network->text( col_essid ) */ "", addr, false, -1, -1 ); 198 MScanListItem* station = new MScanListItem( network, type, /* network->text( col_essid ) */ "", addr, false, -1, -1 );
199 if ( _manufacturerdb ) 199 if ( _manufacturerdb )
200 station->setManufacturer( _manufacturerdb->lookup( addr ) ); 200 station->setManufacturer( _manufacturerdb->lookup( addr ) );
201} 201}
202 202
203 203
204void MScanListView::WDStraffic( QString from, QString to, QString viaFrom, QString viaTo ) 204void MScanListView::WDStraffic( QString from, QString to, QString viaFrom, QString viaTo )
205{ 205{
206 QString s; 206 QString s;
207 MScanListItem* network; 207 MScanListItem* network;
208 208
209 QListViewItemIterator it( this ); 209 QListViewItemIterator it( this );
210 while ( it.current() && 210 while ( it.current() &&
@@ -228,35 +228,50 @@ void MScanListView::WDStraffic( QString from, QString to, QString viaFrom, QStri
228void MScanListView::toDStraffic( QString from, QString to, QString via ) 228void MScanListView::toDStraffic( QString from, QString to, QString via )
229{ 229{
230 QString s; 230 QString s;
231 MScanListItem* network; 231 MScanListItem* network;
232 232
233 QListViewItemIterator it( this ); 233 QListViewItemIterator it( this );
234 while ( it.current() && it.current()->text( col_ap ) != via ) ++it; 234 while ( it.current() && it.current()->text( col_ap ) != via ) ++it;
235 235
236 MScanListItem* item = static_cast<MScanListItem*>( it.current() ); 236 MScanListItem* item = static_cast<MScanListItem*>( it.current() );
237 237
238 if ( item ) // AP has shown up yet, so just add our new "from" - station 238 if ( item ) // AP has shown up yet, so just add our new "from" - station
239 { 239 {
240 addIfNotExisting( static_cast<MScanListItem*>(item->parent()), from ); 240 addIfNotExisting( static_cast<MScanListItem*>(item->parent()), from, "adhoc" );
241 } 241 }
242 else 242 else
243 { 243 {
244 qDebug( "D'Oh! Station without AP... ignoring for now... will handle this in 1.1 :-D" ); 244 qDebug( "D'Oh! Station without AP... ignoring for now... will handle this in 1.1 :-D" );
245 } 245 }
246} 246}
247 247
248void MScanListView::fromDStraffic( QString from, QString to, QString via ) 248void MScanListView::fromDStraffic( QString from, QString to, QString via )
249{ 249{
250 qWarning( "D'oh! Not yet implemented..." ); 250 QString s;
251 MScanListItem* network;
252
253 QListViewItemIterator it( this );
254 while ( it.current() && it.current()->text( col_ap ) != via ) ++it;
255
256 MScanListItem* item = static_cast<MScanListItem*>( it.current() );
257
258 if ( item ) // AP has shown up yet, so just add our new "from" - station
259 {
260 addIfNotExisting( static_cast<MScanListItem*>(item->parent()), from, "station" );
261 }
262 else
263 {
264 qDebug( "D'Oh! Station without AP... ignoring for now... will handle this in 1.1 :-D" );
265 }
251} 266}
252 267
253void MScanListView::IBSStraffic( QString from, QString to, QString via ) 268void MScanListView::IBSStraffic( QString from, QString to, QString via )
254{ 269{
255 qWarning( "D'oh! Not yet implemented..." ); 270 qWarning( "D'oh! Not yet implemented..." );
256} 271}
257 272
258//============================================================ 273//============================================================
259// MScanListItem 274// MScanListItem
260//============================================================ 275//============================================================
261 276
262MScanListItem::MScanListItem( QListView* parent, QString type, QString essid, QString macaddr, 277MScanListItem::MScanListItem( QListView* parent, QString type, QString essid, QString macaddr,
diff --git a/noncore/net/wellenreiter/gui/scanlist.h b/noncore/net/wellenreiter/gui/scanlist.h
index a14d426..56bf837 100644
--- a/noncore/net/wellenreiter/gui/scanlist.h
+++ b/noncore/net/wellenreiter/gui/scanlist.h
@@ -38,25 +38,25 @@ class MScanListView: public OListView
38 virtual OListViewItem* childFactory(); 38 virtual OListViewItem* childFactory();
39 virtual void serializeTo( QDataStream& s ) const; 39 virtual void serializeTo( QDataStream& s ) const;
40 virtual void serializeFrom( QDataStream& s ); 40 virtual void serializeFrom( QDataStream& s );
41 41
42 public slots: 42 public slots:
43 void addNewItem( QString type, QString essid, QString macaddr, bool wep, int channel, int signal ); 43 void addNewItem( QString type, QString essid, QString macaddr, bool wep, int channel, int signal );
44 void fromDStraffic( QString from, QString to, QString via ); // NYI 44 void fromDStraffic( QString from, QString to, QString via ); // NYI
45 void toDStraffic( QString from, QString to, QString via ); 45 void toDStraffic( QString from, QString to, QString via );
46 void WDStraffic( QString from, QString to, QString viaFrom, QString viaTo ); 46 void WDStraffic( QString from, QString to, QString viaFrom, QString viaTo );
47 void IBSStraffic( QString from, QString to, QString via ); // NYI 47 void IBSStraffic( QString from, QString to, QString via ); // NYI
48 48
49 protected: 49 protected:
50 void addIfNotExisting( MScanListItem* parent, QString addr ); 50 void addIfNotExisting( MScanListItem* parent, QString addr, const QString& type = "station" );
51 51
52 private: 52 private:
53 ManufacturerDB* _manufacturerdb; 53 ManufacturerDB* _manufacturerdb;
54 54
55}; 55};
56 56
57//****************************** MScanListItem **************************************************************** 57//****************************** MScanListItem ****************************************************************
58 58
59class MScanListItem: public OListViewItem 59class MScanListItem: public OListViewItem
60{ 60{
61 public: 61 public:
62 MScanListItem::MScanListItem( QListView* parent, 62 MScanListItem::MScanListItem( QListView* parent,