diff options
Diffstat (limited to 'uisimulator/win32')
-rw-r--r-- | uisimulator/win32/button.c | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/uisimulator/win32/button.c b/uisimulator/win32/button.c index 4532727200..0af6ff40a6 100644 --- a/uisimulator/win32/button.c +++ b/uisimulator/win32/button.c | |||
@@ -36,13 +36,14 @@ | |||
36 | 36 | ||
37 | struct event_queue button_queue; | 37 | struct event_queue button_queue; |
38 | 38 | ||
39 | static int btn = 0; /* Hopefully keeps track of currently pressed keys... */ | ||
40 | |||
39 | void button_event(int key, bool pressed) | 41 | void button_event(int key, bool pressed) |
40 | { | 42 | { |
41 | bool post = false; | 43 | bool post = false; |
42 | int new_btn = 0; | 44 | int new_btn = 0; |
43 | int diff = 0; | 45 | int diff = 0; |
44 | static int count = 0; | 46 | static int count = 0; |
45 | static int btn = 0; /* Hopefully keeps track of currently pressed keys... */ | ||
46 | static int lastbtn; | 47 | static int lastbtn; |
47 | static int repeat_speed = REPEAT_INTERVAL_START; | 48 | static int repeat_speed = REPEAT_INTERVAL_START; |
48 | static int repeat_count = 0; | 49 | static int repeat_count = 0; |
@@ -180,6 +181,11 @@ void button_event(int key, bool pressed) | |||
180 | lastbtn = btn & ~(BUTTON_REL | BUTTON_REPEAT); | 181 | lastbtn = btn & ~(BUTTON_REL | BUTTON_REPEAT); |
181 | } | 182 | } |
182 | 183 | ||
184 | int button_status(void) | ||
185 | { | ||
186 | return btn; | ||
187 | } | ||
188 | |||
183 | void button_init(void) | 189 | void button_init(void) |
184 | { | 190 | { |
185 | } | 191 | } |
@@ -203,3 +209,8 @@ int button_get_w_tmo(int ticks) | |||
203 | queue_wait_w_tmo(&button_queue, &ev, ticks); | 209 | queue_wait_w_tmo(&button_queue, &ev, ticks); |
204 | return (ev.id != SYS_TIMEOUT)? ev.id: BUTTON_NONE; | 210 | return (ev.id != SYS_TIMEOUT)? ev.id: BUTTON_NONE; |
205 | } | 211 | } |
212 | |||
213 | void button_clear_queue(void) | ||
214 | { | ||
215 | queue_empty(&button_queue); | ||
216 | } | ||