Mercurial > projects > mde
comparison mde/gui/widget/miscContent.d @ 113:9824bee909fd
Popup menu; works for simple menus except that clicking an item doesn't close it.
Revised popup support a bit; EnumContentWidget is broken and due to be replaced.
author | Diggory Hardy <diggory.hardy@gmail.com> |
---|---|
date | Fri, 19 Dec 2008 10:32:28 +0000 |
parents | fe061009029d |
children | b16a534f5302 |
comparison
equal
deleted
inserted
replaced
112:fe061009029d | 113:9824bee909fd |
---|---|
65 return new EnumContentWidget(mgr,id,data,c); | 65 return new EnumContentWidget(mgr,id,data,c); |
66 else | 66 else |
67 return new AStringContentWidget(mgr,id,data,c); | 67 return new AStringContentWidget(mgr,id,data,c); |
68 } else if (cast(ContentList) c) | 68 } else if (cast(ContentList) c) |
69 return new ContentListWidget(mgr,id,data,c); | 69 return new ContentListWidget(mgr,id,data,c); |
70 else // generic uneditable option | 70 else if (cast(EventContent) c) |
71 return new ButtonContentWidget(mgr,id,data,c); | |
72 else // generic uneditable option | |
71 return new DisplayContentWidget(mgr,id,data,c); | 73 return new DisplayContentWidget(mgr,id,data,c); |
72 } | 74 } |
73 | 75 |
74 /// Editable boolean widget | 76 /// Editable boolean widget |
75 class BoolContentWidget : AButtonWidget | 77 class BoolContentWidget : AButtonWidget |
151 w = mw; | 153 w = mw; |
152 h = mh; | 154 h = mh; |
153 } | 155 } |
154 | 156 |
155 void activated () { | 157 void activated () { |
156 mgr.addPopup (x,y, internalWidg); | 158 mgr.addPopup (this, internalWidg); |
157 } | 159 } |
158 | 160 |
159 void draw () { | 161 void draw () { |
160 super.draw; | 162 super.draw; |
161 adapter.draw (x,y); | 163 adapter.draw (x,y); |
205 for (; i > 0; --i) | 207 for (; i > 0; --i) |
206 if (cy >= yPos[i]) | 208 if (cy >= yPos[i]) |
207 break; | 209 break; |
208 logger.trace ("Setting value: {}", i); | 210 logger.trace ("Setting value: {}", i); |
209 content = i; | 211 content = i; |
210 mgr.removePopup (this); | 212 //mgr.removePopup (this); |
211 changeContent; | 213 changeContent; |
212 } | 214 } |
213 | 215 |
214 pushed = false; | 216 pushed = false; |
215 mgr.requestRedraw; | 217 mgr.requestRedraw; |