summaryrefslogtreecommitdiff
path: root/uisimulator/win32
diff options
context:
space:
mode:
Diffstat (limited to 'uisimulator/win32')
-rw-r--r--uisimulator/win32/button.c13
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
37struct event_queue button_queue; 37struct event_queue button_queue;
38 38
39static int btn = 0; /* Hopefully keeps track of currently pressed keys... */
40
39void button_event(int key, bool pressed) 41void 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
184int button_status(void)
185{
186 return btn;
187}
188
183void button_init(void) 189void 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
213void button_clear_queue(void)
214{
215 queue_empty(&button_queue);
216}