diff options
author | Jonathan Gordon <rockbox@jdgordon.info> | 2009-04-20 01:41:56 +0000 |
---|---|---|
committer | Jonathan Gordon <rockbox@jdgordon.info> | 2009-04-20 01:41:56 +0000 |
commit | 0eb5dc649f34ca136d0160bf5d43961a2c3cea05 (patch) | |
tree | 5082fcd0d0479979a51891e082e742e2cf769266 /uisimulator/sdl/button.c | |
parent | 88b509b7d258c820f2eeda513524acbf76dcaaf5 (diff) | |
download | rockbox-0eb5dc649f34ca136d0160bf5d43961a2c3cea05.tar.gz rockbox-0eb5dc649f34ca136d0160bf5d43961a2c3cea05.zip |
beginings of a working touchscreen interface for the WPS. 2 new tags:
%T|x|y|width|height|action| <- setup a region (relative to the current viewport) where if pressed the "action" will be done (currently play/stop/prev/next/menu/browse work, suggestions for others to add and better names welcome)
%Tl<timeout> <- used as a conditional to say if the touchscreen was touched in the last <timeout>, use this to enable/disable button viewports or something... same syntax as other timeout tags
cabbiev2 for the mr500 has been modified to demonstrate the new tags. press the pause/play button to pause playback. press the rockbox logo to get back to the menu. pretty icons needed to make this more usable :)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20753 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'uisimulator/sdl/button.c')
-rw-r--r-- | uisimulator/sdl/button.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/uisimulator/sdl/button.c b/uisimulator/sdl/button.c index e9fa03cbef..9c8f334b43 100644 --- a/uisimulator/sdl/button.c +++ b/uisimulator/sdl/button.c | |||
@@ -36,6 +36,7 @@ static intptr_t button_data; /* data value from last message dequeued */ | |||
36 | #ifdef HAVE_TOUCHSCREEN | 36 | #ifdef HAVE_TOUCHSCREEN |
37 | #include "touchscreen.h" | 37 | #include "touchscreen.h" |
38 | static int mouse_coords = 0; | 38 | static int mouse_coords = 0; |
39 | static int last_touchscreen_touch = 0xffff; | ||
39 | #endif | 40 | #endif |
40 | /* how long until repeat kicks in */ | 41 | /* how long until repeat kicks in */ |
41 | #define REPEAT_START 6 | 42 | #define REPEAT_START 6 |
@@ -1310,11 +1311,16 @@ void mouse_tick_task(void) | |||
1310 | } | 1311 | } |
1311 | 1312 | ||
1312 | mouse_coords = (x<<16)|y; | 1313 | mouse_coords = (x<<16)|y; |
1314 | last_touchscreen_touch = current_tick; | ||
1313 | button_event(BUTTON_TOUCHSCREEN, true); | 1315 | button_event(BUTTON_TOUCHSCREEN, true); |
1314 | if (debug_wps) | 1316 | if (debug_wps) |
1315 | printf("Mouse at: (%d, %d)\n", x, y); | 1317 | printf("Mouse at: (%d, %d)\n", x, y); |
1316 | } | 1318 | } |
1317 | } | 1319 | } |
1320 | int touchscreen_last_touch(void) | ||
1321 | { | ||
1322 | return last_touchscreen_touch; | ||
1323 | } | ||
1318 | #endif | 1324 | #endif |
1319 | void button_init(void) | 1325 | void button_init(void) |
1320 | { | 1326 | { |