author | mickeyl <mickeyl> | 2003-03-02 17:35:53 (UTC) |
---|---|---|
committer | mickeyl <mickeyl> | 2003-03-02 17:35:53 (UTC) |
commit | b3b0d6ec136e550029b9cae7fb714d47071ea5b4 (patch) (unidiff) | |
tree | 9cc1fb741bb548c90915487572c49a1ae48e33eb /noncore/net | |
parent | d0e64d0c7961de1c3ecb886ae76c6701f268d767 (diff) | |
download | opie-b3b0d6ec136e550029b9cae7fb714d47071ea5b4.zip opie-b3b0d6ec136e550029b9cae7fb714d47071ea5b4.tar.gz opie-b3b0d6ec136e550029b9cae7fb714d47071ea5b4.tar.bz2 |
add child item factory to allow subclasses adding custom data items
-rw-r--r-- | noncore/net/wellenreiter/cornucopia/olistview.cpp | 14 | ||||
-rw-r--r-- | noncore/net/wellenreiter/cornucopia/olistview.h | 26 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/scanlist.cpp | 33 | ||||
-rw-r--r-- | noncore/net/wellenreiter/gui/scanlist.h | 26 |
4 files changed, 68 insertions, 31 deletions
diff --git a/noncore/net/wellenreiter/cornucopia/olistview.cpp b/noncore/net/wellenreiter/cornucopia/olistview.cpp index f2d3730..c292eb9 100644 --- a/noncore/net/wellenreiter/cornucopia/olistview.cpp +++ b/noncore/net/wellenreiter/cornucopia/olistview.cpp | |||
@@ -125,2 +125,7 @@ void OListView::setColumnSeparator( const QPen& p ) | |||
125 | 125 | ||
126 | OListViewItem* OListView::childFactory() | ||
127 | { | ||
128 | return new OListViewItem( this ); | ||
129 | } | ||
130 | |||
126 | #ifndef QT_NO_DATASTREAM | 131 | #ifndef QT_NO_DATASTREAM |
@@ -182,3 +187,3 @@ void OListView::serializeFrom( QDataStream& s ) | |||
182 | { | 187 | { |
183 | OListViewItem* item = new OListViewItem( this ); | 188 | OListViewItem* item = childFactory(); |
184 | s >> *item; | 189 | s >> *item; |
@@ -339,2 +344,7 @@ void OListViewItem::paintCell(QPainter *p, const QColorGroup &cg, int column, in | |||
339 | 344 | ||
345 | OListViewItem* OListViewItem::childFactory() | ||
346 | { | ||
347 | return new OListViewItem( this ); | ||
348 | } | ||
349 | |||
340 | #ifndef QT_NO_DATASTREAM | 350 | #ifndef QT_NO_DATASTREAM |
@@ -390,3 +400,3 @@ void OListViewItem::serializeFrom( QDataStream& s ) | |||
390 | { | 400 | { |
391 | OListViewItem* item = new OListViewItem( this ); | 401 | OListViewItem* item = childFactory(); |
392 | s >> (*item); | 402 | s >> (*item); |
diff --git a/noncore/net/wellenreiter/cornucopia/olistview.h b/noncore/net/wellenreiter/cornucopia/olistview.h index 9df5500..8911e22 100644 --- a/noncore/net/wellenreiter/cornucopia/olistview.h +++ b/noncore/net/wellenreiter/cornucopia/olistview.h | |||
@@ -40,3 +40,3 @@ | |||
40 | 40 | ||
41 | class OListViewFactory; | 41 | class OListViewItem; |
42 | 42 | ||
@@ -117,2 +117,8 @@ class OListViewFactory; | |||
117 | 117 | ||
118 | /** | ||
119 | * create a list view item as child of this object | ||
120 | * @return the new object | ||
121 | */ | ||
122 | virtual OListViewItem* childFactory(); | ||
123 | |||
118 | #ifndef QT_NO_DATASTREAM | 124 | #ifndef QT_NO_DATASTREAM |
@@ -131,11 +137,2 @@ class OListViewFactory; | |||
131 | 137 | ||
132 | /** | ||
133 | * returns a factory for OListView classes | ||
134 | * creates one on the fly if it doesn't exist | ||
135 | * @return the XML Factory | ||
136 | */ | ||
137 | #ifndef QT_NO_XML | ||
138 | //OListViewFactory* Factory(); | ||
139 | #endif | ||
140 | |||
141 | private: | 138 | private: |
@@ -144,5 +141,2 @@ class OListViewFactory; | |||
144 | QPen m_columnSeparator; | 141 | QPen m_columnSeparator; |
145 | #ifndef QT_NO_XML | ||
146 | //OListViewFactory* m_Factory; | ||
147 | #endif | ||
148 | }; | 142 | }; |
@@ -203,2 +197,8 @@ class OListViewItem: public QListViewItem | |||
203 | 197 | ||
198 | /** | ||
199 | * create a list view item as child of this object | ||
200 | * @return the new object | ||
201 | */ | ||
202 | virtual OListViewItem* childFactory(); | ||
203 | |||
204 | #ifndef QT_NO_DATASTREAM | 204 | #ifndef QT_NO_DATASTREAM |
diff --git a/noncore/net/wellenreiter/gui/scanlist.cpp b/noncore/net/wellenreiter/gui/scanlist.cpp index 58a04fb..be1245e 100644 --- a/noncore/net/wellenreiter/gui/scanlist.cpp +++ b/noncore/net/wellenreiter/gui/scanlist.cpp | |||
@@ -55,2 +55,7 @@ MScanListView::~MScanListView() | |||
55 | 55 | ||
56 | OListViewItem* MScanListView::childFactory() | ||
57 | { | ||
58 | return new MScanListItem( this ); | ||
59 | } | ||
60 | |||
56 | void MScanListView::serializeTo( QDataStream& s) const | 61 | void MScanListView::serializeTo( QDataStream& s) const |
@@ -98,3 +103,3 @@ void MScanListView::addNewItem( QString type, QString essid, QString macaddr, bo | |||
98 | /* | 103 | /* |
99 | 104 | ||
100 | const QPixmap* pixmap = item->pixmap( 0 ); | 105 | const QPixmap* pixmap = item->pixmap( 0 ); |
@@ -114,8 +119,8 @@ void MScanListView::addNewItem( QString type, QString essid, QString macaddr, bo | |||
114 | // we have already seen this net, check all childs if MAC exists | 119 | // we have already seen this net, check all childs if MAC exists |
115 | 120 | ||
116 | network = item; | 121 | network = item; |
117 | 122 | ||
118 | item = static_cast<MScanListItem*> ( item->firstChild() ); | 123 | item = static_cast<MScanListItem*> ( item->firstChild() ); |
119 | assert( item ); // this shouldn't fail | 124 | assert( item ); // this shouldn't fail |
120 | 125 | ||
121 | while ( item && ( item->text( 2 ) != macaddr ) ) | 126 | while ( item && ( item->text( 2 ) != macaddr ) ) |
@@ -200,5 +205,14 @@ MScanListItem::MScanListItem( QListViewItem* parent, QString type, QString essid | |||
200 | 205 | ||
206 | OListViewItem* MScanListItem::childFactory() | ||
207 | { | ||
208 | return new MScanListItem( this ); | ||
209 | } | ||
210 | |||
201 | void MScanListItem::serializeTo( QDataStream& s ) const | 211 | void MScanListItem::serializeTo( QDataStream& s ) const |
202 | { | 212 | { |
213 | qDebug( "serializing MScanListItem" ); | ||
203 | OListViewItem::serializeTo( s ); | 214 | OListViewItem::serializeTo( s ); |
215 | |||
216 | s << _type; | ||
217 | s << (Q_UINT8) _wep; | ||
204 | } | 218 | } |
@@ -207,3 +221,14 @@ void MScanListItem::serializeFrom( QDataStream& s ) | |||
207 | { | 221 | { |
222 | qDebug( "serializing MScanListItem" ); | ||
208 | OListViewItem::serializeFrom( s ); | 223 | OListViewItem::serializeFrom( s ); |
224 | |||
225 | s >> _type; | ||
226 | s >> (Q_UINT8) _wep; | ||
227 | |||
228 | QString name; | ||
229 | name.sprintf( "wellenreiter/%s", (const char*) _type ); | ||
230 | setPixmap( col_type, Resource::loadPixmap( name ) ); | ||
231 | if ( _wep ) | ||
232 | setPixmap( col_wep, Resource::loadPixmap( "wellenreiter/cracked" ) ); //FIXME: rename the pixmap! | ||
233 | listView()->triggerUpdate(); | ||
209 | } | 234 | } |
diff --git a/noncore/net/wellenreiter/gui/scanlist.h b/noncore/net/wellenreiter/gui/scanlist.h index 66c701b..222217c 100644 --- a/noncore/net/wellenreiter/gui/scanlist.h +++ b/noncore/net/wellenreiter/gui/scanlist.h | |||
@@ -35,2 +35,3 @@ class MScanListView: public OListView | |||
35 | 35 | ||
36 | virtual OListViewItem* childFactory(); | ||
36 | virtual void serializeTo( QDataStream& s ) const; | 37 | virtual void serializeTo( QDataStream& s ) const; |
@@ -52,16 +53,16 @@ class MScanListItem: public OListViewItem | |||
52 | MScanListItem::MScanListItem( QListView* parent, | 53 | MScanListItem::MScanListItem( QListView* parent, |
53 | QString type, | 54 | QString type = "unknown", |
54 | QString essid, | 55 | QString essid = "unknown", |
55 | QString macaddr, | 56 | QString macaddr = "unknown", |
56 | bool wep, | 57 | bool wep = false, |
57 | int channel, | 58 | int channel = 0, |
58 | int signal ); | 59 | int signal = 0 ); |
59 | 60 | ||
60 | MScanListItem::MScanListItem( QListViewItem* parent, | 61 | MScanListItem::MScanListItem( QListViewItem* parent, |
61 | QString type, | 62 | QString type = "unknown", |
62 | QString essid, | 63 | QString essid = "unknown", |
63 | QString macaddr, | 64 | QString macaddr = "unknown", |
64 | bool wep, | 65 | bool wep = false, |
65 | int channel, | 66 | int channel = 0, |
66 | int signal ); | 67 | int signal = 0 ); |
67 | 68 | ||
@@ -88,2 +89,3 @@ class MScanListItem: public OListViewItem | |||
88 | 89 | ||
90 | virtual OListViewItem* childFactory(); | ||
89 | virtual void serializeTo( QDataStream& s ) const; | 91 | virtual void serializeTo( QDataStream& s ) const; |