summaryrefslogtreecommitdiff
path: root/uisimulator/sdl
diff options
context:
space:
mode:
Diffstat (limited to 'uisimulator/sdl')
-rwxr-xr-xuisimulator/sdl/UI-ondavx747.bmpbin0 -> 613076 bytes
-rw-r--r--uisimulator/sdl/button.c29
-rw-r--r--uisimulator/sdl/uisdl.h6
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 @@
34static intptr_t button_data; /* data value from last message dequeued */ 34static intptr_t button_data; /* data value from last message dequeued */
35 35
36#ifdef HAVE_TOUCHSCREEN 36#ifdef HAVE_TOUCHSCREEN
37#include "touchscreen.h"
37static int mouse_coords = 0; 38static int mouse_coords = 0;
38static enum touchscreen_mode touchscreen_mode = TOUCHSCREEN_POINT;
39void touchscreen_set_mode(enum touchscreen_mode mode)
40{
41 touchscreen_mode = mode;
42}
43enum 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