comparison mde/gui/widget/TextWidget.d @ 105:08651e8a8c51

Quit button, big changes to content system. Moved mde.gui.content to mde.content to reflect it's not only used by the gui. Split Content module into Content and AStringContent. New AContent and EventContent class. Callbacks are now generic and implemented in AContent. Renamed TextContent to StringContent and ValueContent to AStringContent.
author Diggory Hardy <diggory.hardy@gmail.com>
date Sat, 29 Nov 2008 12:36:39 +0000
parents 42e241e7be3e
children 6acd96f8685f
comparison
equal deleted inserted replaced
104:ee209602770d 105:08651e8a8c51
20 module mde.gui.widget.TextWidget; 20 module mde.gui.widget.TextWidget;
21 21
22 import mde.gui.widget.Widget; 22 import mde.gui.widget.Widget;
23 import mde.gui.exception; 23 import mde.gui.exception;
24 import mde.gui.renderer.IRenderer; 24 import mde.gui.renderer.IRenderer;
25 import mde.gui.content.Content; 25 import mde.content.Content;
26 26
27 import tango.util.log.Log : Log, Logger; 27 import tango.util.log.Log : Log, Logger;
28 private Logger logger; 28 private Logger logger;
29 static this () { 29 static this () {
30 logger = Log.getLogger ("mde.gui.widget.TextWidget"); 30 logger = Log.getLogger ("mde.gui.widget.TextWidget");
84 84
85 protected: 85 protected:
86 IContent content; 86 IContent content;
87 int index; 87 int index;
88 } 88 }
89
90 class TextButtonWidget : AButtonWidget
91 {
92 this (IWidgetManager mgr, widgetID id, WidgetData data) {
93 WDCheck (data, 1, 1);
94 adapter = mgr.renderer.getAdapter (data.strings[0]);
95 adapter.getDimensions (mw, mh);
96 w = mw;
97 h = mh;
98 super (mgr, id, data);
99 }
100
101 void draw () {
102 super.draw();
103 adapter.draw (x,y);
104 }
105
106 void activated () {
107 logger.info ("Button \""~adapter.text~"\" pressed");
108 }
109
110 protected:
111 IRenderer.TextAdapter adapter;
112 IContent content;
113 int index;
114 }