Changeset 44:07bd1a09e161
- Timestamp:
- 05/16/08 07:22:10 (8 months ago)
- Files:
-
- codeDoc/jobs.txt (modified) (1 diff)
- data/conf/gui.mtt (modified) (1 diff)
- doc/Readme.txt (modified) (1 diff)
- mde/ft/init.d (deleted)
- mde/gl/basic.d (modified) (2 diffs)
- mde/gui/widget/Widget.d (modified) (7 diffs)
- mde/gui/widget/createWidget.d (modified) (4 diffs)
- mde/resource/exception.d (added)
- mde/resource/font.d (added)
- mde/resource/paths.d (modified) (1 diff)
- mde/scheduler/init2.d (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
codeDoc/jobs.txt
r43 r44 4 4 5 5 In progress: 6 Implementing font rendering 6 7 7 8 data/conf/gui.mtt
r43 r44 8 8 <int|x=150> 9 9 <int|y=200> 10 <int[][int]|widgetData=[0:[0xB004,5,5,2,1,2,1,2,1,1,1,1,1,2,1,2,1,2,1,1,1,1,1,2,1,2,1,2],1:[0x3001],2:[0x 4010,75,75]]>10 <int[][int]|widgetData=[0:[0xB004,5,5,2,1,2,1,2,1,1,1,1,1,2,1,2,1,2,1,1,1,1,1,2,1,2,1,2],1:[0x3001],2:[0x2]]> doc/Readme.txt
r26 r44 22 22 Walter Bright and Digital Mars for D and DMD. 23 23 The tango team for Tango. 24 [derelict] 25 [sdl] 26 [opengl] 27 [freetype] 24 28 25 29 mde/gl/basic.d
r34 r44 26 26 void glSetup () { 27 27 glClearColor (0.0f, 0.0f, 0.0f, 0.0f); 28 glDisable(GL_DEPTH_TEST); 29 30 glMatrixMode(GL_MODELVIEW); 31 glLoadIdentity(); 28 32 } 29 33 … … 39 43 40 44 glMatrixMode(GL_MODELVIEW); 41 glLoadIdentity();42 45 } 43 46 //END GL & window setup mde/gui/widget/Widget.d
r43 r44 20 20 import mde.gui.exception; 21 21 import mde.gui.renderer.IRenderer; 22 23 import mde.resource.font; 22 24 23 25 import tango.io.Stdout; … … 43 45 } 44 46 47 bool isWSizable () { return false; } 48 bool isHSizable () { return false; } 49 45 50 // Widget type should always be the first value. 46 51 int[] getCreationData () { … … 85 90 class FixedWidget : Widget { 86 91 this (IWindow wind, int[] data) { 87 super (wind, data);88 w = wF = data[1];89 h = hF = data[2];92 w = wF; 93 h = hF; 94 super (wind, data); 90 95 } 91 96 … … 93 98 return [widgetType, wF, hF]; 94 99 } 95 96 bool isWSizable () { return false; }97 bool isHSizable () { return false; }98 100 99 101 /* Not resizable, so return current size. */ … … 143 145 this (IWindow wind, int[] data) { 144 146 if (data.length != 3) throw new WidgetDataException; 147 wF = data[1]; 148 hF = data[2]; 145 149 super (wind, data); 146 150 } … … 170 174 this (IWindow wind, int[] data) { 171 175 if (data.length != 3) throw new WidgetDataException; 176 wF = data[1]; 177 hF = data[2]; 172 178 super (wind, data); 173 179 } … … 207 213 } 208 214 } 215 216 /// Basic text widget 217 class TextWidget : FixedWidget 218 { 219 this (IWindow wind, int[] data) { 220 if (data.length != 1) throw new WidgetDataException; 221 wF = 100; //FIXME: set properly 222 hF = 25; 223 super (wind,data); 224 } 225 226 void draw () { 227 super.draw(); 228 if (font is null) font = Font.get("/usr/share/fonts/truetype/ttf-dejavu/DejaVuSans.ttf"); 229 font.drawStr (x,y, "Text Widget"); 230 } 231 232 protected: 233 static Font font; 234 } 209 235 //END Widgets mde/gui/widget/createWidget.d
r39 r44 61 61 SizableBlank = WSIZABLE | HSIZABLE | 0x1, 62 62 63 // text: 0x2 64 Text = 0x2, 65 63 66 // buttons: 0x10 64 67 Button = INTERACTIBLE | 0x10, … … 72 75 const char[][] WIDGETS = [ 73 76 "FixedBlank", 77 "Text", 74 78 "SizableBlank", 75 79 "Button", … … 77 81 78 82 // Purely to add indentation. Could just return "" without affecting functionality. 79 /+static char[] indent (uint i) {83 static char[] indent (uint i) { 80 84 char[] ret; 81 85 for (; i > 0; --i) ret ~= " "; … … 84 88 //ret[] = ' '; // character to indent with 85 89 return ret; 86 } +/87 char[] indent (uint) { return ""; }90 } 91 //char[] indent (uint) { return ""; } 88 92 89 93 /* Generates a binary search algorithm. */ mde/resource/paths.d
r28 r44 151 151 * 152 152 * Note: the logger cannot be used yet, so only output is exception messages. */ 153 153 // FIXME: use tango/sys/Environment.d 154 154 version (linux) { 155 155 void resolvePaths () { mde/scheduler/init2.d
r39 r44 36 36 import mde.gui.Gui; 37 37 import mde.input.Input; 38 import f t = mde.ft.init;38 import font = mde.resource.font; 39 39 40 40 // NOTE: error reporting needs a revision … … 87 87 void initFreeType () { // init func 88 88 try { 89 f t.initFreeType;89 font.Font.initialize; 90 90 } catch (Exception e) { 91 91 logger.fatal ("initFreeType failed: " ~ e.msg);
