Mercurial > projects > doodle
diff tk/types.d @ 6:a27d2093991c
Checkpoint
author | "David Bryant <bagnose@gmail.com>" |
---|---|
date | Sat, 11 Jul 2009 20:44:14 +0930 |
parents | 8a39b13cd3e6 |
children | 936feb16eed4 |
line wrap: on
line diff
--- a/tk/types.d Fri Jul 10 18:19:16 2009 +0930 +++ b/tk/types.d Sat Jul 11 20:44:14 2009 +0930 @@ -4,94 +4,6 @@ private import std.typecons; private import std.algorithm; - /* -enum ButtonPress { - SINGLE, - DOUBLE, - TRIPLE, - RELEASE -} - -string toString(in ButtonPress bp) { - switch (bp) { - case ButtonPress.SINGLE: return "SINGLE"; - case ButtonPress.DOUBLE: return "DOUBLE"; - case ButtonPress.TRIPLE: return "TRIPLE"; - case ButtonPress.RELEASE: return "RELEASE"; - default: return std.string.format("<UNKNOWN ButtonPress: %s>", bp); - } -} - -enum ButtonNumber { - BUTTON_1, - BUTTON_2, - BUTTON_3, - BUTTON_4, - BUTTON_5, -} - -string toString(in ButtonNumber bn) { - switch (bn) { - case ButtonNumber.BUTTON_1: return "BUTTON_1"; - case ButtonNumber.BUTTON_2: return "BUTTON_2"; - case ButtonNumber.BUTTON_3: return "BUTTON_3"; - case ButtonNumber.BUTTON_4: return "BUTTON_4"; - case ButtonNumber.BUTTON_5: return "BUTTON_5"; - default: return std.string.format("<UNKNOWN ButtonNumber: %s>", bn); - } -} - -enum ScrollDirection { - UP, - DOWN, - LEFT, - RIGHT -} - -string toString(in ScrollDirection sd) { - switch (sd) { - case ScrollDirection.UP: return "UP"; - case ScrollDirection.DOWN: return "DOWN"; - case ScrollDirection.LEFT: return "LEFT"; - case ScrollDirection.RIGHT: return "RIGHT"; - default: return std.string.format("<UNKNOWN ScrollDirection: %s>", sd); - } -} - -enum Modifier { - SHIFT, - CAPS_LOCK, - CONTROL, - ALT, - NUM_LOCK, - META, - SCROLL_LOCK, - BUTTON_1, - BUTTON_2, - BUTTON_3, - BUTTON_4, - BUTTON_5 -} - -string toString(in Modifier m) { - switch (m) { - case Modifier.SHIFT: return "SHIFT"; - case Modifier.CAPS_LOCK: return "CAPS_LOCK"; - case Modifier.CONTROL: return "CONTROL"; - case Modifier.ALT: return "ALT"; - case Modifier.NUM_LOCK: return "NUM_LOCK"; - case Modifier.META: return "META"; - case Modifier.SCROLL_LOCK: return "SCROLL_LOCK"; - case Modifier.BUTTON_1: return "BUTTON_1"; - case Modifier.BUTTON_2: return "BUTTON_2"; - case Modifier.BUTTON_3: return "BUTTON_3"; - case Modifier.BUTTON_4: return "BUTTON_4"; - case Modifier.BUTTON_5: return "BUTTON_5"; - default: return std.string.format("<UNKNOWN Modifier: %s>", m); - } -} -*/ - mixin(defineEnum!("ButtonPress", "SINGLE", "DOUBLE", "TRIPLE", "RELEASE")); mixin(defineEnum!("ButtonNumber", @@ -102,15 +14,16 @@ "SHIFT", "CAPS_LOCK", "CONTROL", "ALT", "NUM_LOCK", "META", "SCROLL_LOCK", "BUTTON_1", "BUTTON_2", "BUTTON_3", "BUTTON_4", "BUTTON_5")); -struct Mask2 { +class Mask { this(in Modifier[] modifiers) { _modifiers = modifiers.dup; } - string toString() const { + override string toString() const { string s; foreach (Modifier m; _modifiers) { + if (s != "") s ~= "|"; s ~= enumToString(m); } @@ -136,6 +49,7 @@ } } +/* class Mask { this() { } @@ -151,10 +65,6 @@ override string toString() const { Modifier m = Modifier.SHIFT; return enumToString(m); - /* - return format("Mask: %s", m); - */ - //return format("%d", mBits); } private { @@ -162,3 +72,4 @@ int mBits; } } +*/