Mercurial > projects > doodle
diff doodle/tk/events.d @ 104:ab745d8b10e5
Updated to dmd 2.052
author | David Bryant <bagnose@gmail.com> |
---|---|
date | Sun, 20 Feb 2011 22:24:36 +1030 |
parents | d92b9f04b1e8 |
children | 7abaf5c3959f |
line wrap: on
line diff
--- a/doodle/tk/events.d Wed Oct 06 13:03:38 2010 +1030 +++ b/doodle/tk/events.d Sun Feb 20 22:24:36 2011 +1030 @@ -7,25 +7,54 @@ } private { - import std.typecons; + import std.conv; +} + +enum ButtonAction { + SINGLE_PRESS, + DOUBLE_PRESS, + TRIPLE_PRESS, + RELEASE +} + +enum ButtonName { + LEFT, + MIDDLE, + RIGHT, + FOUR, + FIVE } -mixin(defineEnum!("ButtonAction", - "SINGLE_PRESS", "DOUBLE_PRESS", "TRIPLE_PRESS", "RELEASE")); - -mixin(defineEnum!("ButtonName", - "LEFT", "MIDDLE", "RIGHT", "FOUR", "FIVE")); +enum ScrollDirection { + UP, + DOWN, + LEFT, + RIGHT +} -mixin(defineEnum!("ScrollDirection", - "UP", "DOWN", "LEFT", "RIGHT")); +enum Modifier { + SHIFT, + CAPS_LOCK, + CONTROL, + ALT, + NUM_LOCK, + META, + SCROLL_LOCK, + LEFT_BUTTON, + MIDDLE_BUTTON, + RIGHT_BUTTON, + UNUSED_BUTTON_1, + UNUSED_BUTTON_2 +} -mixin(defineEnum!("Modifier", - "SHIFT", "CAPS_LOCK", "CONTROL", "ALT", "NUM_LOCK", "META", - "SCROLL_LOCK", "LEFT_BUTTON", "MIDDLE_BUTTON", "RIGHT_BUTTON", - "UNUSED_BUTTON_1", "UNUSED_BUTTON_2")); - -mixin(defineEnum!("CrossingMode", // FIXME what to do about GRAB2/UNGRAB2 - "NORMAL", "GRAB", "UNGRAB", "GRAB2", "UNGRAB2", "STATE_CHANGED")); +enum CrossingMode { // FIXME what to do about GRAB2/UNGRAB2 + NORMAL, + GRAB, + UNGRAB, + GRAB2, + UNGRAB2, + STATE_CHANGED +} struct Mask { this(in Modifier[] modifiers) { @@ -44,7 +73,7 @@ for (int i = 0; i < _bits.sizeof * 8; ++i) { if (_bits & (1 << i)) { if (s.length != 0) s ~= "|"; - s ~= enumToString(cast(Modifier)i); + s ~= to!string(cast(Modifier)i); } } @@ -122,7 +151,7 @@ CrossingMode crossingMode() const { return _crossingMode; } override string toString() const { - return std.string.format("Crossing event: %s, %s, %s, %s", enumToString(_crossingMode), screenPoint, modelPoint, mask); + return std.string.format("Crossing event: %s, %s, %s, %s", to!string(_crossingMode), screenPoint, modelPoint, mask); } private { @@ -143,7 +172,7 @@ override string toString() const { return std.string.format("Button event: %s, %s, %s, %s, %s", - enumToString(_buttonAction), enumToString(_buttonName), + to!string(_buttonAction), to!string(_buttonName), _screenPoint, _modelPoint, _mask); } @@ -180,7 +209,7 @@ override string toString() const { return std.string.format("Scroll event: %s, %s, %s, %s", - enumToString(_scrollDirection), _screenPoint, _modelPoint, _mask); + to!string(_scrollDirection), _screenPoint, _modelPoint, _mask); } ScrollDirection scrollDirection() const { return _scrollDirection; }