summaryrefslogtreecommitdiff
path: root/apps/keymaps/keymap-c200.c
diff options
context:
space:
mode:
authorTomer Shalev <shalev.tomer@gmail.com>2009-10-17 05:39:54 +0000
committerTomer Shalev <shalev.tomer@gmail.com>2009-10-17 05:39:54 +0000
commit4f3d7b5bcb0b025332e128c3856aa9d4cce91898 (patch)
treeac2f783e9585c476fbaa9dfaf3a7a34e826f7ccc /apps/keymaps/keymap-c200.c
parent6d4d44caf69e06ea51937da9c74e78af0ac99a62 (diff)
downloadrockbox-4f3d7b5bcb0b025332e128c3856aa9d4cce91898.tar.gz
rockbox-4f3d7b5bcb0b025332e128c3856aa9d4cce91898.zip
USB HID: Use different context for each mode; Use constant for each action;
Rework keymaps This commit makes the code neater and more readable. It makes it easier to modify keymap assignments and new keypad modes. Some platforms had their keypad mappings reworked. The manual is updated to reflect all these changes. H10 remote control mapping dropped. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@23219 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/keymaps/keymap-c200.c')
-rw-r--r--apps/keymaps/keymap-c200.c88
1 files changed, 66 insertions, 22 deletions
diff --git a/apps/keymaps/keymap-c200.c b/apps/keymaps/keymap-c200.c
index 7acbe85420..af7c990340 100644
--- a/apps/keymaps/keymap-c200.c
+++ b/apps/keymaps/keymap-c200.c
@@ -266,30 +266,68 @@ static const struct button_mapping button_context_bmark[] = {
266 266
267#ifdef USB_ENABLE_HID 267#ifdef USB_ENABLE_HID
268static const struct button_mapping button_context_usb_hid[] = { 268static const struct button_mapping button_context_usb_hid[] = {
269 { ACTION_USB_HID_INC, BUTTON_VOL_UP, BUTTON_NONE }, 269 { ACTION_USB_HID_MODE_SWITCH_NEXT, BUTTON_REC|BUTTON_REL, BUTTON_REC },
270 { ACTION_USB_HID_INC, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE }, 270 { ACTION_USB_HID_MODE_SWITCH_PREV, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC },
271 { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN, BUTTON_NONE },
272 { ACTION_USB_HID_DEC, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
273 { ACTION_USB_HID_START, BUTTON_UP|BUTTON_REL, BUTTON_UP },
274 { ACTION_USB_HID_START_LONG, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP },
275 { ACTION_USB_HID_QUIT, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
276 { ACTION_USB_HID_QUIT_LONG, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER },
277 { ACTION_USB_HID_LEFT, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
278 { ACTION_USB_HID_LEFT_LONG, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT },
279 { ACTION_USB_HID_RIGHT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
280 { ACTION_USB_HID_RIGHT_LONG, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
281 { ACTION_USB_HID_SELECT, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT },
282 { ACTION_USB_HID_SELECT_LONG, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT },
283 { ACTION_USB_HID_MENU, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN },
284 { ACTION_USB_HID_MENU_LONG, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN },
285 { ACTION_USB_HID_MODE, BUTTON_REC|BUTTON_REL, BUTTON_REC },
286 { ACTION_USB_HID_MODE_LONG, BUTTON_REC|BUTTON_REPEAT, BUTTON_REC },
287 271
288 LAST_ITEM_IN_LIST 272 LAST_ITEM_IN_LIST
289}; /* button_context_usb_hid */ 273}; /* button_context_usb_hid */
290 274
275static const struct button_mapping button_context_usb_hid_mode_multimedia[] = {
276 { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE },
277 { ACTION_USB_HID_MULTIMEDIA_VOLUME_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
278 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP, BUTTON_NONE },
279 { ACTION_USB_HID_MULTIMEDIA_VOLUME_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
280 { ACTION_USB_HID_MULTIMEDIA_VOLUME_MUTE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT },
281 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_PLAY_PAUSE, BUTTON_UP|BUTTON_REL, BUTTON_UP },
282 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_STOP, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
283 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
284 { ACTION_USB_HID_MULTIMEDIA_PLAYBACK_TRACK_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
285
286 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
287}; /* button_context_usb_hid_mode_multimedia */
288
289static const struct button_mapping button_context_usb_hid_mode_presentation[] = {
290 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_START, BUTTON_UP|BUTTON_REL, BUTTON_UP },
291 { ACTION_USB_HID_PRESENTATION_SLIDESHOW_LEAVE, BUTTON_POWER|BUTTON_REL, BUTTON_POWER },
292 { ACTION_USB_HID_PRESENTATION_SLIDE_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
293 { ACTION_USB_HID_PRESENTATION_SLIDE_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
294 { ACTION_USB_HID_PRESENTATION_SLIDE_FIRST, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT },
295 { ACTION_USB_HID_PRESENTATION_SLIDE_LAST, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
296 { ACTION_USB_HID_PRESENTATION_SCREEN_BLACK, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN },
297 { ACTION_USB_HID_PRESENTATION_SCREEN_WHITE, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN },
298 { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP, BUTTON_NONE },
299 { ACTION_USB_HID_PRESENTATION_LINK_PREV, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
300 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN, BUTTON_NONE },
301 { ACTION_USB_HID_PRESENTATION_LINK_NEXT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
302 { ACTION_USB_HID_PRESENTATION_MOUSE_CLICK, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT },
303 { ACTION_USB_HID_PRESENTATION_MOUSE_OVER, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT },
304
305 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
306}; /* button_context_usb_hid_mode_presentation */
307
308static const struct button_mapping button_context_usb_hid_mode_browser[] = {
309 { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP, BUTTON_NONE },
310 { ACTION_USB_HID_BROWSER_SCROLL_UP, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE },
311 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN, BUTTON_NONE },
312 { ACTION_USB_HID_BROWSER_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
313 { ACTION_USB_HID_BROWSER_SCROLL_PAGE_UP, BUTTON_UP|BUTTON_REL, BUTTON_UP },
314 { ACTION_USB_HID_BROWSER_SCROLL_PAGE_DOWN, BUTTON_DOWN|BUTTON_REL, BUTTON_DOWN },
315 { ACTION_USB_HID_BROWSER_ZOOM_IN, BUTTON_UP|BUTTON_REPEAT, BUTTON_UP },
316 { ACTION_USB_HID_BROWSER_ZOOM_OUT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_DOWN },
317 { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_SELECT },
318 { ACTION_USB_HID_BROWSER_ZOOM_RESET, BUTTON_UP|BUTTON_DOWN|BUTTON_REPEAT, BUTTON_UP|BUTTON_DOWN },
319 { ACTION_USB_HID_BROWSER_TAB_PREV, BUTTON_LEFT|BUTTON_REL, BUTTON_LEFT },
320 { ACTION_USB_HID_BROWSER_TAB_NEXT, BUTTON_RIGHT|BUTTON_REL, BUTTON_RIGHT },
321 { ACTION_USB_HID_BROWSER_TAB_CLOSE, BUTTON_POWER|BUTTON_REPEAT, BUTTON_POWER },
322 { ACTION_USB_HID_BROWSER_HISTORY_BACK, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_LEFT },
323 { ACTION_USB_HID_BROWSER_HISTORY_FORWARD, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_RIGHT },
324 { ACTION_USB_HID_BROWSER_VIEW_FULL_SCREEN, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT },
325
326 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
327}; /* button_context_usb_hid_mode_browser */
328
291#ifdef HAVE_USB_HID_MOUSE 329#ifdef HAVE_USB_HID_MOUSE
292static const struct button_mapping button_context_usb_hid_mouse[] = { 330static const struct button_mapping button_context_usb_hid_mode_mouse[] = {
293 { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE }, 331 { ACTION_USB_HID_MOUSE_UP, BUTTON_UP, BUTTON_NONE },
294 { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, 332 { ACTION_USB_HID_MOUSE_UP_REP, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE },
295 { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE }, 333 { ACTION_USB_HID_MOUSE_DOWN, BUTTON_DOWN, BUTTON_NONE },
@@ -324,7 +362,7 @@ static const struct button_mapping button_context_usb_hid_mouse[] = {
324 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, 362 { ACTION_USB_HID_MOUSE_WHEEL_SCROLL_DOWN, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE },
325 363
326 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID) 364 LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_USB_HID)
327}; /* button_context_usb_hid_mouse */ 365}; /* button_context_usb_hid_mode_mouse */
328#endif 366#endif
329#endif 367#endif
330 368
@@ -377,9 +415,15 @@ const struct button_mapping* get_context_mapping(int context)
377#ifdef USB_ENABLE_HID 415#ifdef USB_ENABLE_HID
378 case CONTEXT_USB_HID: 416 case CONTEXT_USB_HID:
379 return button_context_usb_hid; 417 return button_context_usb_hid;
418 case CONTEXT_USB_HID_MODE_MULTIMEDIA:
419 return button_context_usb_hid_mode_multimedia;
420 case CONTEXT_USB_HID_MODE_PRESENTATION:
421 return button_context_usb_hid_mode_presentation;
422 case CONTEXT_USB_HID_MODE_BROWSER:
423 return button_context_usb_hid_mode_browser;
380#ifdef HAVE_USB_HID_MOUSE 424#ifdef HAVE_USB_HID_MOUSE
381 case CONTEXT_USB_HID_MOUSE: 425 case CONTEXT_USB_HID_MODE_MOUSE:
382 return button_context_usb_hid_mouse; 426 return button_context_usb_hid_mode_mouse;
383#endif 427#endif
384#endif 428#endif
385 default: 429 default: