summaryrefslogtreecommitdiff
authorllornkcor <llornkcor>2003-02-23 03:35:32 (UTC)
committer llornkcor <llornkcor>2003-02-23 03:35:32 (UTC)
commit98ed23c5281a57d08c6c18b464fc50b4638385f8 (patch) (unidiff)
tree79e3ad38c6e96ce3d0bbabb00e601a45f41d7210
parent47fc358e914aecd13c4cb3d9cb4b3f2ca1a93b6c (diff)
downloadopie-98ed23c5281a57d08c6c18b464fc50b4638385f8.zip
opie-98ed23c5281a57d08c6c18b464fc50b4638385f8.tar.gz
opie-98ed23c5281a57d08c6c18b464fc50b4638385f8.tar.bz2
added a couple public methods- remove(int) count() text(int) and setUseLabel. see header for notes
Diffstat (more/less context) (show whitespace changes)
-rw-r--r--library/menubutton.cpp41
-rw-r--r--library/menubutton.h6
2 files changed, 45 insertions, 2 deletions
diff --git a/library/menubutton.cpp b/library/menubutton.cpp
index 007761f..4357460 100644
--- a/library/menubutton.cpp
+++ b/library/menubutton.cpp
@@ -64,12 +64,13 @@
64 standard \a parent an \a name arguments are passed to the base 64 standard \a parent an \a name arguments are passed to the base
65 class. 65 class.
66*/ 66*/
67MenuButton::MenuButton( const QStringList& items, QWidget* parent, const char* name) : 67MenuButton::MenuButton( const QStringList& items, QWidget* parent, const char* name) :
68 QPushButton(parent,name) 68 QPushButton(parent,name)
69{ 69{
70 useLabel = true;
70 init(); 71 init();
71 insertItems(items); 72 insertItems(items);
72} 73}
73 74
74/*! 75/*!
75 Constructs an empty MenuButton. 76 Constructs an empty MenuButton.
@@ -124,25 +125,25 @@ void MenuButton::insertItems( const QStringList& items )
124 125
125 \sa insertItems() 126 \sa insertItems()
126*/ 127*/
127void MenuButton::insertItem( const QIconSet& icon, const QString& text ) 128void MenuButton::insertItem( const QIconSet& icon, const QString& text )
128{ 129{
129 pop->insertItem(icon, text, nitems++); 130 pop->insertItem(icon, text, nitems++);
130 if ( nitems==1 ) select(0); 131// if ( nitems==1 ) select(0);
131} 132}
132 133
133/*! 134/*!
134 \overload 135 \overload
135 Inserts a menu item with the label \a text into the menu. 136 Inserts a menu item with the label \a text into the menu.
136 137
137 \sa insertItems() 138 \sa insertItems()
138*/ 139*/
139void MenuButton::insertItem( const QString& text ) 140void MenuButton::insertItem( const QString& text )
140{ 141{
141 pop->insertItem(text, nitems++); 142 pop->insertItem(text, nitems++);
142 if ( nitems==1 ) select(0); 143// if ( nitems==1 ) select(0);
143} 144}
144 145
145/*! 146/*!
146 Inserts a separator into the menu. 147 Inserts a separator into the menu.
147 148
148 \sa insertItems() 149 \sa insertItems()
@@ -205,12 +206,48 @@ void MenuButton::setLabel(const QString& label)
205 lab = label; 206 lab = label;
206 updateLabel(); 207 updateLabel();
207} 208}
208 209
209void MenuButton::updateLabel() 210void MenuButton::updateLabel()
210{ 211{
212 if(useLabel)
213 {
211 QString t = pop->text(cur); 214 QString t = pop->text(cur);
212 if ( !lab.isEmpty() ) 215 if ( !lab.isEmpty() )
213 t = lab.arg(t); 216 t = lab.arg(t);
214 setText(t); 217 setText(t);
215} 218}
219}
220
221
222/*!
223 remove item at id
224 */
225void MenuButton::remove(int id)
226{
227 pop->removeItem(id);
228 nitems--;
229}
230
231/*!
232 return count of items in menu
233 */
234int MenuButton::count()
235{
236 return nitems;
237}
216 238
239/*!
240 returns text of item id
241 */
242QString MenuButton::text(int id)
243{
244 return pop->text(id);
245}
246
247/*!
248 sets true or false the use of label
249 */
250void MenuButton::setUseLabel(bool b)
251{
252 useLabel = b;
253}
diff --git a/library/menubutton.h b/library/menubutton.h
index 6582b1e..ee5dcf1 100644
--- a/library/menubutton.h
+++ b/library/menubutton.h
@@ -28,31 +28,37 @@ class MenuButton : public QPushButton {
28public: 28public:
29 MenuButton( QWidget* parent, const char* name=0); 29 MenuButton( QWidget* parent, const char* name=0);
30 MenuButton( const QStringList& items, QWidget* parent, const char* name=0); 30 MenuButton( const QStringList& items, QWidget* parent, const char* name=0);
31 31
32 void clear(); 32 void clear();
33 33
34
34 int currentItem() const; 35 int currentItem() const;
35 QString currentText() const; 36 QString currentText() const;
36 37
37 void insertItems( const QStringList& items ); 38 void insertItems( const QStringList& items );
38 void insertItem( const QIconSet& icon, const QString& text=QString::null ); 39 void insertItem( const QIconSet& icon, const QString& text=QString::null );
39 void insertItem( const QString& text ); 40 void insertItem( const QString& text );
40 void insertSeparator(); 41 void insertSeparator();
41 42
42 void setLabel(const QString& label); 43 void setLabel(const QString& label);
44 int count();
45 void remove(int id);
46 QString text(int id);
47 void setUseLabel(bool b);
43 48
44signals: 49signals:
45 void selected(int); 50 void selected(int);
46 void selected(const QString&); 51 void selected(const QString&);
47 52
48public slots: 53public slots:
49 void select(int); 54 void select(int);
50 void select(const QString&); 55 void select(const QString&);
51 56
52private: 57private:
58 bool useLabel;
53 void init(); 59 void init();
54 QStringList txts; 60 QStringList txts;
55 QPopupMenu* pop; 61 QPopupMenu* pop;
56 int nitems; 62 int nitems;
57 int cur; 63 int cur;
58 QString lab; 64 QString lab;