diff options
author | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-03-09 23:32:37 +0000 |
---|---|---|
committer | Maurus Cuelenaere <mcuelenaere@gmail.com> | 2009-03-09 23:32:37 +0000 |
commit | 935780e4260755b252cbd7d212aa3e9c0cde7db2 (patch) | |
tree | 4d5b0d40fc6619beadc42d426b5deaa6d89233f4 /uisimulator | |
parent | d33bff2b47bd30fe67a6ed963177f51ce156d5b7 (diff) | |
download | rockbox-935780e4260755b252cbd7d212aa3e9c0cde7db2.tar.gz rockbox-935780e4260755b252cbd7d212aa3e9c0cde7db2.zip |
Add support for Onda VX747 simulator (and yes, it needs a better picture)
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@20273 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'uisimulator')
-rwxr-xr-x | uisimulator/sdl/UI-ondavx747.bmp | bin | 0 -> 613076 bytes | |||
-rw-r--r-- | uisimulator/sdl/button.c | 29 | ||||
-rw-r--r-- | uisimulator/sdl/uisdl.h | 6 |
3 files changed, 23 insertions, 12 deletions
diff --git a/uisimulator/sdl/UI-ondavx747.bmp b/uisimulator/sdl/UI-ondavx747.bmp new file mode 100755 index 0000000000..364003d720 --- /dev/null +++ b/uisimulator/sdl/UI-ondavx747.bmp | |||
Binary files differ | |||
diff --git a/uisimulator/sdl/button.c b/uisimulator/sdl/button.c index 6402c75d55..c32c0a8c6a 100644 --- a/uisimulator/sdl/button.c +++ b/uisimulator/sdl/button.c | |||
@@ -34,16 +34,8 @@ | |||
34 | static intptr_t button_data; /* data value from last message dequeued */ | 34 | static intptr_t button_data; /* data value from last message dequeued */ |
35 | 35 | ||
36 | #ifdef HAVE_TOUCHSCREEN | 36 | #ifdef HAVE_TOUCHSCREEN |
37 | #include "touchscreen.h" | ||
37 | static int mouse_coords = 0; | 38 | static int mouse_coords = 0; |
38 | static enum touchscreen_mode touchscreen_mode = TOUCHSCREEN_POINT; | ||
39 | void touchscreen_set_mode(enum touchscreen_mode mode) | ||
40 | { | ||
41 | touchscreen_mode = mode; | ||
42 | } | ||
43 | enum touchscreen_mode touchscreen_get_mode(void) | ||
44 | { | ||
45 | return touchscreen_mode; | ||
46 | } | ||
47 | #endif | 39 | #endif |
48 | /* how long until repeat kicks in */ | 40 | /* how long until repeat kicks in */ |
49 | #define REPEAT_START 6 | 41 | #define REPEAT_START 6 |
@@ -124,7 +116,7 @@ void button_event(int key, bool pressed) | |||
124 | #ifdef HAVE_TOUCHSCREEN | 116 | #ifdef HAVE_TOUCHSCREEN |
125 | case BUTTON_TOUCHSCREEN: | 117 | case BUTTON_TOUCHSCREEN: |
126 | data = mouse_coords; | 118 | data = mouse_coords; |
127 | switch (touchscreen_mode) | 119 | switch (touchscreen_get_mode()) |
128 | { | 120 | { |
129 | case TOUCHSCREEN_POINT: | 121 | case TOUCHSCREEN_POINT: |
130 | new_btn = BUTTON_TOUCHSCREEN; | 122 | new_btn = BUTTON_TOUCHSCREEN; |
@@ -172,8 +164,8 @@ void button_event(int key, bool pressed) | |||
172 | case SDLK_F4: | 164 | case SDLK_F4: |
173 | if(pressed) | 165 | if(pressed) |
174 | { | 166 | { |
175 | touchscreen_mode = (touchscreen_mode == TOUCHSCREEN_POINT ? TOUCHSCREEN_BUTTON : TOUCHSCREEN_POINT); | 167 | touchscreen_set_mode(touchscreen_get_mode() == TOUCHSCREEN_POINT ? TOUCHSCREEN_BUTTON : TOUCHSCREEN_POINT); |
176 | printf("Touchscreen mode: %s\n", touchscreen_mode == TOUCHSCREEN_POINT ? "TOUCHSCREEN_POINT" : "TOUCHSCREEN_BUTTON"); | 168 | printf("Touchscreen mode: %s\n", touchscreen_get_mode() == TOUCHSCREEN_POINT ? "TOUCHSCREEN_POINT" : "TOUCHSCREEN_BUTTON"); |
177 | } | 169 | } |
178 | break; | 170 | break; |
179 | 171 | ||
@@ -1091,6 +1083,19 @@ void button_event(int key, bool pressed) | |||
1091 | case SDLK_KP_PLUS: | 1083 | case SDLK_KP_PLUS: |
1092 | new_btn = BUTTON_VIEW; | 1084 | new_btn = BUTTON_VIEW; |
1093 | break; | 1085 | break; |
1086 | #elif CONFIG_KEYPAD == ONDAVX747_PAD | ||
1087 | case SDLK_ESCAPE: | ||
1088 | new_btn = BUTTON_POWER; | ||
1089 | break; | ||
1090 | case SDLK_KP_PLUS: | ||
1091 | new_btn = BUTTON_VOL_UP; | ||
1092 | break; | ||
1093 | case SDLK_KP_MINUS: | ||
1094 | new_btn = BUTTON_VOL_DOWN; | ||
1095 | break; | ||
1096 | case SDLK_KP_ENTER: | ||
1097 | new_btn = BUTTON_MENU; | ||
1098 | break; | ||
1094 | #else | 1099 | #else |
1095 | #error No keymap defined! | 1100 | #error No keymap defined! |
1096 | #endif /* CONFIG_KEYPAD */ | 1101 | #endif /* CONFIG_KEYPAD */ |
diff --git a/uisimulator/sdl/uisdl.h b/uisimulator/sdl/uisdl.h index 6cb382ce8b..3868158938 100644 --- a/uisimulator/sdl/uisdl.h +++ b/uisimulator/sdl/uisdl.h | |||
@@ -291,6 +291,12 @@ | |||
291 | #define UI_LCD_POSX 42 /* x position of lcd */ | 291 | #define UI_LCD_POSX 42 /* x position of lcd */ |
292 | #define UI_LCD_POSY 55 /* y position of lcd */ | 292 | #define UI_LCD_POSY 55 /* y position of lcd */ |
293 | 293 | ||
294 | #elif defined(ONDA_VX747) | ||
295 | #define UI_TITLE "Onda VX747" | ||
296 | #define UI_WIDTH 340 /* width of GUI window */ | ||
297 | #define UI_HEIGHT 601 /* height of GUI window */ | ||
298 | #define UI_LCD_POSX 45 /* x position of lcd */ | ||
299 | #define UI_LCD_POSY 90 /* y position of lcd */ | ||
294 | 300 | ||
295 | #else | 301 | #else |
296 | #error no UI defines | 302 | #error no UI defines |