Mercurial > projects > dwt2
comparison org.eclipse.swt.snippets/src/org/eclipse/swt/snippets/Snippet25.d @ 112:9f4c18c268b2
Update to compile and execute with dmd 2.052.
author | kntroh |
---|---|
date | Wed, 16 Mar 2011 21:53:53 +0900 |
parents | 69b1fa94a4a8 |
children | 536e43f63c81 |
comparison
equal
deleted
inserted
replaced
111:b6e9904989ed | 112:9f4c18c268b2 |
---|---|
23 import org.eclipse.swt.SWT; | 23 import org.eclipse.swt.SWT; |
24 import org.eclipse.swt.widgets.Display; | 24 import org.eclipse.swt.widgets.Display; |
25 import org.eclipse.swt.widgets.Shell; | 25 import org.eclipse.swt.widgets.Shell; |
26 import org.eclipse.swt.widgets.Listener; | 26 import org.eclipse.swt.widgets.Listener; |
27 import org.eclipse.swt.widgets.Event; | 27 import org.eclipse.swt.widgets.Event; |
28 import java.lang.all; | |
28 | 29 |
29 import tango.io.Stdout; | 30 version(Tango){ |
30 import tango.text.convert.Format; | 31 import tango.io.Stdout; |
32 import tango.text.convert.Format; | |
33 import tango.util.Convert; | |
34 } else { // Phobos | |
35 import std.stdio; | |
36 import std.string; | |
37 import std.conv; | |
38 } | |
31 | 39 |
32 static char[] stateMask (int stateMask) { | 40 static String stateMask (int stateMask) { |
33 char[] string = ""; | 41 String string = ""; |
34 if ((stateMask & SWT.CTRL) != 0) string ~= " CTRL"; | 42 if ((stateMask & SWT.CTRL) != 0) string ~= " CTRL"; |
35 if ((stateMask & SWT.ALT) != 0) string ~= " ALT"; | 43 if ((stateMask & SWT.ALT) != 0) string ~= " ALT"; |
36 if ((stateMask & SWT.SHIFT) != 0) string ~= " SHIFT"; | 44 if ((stateMask & SWT.SHIFT) != 0) string ~= " SHIFT"; |
37 if ((stateMask & SWT.COMMAND) != 0) string ~= " COMMAND"; | 45 if ((stateMask & SWT.COMMAND) != 0) string ~= " COMMAND"; |
38 return string; | 46 return string; |
39 } | 47 } |
40 | 48 |
41 static char[] character (char character) { | 49 static String character (wchar character) { |
42 switch (character) { | 50 switch (character) { |
43 case 0: return "'\\0'"; | 51 case 0: return "'\\0'"; |
44 case SWT.BS: return "'\\b'"; | 52 case SWT.BS: return "'\\b'"; |
45 case SWT.CR: return "'\\r'"; | 53 case SWT.CR: return "'\\r'"; |
46 case SWT.DEL: return "DEL"; | 54 case SWT.DEL: return "DEL"; |
47 case SWT.ESC: return "ESC"; | 55 case SWT.ESC: return "ESC"; |
48 case SWT.LF: return "'\\n'"; | 56 case SWT.LF: return "'\\n'"; |
49 case SWT.TAB: return "'\\t'"; | 57 case SWT.TAB: return "'\\t'"; |
50 default: | 58 default: |
51 return "'" ~ character ~"'"; | 59 return to!(String)("'"w ~ character ~"'"w); |
52 } | 60 } |
53 } | 61 } |
54 | 62 |
55 static char[] keyCode (int keyCode) { | 63 static String keyCode (int keyCode) { |
56 switch (keyCode) { | 64 switch (keyCode) { |
57 | 65 |
58 /* Keyboard and Mouse Masks */ | 66 /* Keyboard and Mouse Masks */ |
59 case SWT.ALT: return "ALT"; | 67 case SWT.ALT: return "ALT"; |
60 case SWT.SHIFT: return "SHIFT"; | 68 case SWT.SHIFT: return "SHIFT"; |
134 void main () { | 142 void main () { |
135 Display display = new Display (); | 143 Display display = new Display (); |
136 Shell shell = new Shell (display); | 144 Shell shell = new Shell (display); |
137 Listener listener = new class Listener { | 145 Listener listener = new class Listener { |
138 public void handleEvent (Event e) { | 146 public void handleEvent (Event e) { |
139 char[] string = e.type == SWT.KeyDown ? "DOWN:" : "UP :"; | 147 String string = e.type == SWT.KeyDown ? "DOWN:" : "UP :"; |
140 string ~= Format("stateMask=0x{:x}{},", e.stateMask, stateMask (e.stateMask)); | 148 version(Tango){ |
141 string ~= Format(" keyCode=0x{:x} {},", e.keyCode, keyCode (e.keyCode)); | 149 string ~= Format("stateMask=0x{:x}{},", e.stateMask, stateMask (e.stateMask)); |
142 string ~= Format(" character=0x{:x} {}", e.character, character (e.character)); | 150 string ~= Format(" keyCode=0x{:x} {},", e.keyCode, keyCode (e.keyCode)); |
143 Stdout.formatln (string); | 151 string ~= Format(" character=0x{:x} {}", e.character, character (e.character)); |
152 Stdout.formatln (string); | |
153 } else { // Phobos | |
154 string ~= format("stateMask=0x%x%s,", e.stateMask, stateMask (e.stateMask)); | |
155 string ~= format(" keyCode=0x%x %s,", e.keyCode, keyCode (e.keyCode)); | |
156 string ~= format(" character=0x%x %s", e.character, character (e.character)); | |
157 writefln (string); | |
158 } | |
144 } | 159 } |
145 }; | 160 }; |
146 shell.addListener (SWT.KeyDown, listener); | 161 shell.addListener (SWT.KeyDown, listener); |
147 shell.addListener (SWT.KeyUp, listener); | 162 shell.addListener (SWT.KeyUp, listener); |
148 shell.setSize (200, 200); | 163 shell.setSize (200, 200); |