summaryrefslogtreecommitdiff
path: root/uisimulator/x11/button-x11.c
diff options
context:
space:
mode:
authorBjörn Stenberg <bjorn@haxx.se>2004-09-19 21:58:37 +0000
committerBjörn Stenberg <bjorn@haxx.se>2004-09-19 21:58:37 +0000
commit6c33c51a4ca9907d23e3154d956fd6781122f492 (patch)
treef0e598efaf064bb72c33c0a8a2edba4cf9ebb13c /uisimulator/x11/button-x11.c
parent17f54a40f100a3343a15a431d235699024aa76c8 (diff)
downloadrockbox-6c33c51a4ca9907d23e3154d956fd6781122f492.tar.gz
rockbox-6c33c51a4ca9907d23e3154d956fd6781122f492.zip
Redesigned the button handling. The code now uses symbolic function defines instead of checking for specific buttons. This makes it easier to add support for new devices with different button layouts.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@5091 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'uisimulator/x11/button-x11.c')
-rw-r--r--uisimulator/x11/button-x11.c32
1 files changed, 24 insertions, 8 deletions
diff --git a/uisimulator/x11/button-x11.c b/uisimulator/x11/button-x11.c
index 951bf730c5..534568b658 100644
--- a/uisimulator/x11/button-x11.c
+++ b/uisimulator/x11/button-x11.c
@@ -75,35 +75,49 @@ static int get_raw_button (void)
75 case XK_KP_Up: 75 case XK_KP_Up:
76 case XK_Up: 76 case XK_Up:
77 case XK_KP_8: 77 case XK_KP_8:
78#ifdef BUTTON_UP
78 k = BUTTON_UP; 79 k = BUTTON_UP;
80#elif defined BUTTON_PLAY
81 k = BUTTON_PLAY;
82#endif
79 break; 83 break;
80 84
81 case XK_KP_Down: 85 case XK_KP_Down:
82 case XK_Down: 86 case XK_Down:
83 case XK_KP_2: 87 case XK_KP_2:
88#ifdef BUTTON_DOWN
84 k = BUTTON_DOWN; 89 k = BUTTON_DOWN;
90#elif defined BUTTON_STOP
91 k = BUTTON_STOP;
92#endif
85 break; 93 break;
86 94
87#ifdef HAVE_RECORDER_KEYPAD 95#ifdef BUTTON_PLAY
88 case XK_KP_Space: 96 case XK_KP_Space:
89 case XK_KP_5: 97 case XK_KP_5:
90 case XK_KP_Begin: 98 case XK_KP_Begin:
91 case XK_space: 99 case XK_space:
92 k = BUTTON_PLAY; 100 k = BUTTON_PLAY;
93 break; 101 break;
102#endif
94 103
104#ifdef BUTTON_OFF
95 case XK_KP_Enter: 105 case XK_KP_Enter:
96 case XK_A: 106 case XK_A:
97 case XK_a: 107 case XK_a:
98 k = BUTTON_OFF; 108 k = BUTTON_OFF;
99 break; 109 break;
110#endif
100 111
112#ifdef BUTTON_ON
101 case XK_KP_Add: 113 case XK_KP_Add:
102 case XK_Q: 114 case XK_Q:
103 case XK_q: 115 case XK_q:
104 k = BUTTON_ON; 116 k = BUTTON_ON;
105 break; 117 break;
118#endif
106 119
120#ifdef BUTTON_F1
107 case XK_KP_Divide: 121 case XK_KP_Divide:
108 case XK_1: 122 case XK_1:
109 k = BUTTON_F1; 123 k = BUTTON_F1;
@@ -118,7 +132,9 @@ static int get_raw_button (void)
118 case XK_3: 132 case XK_3:
119 k = BUTTON_F3; 133 k = BUTTON_F3;
120 break; 134 break;
135#endif
121 136
137#ifdef HAVE_LCD_BITMAP
122 case XK_5: 138 case XK_5:
123 if(!release) 139 if(!release)
124 { 140 {
@@ -126,16 +142,16 @@ static int get_raw_button (void)
126 return 0; 142 return 0;
127 } 143 }
128 break; 144 break;
145#endif
129 146
130#else 147#ifdef BUTTON_MENU
131 case XK_KP_Add: 148#ifdef HAVE_PLAYER_KEYPAD
132 case XK_Q:
133 case XK_q:
134 k = BUTTON_ON;
135 break;
136
137 case XK_KP_Enter: 149 case XK_KP_Enter:
138 case XK_Return: 150 case XK_Return:
151#elif defined HAVE_ONDIO_KEYPAD
152 case XK_KP_Insert:
153 case XK_Control_R:
154#endif
139 k = BUTTON_MENU; 155 k = BUTTON_MENU;
140 break; 156 break;
141#endif 157#endif