Mercurial > projects > doodle
comparison gtk/gtk_conversions.d @ 21:993ac3a183c8
Checkpoint
author | "David Bryant <bagnose@gmail.com>" |
---|---|
date | Wed, 15 Jul 2009 23:23:57 +0930 |
parents | tk/gtk_support.d@9e63308b749c |
children |
comparison
equal
deleted
inserted
replaced
20:d6e7a5a6f008 | 21:993ac3a183c8 |
---|---|
1 module gtk.conversions; | |
2 | |
3 public { | |
4 import tk.types; | |
5 } | |
6 | |
7 private { | |
8 static import gdk.Event; | |
9 } | |
10 | |
11 ButtonAction gtk2tk_button_action(gdk.Event.EventType event_type) { | |
12 switch (event_type) { | |
13 case gdk.Event.EventType.BUTTON_PRESS: | |
14 return ButtonAction.SINGLE_PRESS; | |
15 case gdk.Event.EventType.DOUBLE_BUTTON_PRESS: | |
16 return ButtonAction.DOUBLE_PRESS; | |
17 case gdk.Event.EventType.TRIPLE_BUTTON_PRESS: | |
18 return ButtonAction.TRIPLE_PRESS; | |
19 case gdk.Event.EventType.BUTTON_RELEASE: | |
20 return ButtonAction.RELEASE; | |
21 default: | |
22 assert(false); | |
23 } | |
24 } | |
25 | |
26 ButtonName gtk2tk_button_name(gdk.Event.guint button) { | |
27 switch (button) { | |
28 case 1: | |
29 return ButtonName.LEFT; | |
30 case 2: | |
31 return ButtonName.MIDDLE; | |
32 case 3: | |
33 return ButtonName.RIGHT; | |
34 case 4: | |
35 return ButtonName.FOUR; | |
36 case 5: | |
37 return ButtonName.FIVE; | |
38 default: | |
39 assert(false); | |
40 } | |
41 } | |
42 | |
43 Mask gtk2tk_mask(gdk.Event.guint state) { | |
44 Modifier[] modifiers; | |
45 | |
46 if (state & gdk.Event.GdkModifierType.SHIFT_MASK) modifiers ~= Modifier.SHIFT; | |
47 if (state & gdk.Event.GdkModifierType.CONTROL_MASK) modifiers ~= Modifier.CONTROL; | |
48 if (state & gdk.Event.GdkModifierType.MOD1_MASK) modifiers ~= Modifier.ALT; | |
49 if (state & gdk.Event.GdkModifierType.MOD2_MASK) modifiers ~= Modifier.META; | |
50 if (state & gdk.Event.GdkModifierType.BUTTON1_MASK) modifiers ~= Modifier.LEFT_BUTTON; | |
51 if (state & gdk.Event.GdkModifierType.BUTTON2_MASK) modifiers ~= Modifier.MIDDLE_BUTTON; | |
52 if (state & gdk.Event.GdkModifierType.BUTTON3_MASK) modifiers ~= Modifier.RIGHT_BUTTON; | |
53 if (state & gdk.Event.GdkModifierType.BUTTON4_MASK) modifiers ~= Modifier.UNUSED_BUTTON_1; | |
54 if (state & gdk.Event.GdkModifierType.BUTTON5_MASK) modifiers ~= Modifier.UNUSED_BUTTON_2; | |
55 | |
56 Mask m = Mask(modifiers); | |
57 | |
58 return Mask(modifiers); | |
59 } | |
60 | |
61 ScrollDirection gtk2tk_direction(gdk.Event.ScrollDirection direction) { | |
62 switch (direction) { | |
63 case gdk.Event.ScrollDirection.UP: | |
64 return ScrollDirection.UP; | |
65 case gdk.Event.ScrollDirection.DOWN: | |
66 return ScrollDirection.DOWN; | |
67 case gdk.Event.ScrollDirection.LEFT: | |
68 return ScrollDirection.LEFT; | |
69 case gdk.Event.ScrollDirection.RIGHT: | |
70 return ScrollDirection.RIGHT; | |
71 default: | |
72 assert(false); | |
73 } | |
74 } |