diff options
Diffstat (limited to 'apps')
-rw-r--r-- | apps/plugins/alarmclock.c | 11 | ||||
-rw-r--r-- | apps/plugins/bubbles.c | 59 | ||||
-rw-r--r-- | apps/plugins/clock/clock.c | 36 | ||||
-rw-r--r-- | apps/plugins/codebuster.c | 22 | ||||
-rw-r--r-- | apps/plugins/demystify.c | 37 | ||||
-rw-r--r-- | apps/plugins/dice.c | 8 | ||||
-rw-r--r-- | apps/plugins/fire.c | 30 | ||||
-rw-r--r-- | apps/plugins/frotz/frotz.c | 18 | ||||
-rw-r--r-- | apps/plugins/jackpot.c | 8 | ||||
-rw-r--r-- | apps/plugins/lib/pluginlib_actions.c | 749 | ||||
-rw-r--r-- | apps/plugins/lib/pluginlib_actions.h | 27 | ||||
-rw-r--r-- | apps/plugins/maze.c | 82 | ||||
-rw-r--r-- | apps/plugins/mazezam.c | 44 | ||||
-rw-r--r-- | apps/plugins/metronome.c | 109 | ||||
-rw-r--r-- | apps/plugins/pitch_detector.c | 10 | ||||
-rw-r--r-- | apps/plugins/robotfindskitten.c | 54 | ||||
-rw-r--r-- | apps/plugins/rocklife.c | 10 | ||||
-rw-r--r-- | apps/plugins/test_resize.c | 9 |
18 files changed, 470 insertions, 853 deletions
diff --git a/apps/plugins/alarmclock.c b/apps/plugins/alarmclock.c index 88e3e858cb..23ad886f6c 100644 --- a/apps/plugins/alarmclock.c +++ b/apps/plugins/alarmclock.c | |||
@@ -24,8 +24,7 @@ | |||
24 | 24 | ||
25 | PLUGIN_HEADER | 25 | PLUGIN_HEADER |
26 | 26 | ||
27 | const struct button_mapping *plugin_contexts[] = {generic_directions, | 27 | const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; |
28 | generic_actions}; | ||
29 | 28 | ||
30 | static int current = 0; | 29 | static int current = 0; |
31 | static bool tomorrow = false; | 30 | static bool tomorrow = false; |
@@ -33,7 +32,8 @@ static int alarm[2] = {0, 0}, maxval[2] = {24, 60}, prev_tick = 3600 * 24; | |||
33 | static bool quit = false, usb = false, waiting = false, done = false; | 32 | static bool quit = false, usb = false, waiting = false, done = false; |
34 | 33 | ||
35 | static inline int get_button(void) { | 34 | static inline int get_button(void) { |
36 | return pluginlib_getaction(HZ/2, plugin_contexts, 2); | 35 | return pluginlib_getaction(HZ/2, plugin_contexts, |
36 | ARRAYLEN(plugin_contexts)); | ||
37 | } | 37 | } |
38 | 38 | ||
39 | int rem_seconds(void) { | 39 | int rem_seconds(void) { |
@@ -125,7 +125,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
125 | while(!quit) { | 125 | while(!quit) { |
126 | button = get_button(); | 126 | button = get_button(); |
127 | 127 | ||
128 | if (button == PLA_QUIT) | 128 | if (button == PLA_EXIT || PLA_CANCEL) |
129 | quit = true; | 129 | quit = true; |
130 | 130 | ||
131 | FOR_NB_SCREENS(i) { | 131 | FOR_NB_SCREENS(i) { |
@@ -157,7 +157,8 @@ enum plugin_status plugin_start(const void* parameter) | |||
157 | current = (current + 1) % 2; | 157 | current = (current + 1) % 2; |
158 | break; | 158 | break; |
159 | 159 | ||
160 | case PLA_FIRE: { | 160 | case PLA_SELECT: |
161 | case PLA_SELECT_REPEAT: { | ||
161 | if (rem_seconds() < 0) | 162 | if (rem_seconds() < 0) |
162 | tomorrow = true; | 163 | tomorrow = true; |
163 | 164 | ||
diff --git a/apps/plugins/bubbles.c b/apps/plugins/bubbles.c index 514621224a..f169a2ef45 100644 --- a/apps/plugins/bubbles.c +++ b/apps/plugins/bubbles.c | |||
@@ -66,28 +66,41 @@ enum { | |||
66 | 66 | ||
67 | /* keyboard layouts */ | 67 | /* keyboard layouts */ |
68 | 68 | ||
69 | #if (CONFIG_KEYPAD != SANSA_E200_PAD) && \ | 69 | #ifdef HAVE_SCROLLWHEEL |
70 | (CONFIG_KEYPAD != SANSA_FUZE_PAD) | ||
71 | /* sansas use the wheel instead of left/right if available */ | 70 | /* sansas use the wheel instead of left/right if available */ |
71 | #define BUBBLES_LEFT PLA_SCROLL_BACK | ||
72 | #define BUBBLES_LEFT_REP PLA_SCROLL_BACK_REPEAT | ||
73 | #define BUBBLES_RIGHT PLA_SCROLL_FWD | ||
74 | #define BUBBLES_RIGHT_REP PLA_SCROLL_FWD_REPEAT | ||
75 | #else | ||
72 | #define BUBBLES_LEFT PLA_LEFT | 76 | #define BUBBLES_LEFT PLA_LEFT |
73 | #define BUBBLES_LEFT_REP PLA_LEFT_REPEAT | 77 | #define BUBBLES_LEFT_REP PLA_LEFT_REPEAT |
74 | #define BUBBLES_RIGHT PLA_RIGHT | 78 | #define BUBBLES_RIGHT PLA_RIGHT |
75 | #define BUBBLES_RIGHT_REP PLA_RIGHT_REPEAT | 79 | #define BUBBLES_RIGHT_REP PLA_RIGHT_REPEAT |
76 | #define ANGLE_STEP 4 | ||
77 | #define ANGLE_STEP_REP 4 | ||
78 | #else | ||
79 | #define BUBBLES_LEFT PLA_UP | ||
80 | #define BUBBLES_LEFT_REP PLA_UP_REPEAT | ||
81 | #define BUBBLES_RIGHT PLA_DOWN | ||
82 | #define BUBBLES_RIGHT_REP PLA_DOWN_REPEAT | ||
83 | #define ANGLE_STEP 2 | ||
84 | #define ANGLE_STEP_REP 4 | ||
85 | #endif | 80 | #endif |
86 | 81 | ||
87 | #define BUBBLES_QUIT1 PLA_QUIT | 82 | #define ANGLE_STEP 2 |
88 | #define BUBBLES_QUIT2 PLA_MENU | 83 | #define ANGLE_STEP_REP 4 |
89 | #define BUBBLES_PAUSE PLA_START | 84 | |
90 | #define BUBBLES_FIRE PLA_FIRE | 85 | #define BUBBLES_QUIT1 PLA_EXIT |
86 | #define BUBBLES_QUIT2 PLA_CANCEL | ||
87 | |||
88 | /* these are better off shooting with up */ | ||
89 | #if (CONFIG_KEYPAD == SAMSUNG_YH_PAD) \ | ||
90 | || (CONFIG_KEYPAD == ONDIO_PAD) \ | ||
91 | || (CONFIG_KEYPAD == IRIVER_H10_PAD) | ||
92 | #define SHOOT_WITH_UP | ||
93 | #endif | ||
94 | |||
95 | #ifdef SHOOT_WITH_UP | ||
96 | #define BUBBLES_FIRE PLA_UP | ||
97 | #define BUBBLES_FIRE_REPEAT PLA_UP_REPEAT | ||
98 | #define BUBBLES_PAUSE PLA_SELECT | ||
99 | #else | ||
100 | #define BUBBLES_FIRE PLA_SELECT | ||
101 | #define BUBBLES_FIRE_REPEAT PLA_SELECT_REPEAT | ||
102 | #define BUBBLES_PAUSE PLA_UP | ||
103 | #endif | ||
91 | 104 | ||
92 | /* external bitmaps */ | 105 | /* external bitmaps */ |
93 | #ifdef HAVE_LCD_COLOR | 106 | #ifdef HAVE_LCD_COLOR |
@@ -2294,16 +2307,15 @@ static int bubbles_handlebuttons(struct game_context* bb, bool animblock, | |||
2294 | int buttonres; | 2307 | int buttonres; |
2295 | long start; | 2308 | long start; |
2296 | const struct button_mapping *plugin_contexts[] | 2309 | const struct button_mapping *plugin_contexts[] |
2297 | #if (CONFIG_KEYPAD == SANSA_E200_PAD) || \ | 2310 | = { pla_main_ctx, |
2298 | (CONFIG_KEYPAD == SANSA_FUZE_PAD) | 2311 | #ifdef HAVE_REMOTE_LCD |
2299 | = {generic_directions,generic_actions}; | 2312 | pla_remote_ctx, |
2300 | #else | ||
2301 | = {generic_left_right_fire,generic_actions}; | ||
2302 | #endif | 2313 | #endif |
2314 | }; | ||
2303 | 2315 | ||
2304 | if (timeout < 0) | 2316 | if (timeout < 0) |
2305 | timeout = 0; | 2317 | timeout = 0; |
2306 | button = pluginlib_getaction(timeout,plugin_contexts,2); | 2318 | button = pluginlib_getaction(timeout,plugin_contexts,ARRAYLEN(plugin_contexts)); |
2307 | #if defined(HAS_BUTTON_HOLD) && !defined(HAVE_REMOTE_LCD_AS_MAIN) | 2319 | #if defined(HAS_BUTTON_HOLD) && !defined(HAVE_REMOTE_LCD_AS_MAIN) |
2308 | /* FIXME: Should probably check remote hold here */ | 2320 | /* FIXME: Should probably check remote hold here */ |
2309 | if (rb->button_hold()) | 2321 | if (rb->button_hold()) |
@@ -2324,6 +2336,7 @@ static int bubbles_handlebuttons(struct game_context* bb, bool animblock, | |||
2324 | break; | 2336 | break; |
2325 | 2337 | ||
2326 | case BUBBLES_FIRE: /* fire the shot */ | 2338 | case BUBBLES_FIRE: /* fire the shot */ |
2339 | case BUBBLES_FIRE_REPEAT: | ||
2327 | if(!animblock) { | 2340 | if(!animblock) { |
2328 | bb->elapsedlvl += bb->elapsedshot; | 2341 | bb->elapsedlvl += bb->elapsedshot; |
2329 | bb->elapsedshot = 0; | 2342 | bb->elapsedshot = 0; |
@@ -2338,7 +2351,9 @@ static int bubbles_handlebuttons(struct game_context* bb, bool animblock, | |||
2338 | case BUBBLES_PAUSE: /* pause the game */ | 2351 | case BUBBLES_PAUSE: /* pause the game */ |
2339 | start = *rb->current_tick; | 2352 | start = *rb->current_tick; |
2340 | rb->splash(0, "Paused"); | 2353 | rb->splash(0, "Paused"); |
2341 | while(pluginlib_getaction(TIMEOUT_BLOCK,plugin_contexts,2) | 2354 | |
2355 | while(pluginlib_getaction(TIMEOUT_BLOCK,plugin_contexts, | ||
2356 | ARRAYLEN(plugin_contexts)) | ||
2342 | != BUBBLES_PAUSE); | 2357 | != BUBBLES_PAUSE); |
2343 | bb->startedshot += *rb->current_tick-start; | 2358 | bb->startedshot += *rb->current_tick-start; |
2344 | bubbles_drawboard(bb); | 2359 | bubbles_drawboard(bb); |
diff --git a/apps/plugins/clock/clock.c b/apps/plugins/clock/clock.c index 1937954a0f..f06f3e15e4 100644 --- a/apps/plugins/clock/clock.c +++ b/apps/plugins/clock/clock.c | |||
@@ -34,27 +34,24 @@ PLUGIN_HEADER | |||
34 | 34 | ||
35 | /* Keymaps */ | 35 | /* Keymaps */ |
36 | const struct button_mapping* plugin_contexts[]={ | 36 | const struct button_mapping* plugin_contexts[]={ |
37 | generic_actions, | 37 | pla_main_ctx, |
38 | generic_increase_decrease, | 38 | #ifdef HAVE_REMOTE_LCD |
39 | generic_directions, | 39 | pla_remote_ctx, |
40 | #if NB_SCREENS == 2 | ||
41 | remote_directions | ||
42 | #endif | 40 | #endif |
43 | }; | 41 | }; |
44 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) | 42 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) |
45 | 43 | ||
46 | #define ACTION_COUNTER_TOGGLE PLA_FIRE | 44 | #define ACTION_COUNTER_TOGGLE PLA_SELECT |
47 | #define ACTION_COUNTER_RESET PLA_FIRE_REPEAT | 45 | #define ACTION_COUNTER_RESET PLA_SELECT_REPEAT |
48 | #define ACTION_MENU PLA_MENU | 46 | #define ACTION_MENU PLA_CANCEL |
49 | #define ACTION_EXIT PLA_QUIT | 47 | #define ACTION_MODE_NEXT PLA_RIGHT |
50 | #define ACTION_MODE_NEXT PLA_RIGHT | 48 | #define ACTION_MODE_NEXT_REPEAT PLA_RIGHT_REPEAT |
51 | #define ACTION_MODE_NEXT_REPEAT PLA_RIGHT_REPEAT | 49 | #define ACTION_MODE_PREV PLA_LEFT |
52 | #define ACTION_MODE_PREV PLA_LEFT | 50 | #define ACTION_MODE_PREV_REPEAT PLA_LEFT_REPEAT |
53 | #define ACTION_MODE_PREV_REPEAT PLA_LEFT_REPEAT | 51 | #define ACTION_SKIN_NEXT PLA_UP |
54 | #define ACTION_SKIN_NEXT PLA_INC | 52 | #define ACTION_SKIN_NEXT_REPEAT PLA_UP_REPEAT |
55 | #define ACTION_SKIN_NEXT_REPEAT PLA_INC_REPEAT | 53 | #define ACTION_SKIN_PREV PLA_DOWN |
56 | #define ACTION_SKIN_PREV PLA_DEC | 54 | #define ACTION_SKIN_PREV_REPEAT PLA_DOWN_REPEAT |
57 | #define ACTION_SKIN_PREV_REPEAT PLA_DEC_REPEAT | ||
58 | 55 | ||
59 | /************************** | 56 | /************************** |
60 | * Cleanup on plugin return | 57 | * Cleanup on plugin return |
@@ -176,11 +173,6 @@ enum plugin_status plugin_start(const void* parameter){ | |||
176 | clock_draw_restore_colors(); | 173 | clock_draw_restore_colors(); |
177 | exit_clock=main_menu(); | 174 | exit_clock=main_menu(); |
178 | break; | 175 | break; |
179 | |||
180 | case ACTION_EXIT: | ||
181 | exit_clock=true; | ||
182 | break; | ||
183 | |||
184 | default: | 176 | default: |
185 | if(rb->default_event_handler_ex(button, cleanup, NULL) | 177 | if(rb->default_event_handler_ex(button, cleanup, NULL) |
186 | == SYS_USB_CONNECTED) | 178 | == SYS_USB_CONNECTED) |
diff --git a/apps/plugins/codebuster.c b/apps/plugins/codebuster.c index bfcc25f9b5..0fd1234b29 100644 --- a/apps/plugins/codebuster.c +++ b/apps/plugins/codebuster.c | |||
@@ -31,8 +31,12 @@ PLUGIN_HEADER | |||
31 | #define MAX_COLORS_COUNT 8 | 31 | #define MAX_COLORS_COUNT 8 |
32 | #define MAX_GUESSES_COUNT 10 | 32 | #define MAX_GUESSES_COUNT 10 |
33 | 33 | ||
34 | const struct button_mapping *plugin_contexts[] = | 34 | const struct button_mapping *plugin_contexts[] = { |
35 | {generic_directions, generic_actions}; | 35 | pla_main_ctx, |
36 | #ifdef HAVE_REMOTE_LCD | ||
37 | pla_remote_ctx, | ||
38 | #endif | ||
39 | }; | ||
36 | 40 | ||
37 | /* | 41 | /* |
38 | * Screen structure: | 42 | * Screen structure: |
@@ -427,14 +431,14 @@ enum plugin_status plugin_start(const void* parameter) { | |||
427 | draw_board(guess, piece); | 431 | draw_board(guess, piece); |
428 | 432 | ||
429 | button = get_button(); | 433 | button = get_button(); |
430 | if (button == PLA_FIRE || button == PLA_START) | 434 | if (button == PLA_SELECT) |
431 | break; | 435 | break; |
432 | 436 | ||
433 | switch (button) { | 437 | switch (button) { |
434 | 438 | ||
435 | /* Exit */ | 439 | /* Exit */ |
436 | case PLA_QUIT: | 440 | case PLA_EXIT: |
437 | case PLA_MENU: | 441 | case PLA_CANCEL: |
438 | resume = true; | 442 | resume = true; |
439 | main_menu(); | 443 | main_menu(); |
440 | break; | 444 | break; |
@@ -452,6 +456,10 @@ enum plugin_status plugin_start(const void* parameter) { | |||
452 | break; | 456 | break; |
453 | 457 | ||
454 | /* Next color */ | 458 | /* Next color */ |
459 | #ifdef HAVE_SCROLLWHEEL | ||
460 | case PLA_SCROLL_FWD: | ||
461 | case PLA_SCROLL_FWD_REPEAT: | ||
462 | #endif | ||
455 | case PLA_DOWN: | 463 | case PLA_DOWN: |
456 | case PLA_DOWN_REPEAT: | 464 | case PLA_DOWN_REPEAT: |
457 | guesses[guess].pieces[piece] = | 465 | guesses[guess].pieces[piece] = |
@@ -460,6 +468,10 @@ enum plugin_status plugin_start(const void* parameter) { | |||
460 | break; | 468 | break; |
461 | 469 | ||
462 | /* Previous color */ | 470 | /* Previous color */ |
471 | #ifdef HAVE_SCROLLWHEEL | ||
472 | case PLA_SCROLL_BACK: | ||
473 | case PLA_SCROLL_BACK_REPEAT: | ||
474 | #endif | ||
463 | case PLA_UP: | 475 | case PLA_UP: |
464 | case PLA_UP_REPEAT: | 476 | case PLA_UP_REPEAT: |
465 | guesses[guess].pieces[piece] = | 477 | guesses[guess].pieces[piece] = |
diff --git a/apps/plugins/demystify.c b/apps/plugins/demystify.c index 5f44e11f3d..468f1806ce 100644 --- a/apps/plugins/demystify.c +++ b/apps/plugins/demystify.c | |||
@@ -37,26 +37,33 @@ PLUGIN_HEADER | |||
37 | #define MIN_POLYGONS 1 | 37 | #define MIN_POLYGONS 1 |
38 | 38 | ||
39 | /* Key assignement */ | 39 | /* Key assignement */ |
40 | #define DEMYSTIFY_QUIT PLA_QUIT | 40 | #define DEMYSTIFY_QUIT PLA_CANCEL |
41 | 41 | ||
42 | #define DEMYSTIFY_INCREASE_SPEED PLA_RIGHT | 42 | #ifdef HAVE_SCROLLWHEEL |
43 | #define DEMYSTIFY_DECREASE_SPEED PLA_LEFT | 43 | |
44 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_RIGHT_REPEAT | 44 | #define DEMYSTIFY_INCREASE_SPEED PLA_SCROLL_FWD |
45 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_LEFT_REPEAT | 45 | #define DEMYSTIFY_DECREASE_SPEED PLA_SCROLL_BACK |
46 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_SCROLL_FWD_REPEAT | ||
47 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_SCROLL_BACK_REPEAT | ||
48 | #else | ||
49 | #define DEMYSTIFY_INCREASE_SPEED PLA_RIGHT | ||
50 | #define DEMYSTIFY_DECREASE_SPEED PLA_LEFT | ||
51 | #define DEMYSTIFY_INCREASE_SPEED_REPEAT PLA_RIGHT_REPEAT | ||
52 | #define DEMYSTIFY_DECREASE_SPEED_REPEAT PLA_LEFT_REPEAT | ||
53 | #endif | ||
46 | 54 | ||
47 | #define DEMYSTIFY_ADD_POLYGON PLA_UP | 55 | #define DEMYSTIFY_ADD_POLYGON PLA_UP |
48 | #define DEMYSTIFY_REMOVE_POLYGON PLA_DOWN | 56 | #define DEMYSTIFY_REMOVE_POLYGON PLA_DOWN |
49 | #define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_UP_REPEAT | 57 | #define DEMYSTIFY_ADD_POLYGON_REPEAT PLA_UP_REPEAT |
50 | #define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_DOWN_REPEAT | 58 | #define DEMYSTIFY_REMOVE_POLYGON_REPEAT PLA_DOWN_REPEAT |
51 | 59 | ||
52 | const struct button_mapping *plugin_contexts[] | 60 | const struct button_mapping *plugin_contexts[] |
53 | = {generic_directions, generic_actions, | 61 | = {pla_main_ctx, |
54 | #if defined(HAVE_REMOTE_LCD) | 62 | #if defined(HAVE_REMOTE_LCD) |
55 | remote_directions | 63 | pla_remote_ctx, |
56 | #endif | 64 | #endif |
57 | }; | 65 | }; |
58 | #define NB_ACTION_CONTEXTS \ | 66 | |
59 | sizeof(plugin_contexts)/sizeof(struct button_mapping*) | ||
60 | #ifdef HAVE_LCD_COLOR | 67 | #ifdef HAVE_LCD_COLOR |
61 | struct line_color | 68 | struct line_color |
62 | { | 69 | { |
@@ -383,7 +390,7 @@ int plugin_main(void) | |||
383 | else | 390 | else |
384 | rb->sleep(sleep_time); | 391 | rb->sleep(sleep_time); |
385 | action = pluginlib_getaction(TIMEOUT_NOBLOCK, | 392 | action = pluginlib_getaction(TIMEOUT_NOBLOCK, |
386 | plugin_contexts, NB_ACTION_CONTEXTS); | 393 | plugin_contexts, ARRAYLEN(plugin_contexts)); |
387 | switch(action) | 394 | switch(action) |
388 | { | 395 | { |
389 | case DEMYSTIFY_QUIT: | 396 | case DEMYSTIFY_QUIT: |
diff --git a/apps/plugins/dice.c b/apps/plugins/dice.c index bee9f89c6b..7bd51122ee 100644 --- a/apps/plugins/dice.c +++ b/apps/plugins/dice.c | |||
@@ -28,13 +28,13 @@ | |||
28 | #define INITIAL_NB_DICES 1 | 28 | #define INITIAL_NB_DICES 1 |
29 | #define INITIAL_NB_SIDES 2 /* corresponds to 6 sides in the array */ | 29 | #define INITIAL_NB_SIDES 2 /* corresponds to 6 sides in the array */ |
30 | 30 | ||
31 | #define DICE_QUIT PLA_QUIT | 31 | #define DICE_QUIT PLA_CANCEL |
32 | #define DICE_ROLL PLA_START | 32 | #define DICE_ROLL PLA_SELECT |
33 | 33 | ||
34 | 34 | ||
35 | #define CFG_FILE "dice.cfg" | 35 | #define CFG_FILE "dice.cfg" |
36 | 36 | ||
37 | const struct button_mapping* plugin_contexts[]={generic_actions}; | 37 | const struct button_mapping* plugin_contexts[]={pla_main_ctx}; |
38 | 38 | ||
39 | struct dices | 39 | struct dices |
40 | { | 40 | { |
@@ -94,7 +94,7 @@ enum plugin_status plugin_start(const void* parameter) { | |||
94 | dice_print( &dice, rb->screens[i] ); | 94 | dice_print( &dice, rb->screens[i] ); |
95 | while(true) { | 95 | while(true) { |
96 | action = pluginlib_getaction(TIMEOUT_BLOCK, | 96 | action = pluginlib_getaction(TIMEOUT_BLOCK, |
97 | plugin_contexts, 1); | 97 | plugin_contexts, ARRAYLEN(plugin_contexts)); |
98 | switch(action) { | 98 | switch(action) { |
99 | case DICE_ROLL: | 99 | case DICE_ROLL: |
100 | dice_roll(&dice); | 100 | dice_roll(&dice); |
diff --git a/apps/plugins/fire.c b/apps/plugins/fire.c index fff39b38c9..e1362dc900 100644 --- a/apps/plugins/fire.c +++ b/apps/plugins/fire.c | |||
@@ -51,20 +51,27 @@ GREY_INFO_STRUCT | |||
51 | 51 | ||
52 | /* Key assignement */ | 52 | /* Key assignement */ |
53 | const struct button_mapping* plugin_contexts[]= { | 53 | const struct button_mapping* plugin_contexts[]= { |
54 | generic_increase_decrease, | 54 | pla_main_ctx, |
55 | generic_directions, | ||
56 | #if defined(HAVE_REMOTE_LCD) | 55 | #if defined(HAVE_REMOTE_LCD) |
57 | remote_directions, | 56 | pla_remote_ctx, |
58 | #endif | 57 | #endif |
59 | generic_actions | ||
60 | }; | 58 | }; |
61 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) | ||
62 | 59 | ||
63 | #define FIRE_QUIT PLA_QUIT | 60 | #define FIRE_QUIT PLA_CANCEL |
64 | #define FIRE_SWITCH_FLAMES_TYPE PLA_LEFT | 61 | #define FIRE_SWITCH_FLAMES_TYPE PLA_LEFT |
65 | #define FIRE_SWITCH_FLAMES_MOVING PLA_RIGHT | 62 | #define FIRE_SWITCH_FLAMES_MOVING PLA_RIGHT |
66 | #define FIRE_INCREASE_MULT PLA_INC | 63 | |
67 | #define FIRE_DECREASE_MULT PLA_DEC | 64 | #ifdef HAVE_SCROLLWHEEL |
65 | #define FIRE_INCREASE_MULT PLA_SCROLL_FWD | ||
66 | #define FIRE_INCREASE_MULT_REP PLA_SCROLL_FWD_REPEAT | ||
67 | #define FIRE_DECREASE_MULT PLA_SCROLL_BACK | ||
68 | #define FIRE_DECREASE_MULT_REP PLA_SCROLL_BACK_REPEAT | ||
69 | #else | ||
70 | #define FIRE_INCREASE_MULT PLA_UP | ||
71 | #define FIRE_INCREASE_MULT_REP PLA_UP_REPEAT | ||
72 | #define FIRE_DECREASE_MULT PLA_DOWN | ||
73 | #define FIRE_DECREASE_MULT_REP PLA_DOWN_REPEAT | ||
74 | #endif | ||
68 | 75 | ||
69 | #define MIN_FLAME_VALUE 0 | 76 | #define MIN_FLAME_VALUE 0 |
70 | #define COOL_MAX (440/LCD_HEIGHT+2) | 77 | #define COOL_MAX (440/LCD_HEIGHT+2) |
@@ -319,7 +326,8 @@ int main(void) | |||
319 | fire_draw(&fire); | 326 | fire_draw(&fire); |
320 | rb->yield(); | 327 | rb->yield(); |
321 | 328 | ||
322 | action = pluginlib_getaction(0, plugin_contexts, PLA_ARRAY_COUNT); | 329 | action = pluginlib_getaction(0, plugin_contexts, |
330 | ARRAYLEN(plugin_contexts)); | ||
323 | 331 | ||
324 | switch(action){ | 332 | switch(action){ |
325 | case FIRE_QUIT: | 333 | case FIRE_QUIT: |
diff --git a/apps/plugins/frotz/frotz.c b/apps/plugins/frotz/frotz.c index f64431f14e..a12faf90aa 100644 --- a/apps/plugins/frotz/frotz.c +++ b/apps/plugins/frotz/frotz.c | |||
@@ -112,7 +112,7 @@ zchar menu(void) | |||
112 | } | 112 | } |
113 | } | 113 | } |
114 | 114 | ||
115 | const struct button_mapping* plugin_contexts[]={generic_actions}; | 115 | const struct button_mapping* plugin_contexts[]={pla_main_ctx}; |
116 | 116 | ||
117 | void wait_for_key() | 117 | void wait_for_key() |
118 | { | 118 | { |
@@ -126,11 +126,11 @@ void wait_for_key() | |||
126 | plugin_contexts, 1); | 126 | plugin_contexts, 1); |
127 | switch (action) | 127 | switch (action) |
128 | { | 128 | { |
129 | case PLA_QUIT: | 129 | case PLA_EXIT: |
130 | hot_key_quit(); | 130 | hot_key_quit(); |
131 | break; | 131 | break; |
132 | 132 | ||
133 | case PLA_FIRE: | 133 | case PLA_SELECT: |
134 | return; | 134 | return; |
135 | } | 135 | } |
136 | } | 136 | } |
@@ -154,24 +154,24 @@ zchar do_input(int timeout, bool show_cursor) | |||
154 | 154 | ||
155 | for (;;) | 155 | for (;;) |
156 | { | 156 | { |
157 | action = pluginlib_getaction(timeout, | 157 | action = pluginlib_getaction(timeout, plugin_contexts, |
158 | plugin_contexts, 1); | 158 | ARRAYLEN(plugin_contexts)); |
159 | switch (action) | 159 | switch (action) |
160 | { | 160 | { |
161 | case PLA_QUIT: | 161 | case PLA_EXIT: |
162 | return ZC_HKEY_QUIT; | 162 | return ZC_HKEY_QUIT; |
163 | 163 | ||
164 | case PLA_MENU: | 164 | case PLA_CANCEL: |
165 | menu_ret = menu(); | 165 | menu_ret = menu(); |
166 | if (menu_ret != ZC_BAD) | 166 | if (menu_ret != ZC_BAD) |
167 | return menu_ret; | 167 | return menu_ret; |
168 | timeout_at = *rb->current_tick + timeout; | 168 | timeout_at = *rb->current_tick + timeout; |
169 | break; | 169 | break; |
170 | 170 | ||
171 | case PLA_FIRE: | 171 | case PLA_SELECT: |
172 | return ZC_RETURN; | 172 | return ZC_RETURN; |
173 | 173 | ||
174 | case PLA_START: | 174 | case PLA_SELECT_REPEAT: |
175 | return ZC_BAD; | 175 | return ZC_BAD; |
176 | 176 | ||
177 | default: | 177 | default: |
diff --git a/apps/plugins/jackpot.c b/apps/plugins/jackpot.c index 302c5c6851..56c2910b70 100644 --- a/apps/plugins/jackpot.c +++ b/apps/plugins/jackpot.c | |||
@@ -25,7 +25,7 @@ | |||
25 | 25 | ||
26 | PLUGIN_HEADER | 26 | PLUGIN_HEADER |
27 | 27 | ||
28 | const struct button_mapping* plugin_contexts[]={generic_actions}; | 28 | const struct button_mapping* plugin_contexts[]={pla_main_ctx}; |
29 | #define NB_PICTURES 9 | 29 | #define NB_PICTURES 9 |
30 | #define NB_SLOTS 3 | 30 | #define NB_SLOTS 3 |
31 | 31 | ||
@@ -313,12 +313,12 @@ enum plugin_status plugin_start(const void* parameter) | |||
313 | while (true) | 313 | while (true) |
314 | { | 314 | { |
315 | action = pluginlib_getaction(TIMEOUT_BLOCK, | 315 | action = pluginlib_getaction(TIMEOUT_BLOCK, |
316 | plugin_contexts, 1); | 316 | plugin_contexts, ARRAYLEN(plugin_contexts)); |
317 | switch ( action ) | 317 | switch ( action ) |
318 | { | 318 | { |
319 | case PLA_QUIT: | 319 | case PLA_CANCEL: |
320 | return PLUGIN_OK; | 320 | return PLUGIN_OK; |
321 | case PLA_FIRE: | 321 | case PLA_SELECT: |
322 | jackpot_play_turn(&game); | 322 | jackpot_play_turn(&game); |
323 | break; | 323 | break; |
324 | 324 | ||
diff --git a/apps/plugins/lib/pluginlib_actions.c b/apps/plugins/lib/pluginlib_actions.c index 29c9430f64..b68c390aae 100644 --- a/apps/plugins/lib/pluginlib_actions.c +++ b/apps/plugins/lib/pluginlib_actions.c | |||
@@ -25,7 +25,8 @@ | |||
25 | #include "pluginlib_actions.h" | 25 | #include "pluginlib_actions.h" |
26 | 26 | ||
27 | #if defined(HAVE_REMOTE_LCD) | 27 | #if defined(HAVE_REMOTE_LCD) |
28 | const struct button_mapping remote_directions[] = | 28 | /* remote directions */ |
29 | const struct button_mapping pla_remote_ctx[] = | ||
29 | { | 30 | { |
30 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ | 31 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || \ |
31 | (CONFIG_KEYPAD == IRIVER_H300_PAD) | 32 | (CONFIG_KEYPAD == IRIVER_H300_PAD) |
@@ -68,35 +69,34 @@ const struct button_mapping remote_directions[] = | |||
68 | { PLA_DOWN_REPEAT, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | 69 | { PLA_DOWN_REPEAT, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_NONE}, |
69 | { PLA_LEFT_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE}, | 70 | { PLA_LEFT_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE}, |
70 | { PLA_RIGHT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE}, | 71 | { PLA_RIGHT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE}, |
71 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) | ||
72 | { PLA_UP, BUTTON_UP, BUTTON_NONE}, | ||
73 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, | ||
74 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
75 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
76 | { PLA_UP_REPEAT, BUTTON_UP|BUTTON_REW, BUTTON_NONE}, | ||
77 | { PLA_DOWN_REPEAT, BUTTON_DOWN|BUTTON_REW, BUTTON_NONE}, | ||
78 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REW, BUTTON_NONE}, | ||
79 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REW, BUTTON_NONE}, | ||
80 | #else | 72 | #else |
81 | #error pluginlib_actions: Unsupported remote keypad | 73 | #error pluginlib_actions: No remote directions |
82 | #endif | 74 | #endif |
83 | {CONTEXT_PLUGIN,BUTTON_NONE,BUTTON_NONE} | 75 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN), |
84 | }; | 76 | }; |
85 | #endif /* HAVE_REMOTE_LCD */ | 77 | #endif /* HAVE_REMOTE_LCD */ |
86 | 78 | ||
87 | const struct button_mapping generic_directions[] = | 79 | /* these were taken from the bubbles plugin, so may need tweaking */ |
80 | const struct button_mapping pla_main_ctx[] = | ||
88 | { | 81 | { |
82 | /* Touchscreens */ | ||
89 | #ifdef HAVE_TOUCHSCREEN | 83 | #ifdef HAVE_TOUCHSCREEN |
90 | { PLA_UP, BUTTON_TOPMIDDLE, BUTTON_NONE}, | 84 | { PLA_CANCEL, BUTTON_BOTTOMRIGHT, BUTTON_NONE}, |
91 | { PLA_DOWN, BUTTON_BOTTOMMIDDLE, BUTTON_NONE}, | 85 | { PLA_SELECT, BUTTON_CENTER, BUTTON_NONE}, |
92 | { PLA_LEFT, BUTTON_MIDLEFT, BUTTON_NONE}, | 86 | { PLA_SELECT_REL, BUTTON_CENTER|BUTTON_REL, BUTTON_NONE}, |
93 | { PLA_RIGHT, BUTTON_MIDRIGHT, BUTTON_NONE}, | 87 | { PLA_SELECT_REPEAT, BUTTON_CENTER|BUTTON_REPEAT, BUTTON_NONE}, |
94 | { PLA_UP_REPEAT, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | 88 | { PLA_UP, BUTTON_TOPMIDDLE, BUTTON_NONE}, |
95 | { PLA_DOWN_REPEAT, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | 89 | { PLA_DOWN, BUTTON_BOTTOMMIDDLE, BUTTON_NONE}, |
96 | { PLA_LEFT_REPEAT, BUTTON_MIDLEFT|BUTTON_REPEAT, BUTTON_NONE}, | 90 | { PLA_LEFT, BUTTON_MIDLEFT, BUTTON_NONE}, |
97 | { PLA_RIGHT_REPEAT, BUTTON_MIDRIGHT|BUTTON_REPEAT, BUTTON_NONE}, | 91 | { PLA_RIGHT, BUTTON_MIDRIGHT, BUTTON_NONE}, |
92 | { PLA_UP_REPEAT, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | ||
93 | { PLA_DOWN_REPEAT, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | ||
94 | { PLA_LEFT_REPEAT, BUTTON_MIDLEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
95 | { PLA_RIGHT_REPEAT, BUTTON_MIDRIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
98 | #endif | 96 | #endif |
99 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) \ | 97 | |
98 | /* Directions */ | ||
99 | #if ((CONFIG_KEYPAD == IRIVER_H100_PAD) \ | ||
100 | || (CONFIG_KEYPAD == IRIVER_H300_PAD) \ | 100 | || (CONFIG_KEYPAD == IRIVER_H300_PAD) \ |
101 | || (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) \ | 101 | || (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) \ |
102 | || (CONFIG_KEYPAD == GIGABEAT_PAD) \ | 102 | || (CONFIG_KEYPAD == GIGABEAT_PAD) \ |
@@ -110,86 +110,67 @@ const struct button_mapping generic_directions[] = | |||
110 | || (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) \ | 110 | || (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) \ |
111 | || (CONFIG_KEYPAD == SANSA_CLIP_PAD) \ | 111 | || (CONFIG_KEYPAD == SANSA_CLIP_PAD) \ |
112 | || (CONFIG_KEYPAD == CREATIVEZVM_PAD) \ | 112 | || (CONFIG_KEYPAD == CREATIVEZVM_PAD) \ |
113 | || (CONFIG_KEYPAD == SANSA_M200_PAD) | 113 | || (CONFIG_KEYPAD == SANSA_M200_PAD)\ |
114 | { PLA_UP, BUTTON_UP, BUTTON_NONE}, | 114 | || (CONFIG_KEYPAD == SANSA_E200_PAD) \ |
115 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, | 115 | || (CONFIG_KEYPAD == SANSA_FUZE_PAD) \ |
116 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | 116 | || (CONFIG_KEYPAD == SAMSUNG_YH_PAD)) |
117 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | 117 | { PLA_UP, BUTTON_UP, BUTTON_NONE }, |
118 | { PLA_UP_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE}, | 118 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
119 | { PLA_DOWN_REPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | 119 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, |
120 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | 120 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
121 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | 121 | { PLA_UP_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
122 | { PLA_DOWN_REPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, | ||
123 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, | ||
124 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, | ||
125 | /* now the bad ones that don't have standard names for the directional | ||
126 | * buttons */ | ||
122 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | 127 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ |
123 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | 128 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ |
124 | || (CONFIG_KEYPAD == IPOD_4G_PAD) \ | 129 | || (CONFIG_KEYPAD == IPOD_4G_PAD) |
125 | || (CONFIG_KEYPAD == SANSA_E200_PAD) \ | 130 | { PLA_UP, BUTTON_MENU, BUTTON_NONE }, |
126 | || (CONFIG_KEYPAD == SANSA_FUZE_PAD) | 131 | ( PLA_DOWN, BUTTON_PLAY, BUTTON_NONE }, |
127 | { PLA_UP, BUTTON_SCROLL_BACK, BUTTON_NONE}, | 132 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, |
128 | { PLA_DOWN, BUTTON_SCROLL_FWD, BUTTON_NONE}, | 133 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
129 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | 134 | { PLA_UP_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE }, |
130 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | 135 | { PLA_DOWN_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, |
131 | { PLA_UP_REPEAT, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE}, | 136 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
132 | { PLA_DOWN_REPEAT, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE}, | 137 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
133 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | 138 | #elif (CONFIG_KEYPAD == PLAYER_PAD) |
134 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | 139 | { PLA_UP, BUTTON_PLAY, BUTTON_NONE }, |
135 | #elif CONFIG_KEYPAD == PLAYER_PAD | 140 | { PLA_DOWN, BUTTON_STOP, BUTTON_NONE }, |
136 | {PLA_UP, BUTTON_STOP, BUTTON_NONE}, | 141 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, |
137 | {PLA_DOWN, BUTTON_PLAY, BUTTON_NONE}, | 142 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
138 | {PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | 143 | { PLA_UP_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, |
139 | {PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | 144 | { PLA_DOWN_REPEAT, BUTTON_STOP|BUTTON_REPEAT, BUTTON_NONE }, |
140 | {PLA_UP_REPEAT, BUTTON_STOP|BUTTON_REPEAT, BUTTON_NONE}, | 145 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
141 | {PLA_DOWN_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | 146 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
142 | {PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
143 | {PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
144 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) | 147 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) |
145 | { PLA_UP, BUTTON_SCROLL_UP, BUTTON_NONE}, | 148 | { PLA_UP, BUTTON_SCROLL_UP, BUTTON_NONE }, |
146 | { PLA_DOWN, BUTTON_SCROLL_DOWN, BUTTON_NONE}, | 149 | { PLA_DOWN, BUTTON_SCROLL_DOWN, BUTTON_NONE }, |
147 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | 150 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, |
148 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | 151 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
149 | { PLA_UP_REPEAT, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE}, | 152 | { PLA_UP_REPEAT, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE }, |
150 | { PLA_DOWN_REPEAT, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | 153 | { PLA_DOWN_REPEAT, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
151 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | 154 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
152 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | 155 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
153 | #elif (CONFIG_KEYPAD == MROBE500_PAD) | ||
154 | #elif (CONFIG_KEYPAD == COWON_D2_PAD) | ||
155 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
156 | { PLA_UP, BUTTON_RC_VOL_UP, BUTTON_NONE}, | ||
157 | { PLA_DOWN, BUTTON_RC_VOL_DOWN, BUTTON_NONE}, | ||
158 | { PLA_LEFT, BUTTON_RC_REW, BUTTON_NONE}, | ||
159 | { PLA_RIGHT, BUTTON_RC_FF, BUTTON_NONE}, | ||
160 | { PLA_UP_REPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
161 | { PLA_DOWN_REPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
162 | { PLA_LEFT_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE}, | ||
163 | { PLA_RIGHT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE}, | ||
164 | #elif (CONFIG_KEYPAD == IAUDIO67_PAD) | ||
165 | { PLA_UP, BUTTON_STOP, BUTTON_NONE}, | ||
166 | { PLA_DOWN, BUTTON_PLAY, BUTTON_NONE}, | ||
167 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
168 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
169 | { PLA_UP_REPEAT, BUTTON_STOP|BUTTON_REPEAT, BUTTON_NONE}, | ||
170 | { PLA_DOWN_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | ||
171 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
172 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
173 | #elif (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) | 156 | #elif (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) |
174 | { PLA_UP, BUTTON_UP, BUTTON_NONE}, | 157 | { PLA_UP, BUTTON_UP, BUTTON_NONE }, |
175 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, | 158 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE }, |
176 | { PLA_LEFT, BUTTON_PREV, BUTTON_NONE}, | 159 | { PLA_LEFT, BUTTON_PREV, BUTTON_NONE }, |
177 | { PLA_RIGHT, BUTTON_NEXT, BUTTON_NONE}, | 160 | { PLA_RIGHT, BUTTON_NEXT, BUTTON_NONE }, |
178 | { PLA_UP_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE}, | 161 | { PLA_UP_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE }, |
179 | { PLA_DOWN_REPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | 162 | { PLA_DOWN_REPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE }, |
180 | { PLA_LEFT_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE}, | 163 | { PLA_LEFT_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE }, |
181 | { PLA_RIGHT_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE}, | 164 | { PLA_RIGHT_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE }, |
182 | #elif (CONFIG_KEYPAD == ONDAVX747_PAD) /* Touchscreen target */ | 165 | #elif (CONFIG_KEYPAD == IAUDIO67_PAD) |
183 | #elif (CONFIG_KEYPAD == ONDAVX777_PAD) /* Touchscreen target */ | 166 | { PLA_UP, BUTTON_STOP, BUTTON_NONE }, |
184 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) | 167 | { PLA_DOWN, BUTTON_PLAY, BUTTON_NONE }, |
185 | { PLA_UP, BUTTON_UP, BUTTON_NONE}, | 168 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE }, |
186 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, | 169 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE }, |
187 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | 170 | { PLA_UP_REPEAT, BUTTON_STOP|BUTTON_REPEAT, BUTTON_NONE }, |
188 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | 171 | { PLA_DOWN_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE }, |
189 | { PLA_UP_REPEAT, BUTTON_UP|BUTTON_REW, BUTTON_NONE}, | 172 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE }, |
190 | { PLA_DOWN_REPEAT, BUTTON_DOWN|BUTTON_REW, BUTTON_NONE}, | 173 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE }, |
191 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REW, BUTTON_NONE}, | ||
192 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REW, BUTTON_NONE}, | ||
193 | #elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD) | 174 | #elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD) |
194 | { PLA_UP, BUTTON_UP, BUTTON_NONE}, | 175 | { PLA_UP, BUTTON_UP, BUTTON_NONE}, |
195 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, | 176 | { PLA_DOWN, BUTTON_DOWN, BUTTON_NONE}, |
@@ -210,448 +191,172 @@ const struct button_mapping generic_directions[] = | |||
210 | { PLA_RIGHT_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | 191 | { PLA_RIGHT_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, |
211 | 192 | ||
212 | #else | 193 | #else |
213 | #error pluginlib_actions: Unsupported keypad | 194 | #ifndef HAVE_TOUCHSCREEN |
195 | #error pluginlib_actions: No directions defined | ||
214 | #endif | 196 | #endif |
215 | {CONTEXT_PLUGIN,BUTTON_NONE,BUTTON_NONE} | ||
216 | }; | ||
217 | |||
218 | const struct button_mapping generic_left_right_fire[] = | ||
219 | { | ||
220 | #ifdef HAVE_TOUCHSCREEN | ||
221 | { PLA_LEFT, BUTTON_MIDLEFT, BUTTON_NONE}, | ||
222 | { PLA_LEFT_REPEAT, BUTTON_MIDLEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
223 | { PLA_RIGHT, BUTTON_MIDRIGHT, BUTTON_NONE}, | ||
224 | { PLA_RIGHT_REPEAT, BUTTON_MIDRIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
225 | { PLA_FIRE, BUTTON_CENTER, BUTTON_NONE}, | ||
226 | { PLA_FIRE_REPEAT, BUTTON_CENTER|BUTTON_REPEAT, BUTTON_NONE}, | ||
227 | #endif | 197 | #endif |
228 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) \ | ||
229 | || (CONFIG_KEYPAD == IRIVER_H300_PAD) \ | ||
230 | || (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) \ | ||
231 | || (CONFIG_KEYPAD == GIGABEAT_PAD) \ | ||
232 | || (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) \ | ||
233 | || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \ | ||
234 | || (CONFIG_KEYPAD == MROBE100_PAD) \ | ||
235 | || (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) \ | ||
236 | || (CONFIG_KEYPAD == SANSA_CLIP_PAD) \ | ||
237 | || (CONFIG_KEYPAD == SANSA_M200_PAD) | ||
238 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
239 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
240 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
241 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
242 | { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
243 | { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_NONE}, | ||
244 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
245 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
246 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | ||
247 | { PLA_LEFT, BUTTON_SCROLL_BACK, BUTTON_NONE}, | ||
248 | { PLA_RIGHT, BUTTON_SCROLL_FWD, BUTTON_NONE}, | ||
249 | { PLA_LEFT_REPEAT, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE}, | ||
250 | { PLA_RIGHT_REPEAT, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE}, | ||
251 | { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
252 | { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_NONE}, | ||
253 | #elif CONFIG_KEYPAD == ONDIO_PAD | ||
254 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
255 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
256 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
257 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
258 | { PLA_FIRE, BUTTON_UP, BUTTON_NONE}, | ||
259 | { PLA_FIRE_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
260 | #elif CONFIG_KEYPAD == PLAYER_PAD | ||
261 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
262 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
263 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
264 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
265 | { PLA_FIRE, BUTTON_ON, BUTTON_NONE}, | ||
266 | { PLA_FIRE_REPEAT, BUTTON_ON|BUTTON_REPEAT, BUTTON_NONE}, | ||
267 | #elif CONFIG_KEYPAD == RECORDER_PAD | ||
268 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
269 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
270 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
271 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
272 | { PLA_FIRE, BUTTON_PLAY, BUTTON_NONE}, | ||
273 | { PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | ||
274 | #elif (CONFIG_KEYPAD == SANSA_C200_PAD) \ | ||
275 | || (CONFIG_KEYPAD == ARCHOS_AV300_PAD) | ||
276 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
277 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
278 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
279 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
280 | { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
281 | { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_NONE}, | ||
282 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) \ | ||
283 | || (CONFIG_KEYPAD == SANSA_FUZE_PAD) | ||
284 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
285 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
286 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
287 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
288 | { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
289 | { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT,BUTTON_NONE}, | ||
290 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) | ||
291 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
292 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
293 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
294 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
295 | { PLA_FIRE, BUTTON_REW, BUTTON_NONE}, | ||
296 | { PLA_FIRE_REPEAT, BUTTON_REW|BUTTON_REPEAT, BUTTON_NONE}, | ||
297 | #elif (CONFIG_KEYPAD == MROBE500_PAD) | ||
298 | { PLA_LEFT, BUTTON_RC_REW, BUTTON_NONE}, | ||
299 | { PLA_RIGHT, BUTTON_RC_FF, BUTTON_NONE}, | ||
300 | { PLA_LEFT_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE}, | ||
301 | { PLA_RIGHT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE}, | ||
302 | { PLA_FIRE, BUTTON_RC_HEART, BUTTON_NONE}, | ||
303 | { PLA_FIRE_REPEAT, BUTTON_RC_HEART|BUTTON_REPEAT, BUTTON_NONE}, | ||
304 | #elif (CONFIG_KEYPAD == COWON_D2_PAD) | ||
305 | { PLA_LEFT, BUTTON_MINUS, BUTTON_NONE}, | ||
306 | { PLA_LEFT_REPEAT, BUTTON_MINUS|BUTTON_REPEAT, BUTTON_NONE}, | ||
307 | { PLA_RIGHT, BUTTON_PLUS, BUTTON_NONE}, | ||
308 | { PLA_RIGHT_REPEAT, BUTTON_PLUS|BUTTON_REPEAT, BUTTON_NONE}, | ||
309 | { PLA_FIRE, BUTTON_MENU, BUTTON_NONE}, | ||
310 | { PLA_FIRE_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, | ||
311 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
312 | { PLA_LEFT, BUTTON_RC_REW, BUTTON_NONE}, | ||
313 | { PLA_RIGHT, BUTTON_RC_FF, BUTTON_NONE}, | ||
314 | { PLA_LEFT_REPEAT, BUTTON_RC_REW|BUTTON_REPEAT, BUTTON_NONE}, | ||
315 | { PLA_RIGHT_REPEAT, BUTTON_RC_FF|BUTTON_REPEAT, BUTTON_NONE}, | ||
316 | { PLA_FIRE, BUTTON_RC_MODE, BUTTON_NONE}, | ||
317 | { PLA_FIRE_REPEAT, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_NONE}, | ||
318 | #elif (CONFIG_KEYPAD == IAUDIO67_PAD) | ||
319 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
320 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
321 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
322 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
323 | { PLA_FIRE, BUTTON_MENU, BUTTON_NONE}, | ||
324 | { PLA_FIRE_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, | ||
325 | #elif (CONFIG_KEYPAD == CREATIVEZVM_PAD) | ||
326 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
327 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
328 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REPEAT, BUTTON_NONE}, | ||
329 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REPEAT, BUTTON_NONE}, | ||
330 | { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
331 | { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | ||
332 | #elif (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) | ||
333 | { PLA_LEFT, BUTTON_PREV, BUTTON_NONE}, | ||
334 | { PLA_RIGHT, BUTTON_NEXT, BUTTON_NONE}, | ||
335 | { PLA_LEFT_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE}, | ||
336 | { PLA_RIGHT_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE}, | ||
337 | { PLA_FIRE, BUTTON_PLAY, BUTTON_NONE}, | ||
338 | { PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | ||
339 | #elif (CONFIG_KEYPAD == ONDAVX747_PAD) /* Touchscreen target */ | ||
340 | #elif (CONFIG_KEYPAD == ONDAVX777_PAD) /* Touchscreen target */ | ||
341 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) | ||
342 | { PLA_LEFT, BUTTON_LEFT, BUTTON_NONE}, | ||
343 | { PLA_RIGHT, BUTTON_RIGHT, BUTTON_NONE}, | ||
344 | { PLA_LEFT_REPEAT, BUTTON_LEFT|BUTTON_REW, BUTTON_NONE}, | ||
345 | { PLA_RIGHT_REPEAT, BUTTON_RIGHT|BUTTON_REW, BUTTON_NONE}, | ||
346 | { PLA_FIRE, BUTTON_UP, BUTTON_NONE}, | ||
347 | { PLA_FIRE_REPEAT, BUTTON_UP|BUTTON_REW, BUTTON_NONE}, | ||
348 | #elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD) | ||
349 | { PLA_LEFT, BUTTON_PREV, BUTTON_NONE}, | ||
350 | { PLA_RIGHT, BUTTON_NEXT, BUTTON_NONE}, | ||
351 | { PLA_LEFT_REPEAT, BUTTON_PREV|BUTTON_REPEAT, BUTTON_NONE}, | ||
352 | { PLA_RIGHT_REPEAT, BUTTON_NEXT|BUTTON_REPEAT, BUTTON_NONE}, | ||
353 | { PLA_FIRE, BUTTON_OK, BUTTON_NONE}, | ||
354 | { PLA_FIRE_REPEAT, BUTTON_OK|BUTTON_REPEAT, BUTTON_NONE}, | ||
355 | #elif (CONFIG_KEYPAD == MPIO_HD200_PAD) | ||
356 | { PLA_LEFT, BUTTON_VOL_DOWN, BUTTON_NONE}, | ||
357 | { PLA_RIGHT, BUTTON_VOL_UP, BUTTON_NONE}, | ||
358 | { PLA_LEFT_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
359 | { PLA_RIGHT_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
360 | { PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
361 | { PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | ||
362 | 198 | ||
363 | 199 | /* Scrollwheels */ | |
364 | #else | 200 | #ifdef HAVE_SCROLLWHEEL |
365 | #error pluginlib_actions: Unsupported keypad | 201 | { PLA_SCROLL_BACK, BUTTON_SCROLL_BACK, BUTTON_NONE }, |
202 | { PLA_SCROLL_FWD, BUTTON_SCROLL_FWD, BUTTON_NONE }, | ||
203 | { PLA_SCROLL_BACK_REPEAT,BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE }, | ||
204 | { PLA_SCROLL_FWD_REPEAT, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE }, | ||
366 | #endif | 205 | #endif |
367 | {CONTEXT_PLUGIN,BUTTON_NONE,BUTTON_NONE} | ||
368 | }; | ||
369 | 206 | ||
370 | /* these were taken from the bubbles plugin, so may need tweaking */ | 207 | /* Actions */ |
371 | const struct button_mapping generic_actions[] = | ||
372 | { | ||
373 | #ifdef HAVE_TOUCHSCREEN | ||
374 | {PLA_QUIT, BUTTON_BOTTOMRIGHT, BUTTON_NONE}, | ||
375 | {PLA_START, BUTTON_CENTER, BUTTON_NONE}, | ||
376 | {PLA_MENU, BUTTON_TOPLEFT, BUTTON_NONE}, | ||
377 | {PLA_FIRE, BUTTON_BOTTOMMIDDLE, BUTTON_NONE}, | ||
378 | {PLA_FIRE_REPEAT, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | ||
379 | #endif | ||
380 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) | 208 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) |
381 | {PLA_QUIT, BUTTON_OFF, BUTTON_NONE}, | 209 | {PLA_CANCEL, BUTTON_OFF, BUTTON_NONE }, |
382 | {PLA_QUIT, BUTTON_RC_STOP, BUTTON_NONE}, | 210 | {PLA_CANCEL, BUTTON_RC_STOP, BUTTON_NONE }, |
383 | {PLA_START, BUTTON_ON, BUTTON_NONE}, | 211 | {PLA_EXIT, BUTTON_ON, BUTTON_NONE }, |
384 | {PLA_START, BUTTON_RC_ON, BUTTON_NONE}, | 212 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE }, |
385 | {PLA_MENU, BUTTON_MODE, BUTTON_NONE}, | 213 | {PLA_SELECT, BUTTON_RC_ON, BUTTON_NONE }, |
386 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 214 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, |
387 | {PLA_FIRE, BUTTON_RC_MENU, BUTTON_NONE}, | 215 | {PLA_SELECT_REL, BUTTON_RC_ON|BUTTON_REL, BUTTON_RC_ON }, |
388 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 216 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE }, |
389 | {PLA_FIRE_REPEAT, BUTTON_RC_MENU|BUTTON_REPEAT, BUTTON_NONE}, | 217 | {PLA_SELECT_REPEAT, BUTTON_RC_ON|BUTTON_REPEAT, BUTTON_NONE }, |
390 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | 218 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ |
391 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | 219 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ |
392 | || (CONFIG_KEYPAD == IPOD_4G_PAD) | 220 | || (CONFIG_KEYPAD == IPOD_4G_PAD) |
393 | {PLA_QUIT, BUTTON_MENU|BUTTON_SELECT, BUTTON_NONE}, | 221 | {PLA_CANCEL, BUTTON_MENU|BUTTON_SELECT, BUTTON_NONE }, |
394 | {PLA_START, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, | 222 | {PLA_EXIT, BUTTON_PLAY|BUTTON_SELECT, BUTTON_NONE }, |
395 | {PLA_MENU, BUTTON_MENU|BUTTON_REL, BUTTON_NONE}, | 223 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE }, |
396 | {PLA_FIRE, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, | 224 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, |
397 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 225 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE }, |
398 | #elif CONFIG_KEYPAD == IAUDIO_X5M5_PAD | 226 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) |
399 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 227 | {PLA_CANCEL, BUTTON_POWER, BUTTON_NONE }, |
400 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 228 | {PLA_EXIT, BUTTON_PLAY|BUTTON_SELECT, BUTTON_NONE }, |
401 | {PLA_START, BUTTON_RC_PLAY, BUTTON_NONE}, | 229 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE }, |
402 | {PLA_MENU, BUTTON_REC, BUTTON_NONE}, | 230 | {PLA_SELECT, BUTTON_RC_MODE, BUTTON_NONE }, |
403 | {PLA_MENU, BUTTON_RC_MENU, BUTTON_NONE}, | 231 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT }, |
404 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 232 | {PLA_SELECT_REL, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE }, |
405 | {PLA_FIRE, BUTTON_RC_MODE, BUTTON_NONE}, | 233 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE }, |
406 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 234 | {PLA_SELECT_REPEAT, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_NONE }, |
407 | {PLA_FIRE_REPEAT, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_NONE}, | 235 | #elif (CONFIG_KEYPAD == GIGABEAT_PAD \ |
408 | #elif CONFIG_KEYPAD == GIGABEAT_PAD | 236 | || CONFIG_KEYPAD == SANSA_E200_PAD \ |
409 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 237 | || CONFIG_KEYPAD == SANSA_C200_PAD \ |
410 | {PLA_START, BUTTON_A, BUTTON_NONE}, | 238 | || CONFIG_KEYPAD == SANSA_CLIP_PAD \ |
411 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 239 | || CONFIG_KEYPAD == SANSA_M200_PAD \ |
412 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 240 | || CONFIG_KEYPAD == MROBE100_PAD \ |
413 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 241 | || CONFIG_KEYPAD == PHILIPS_SA9200_PAD \ |
414 | #elif CONFIG_KEYPAD == GIGABEAT_S_PAD | 242 | || CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) |
415 | {PLA_QUIT, BUTTON_BACK, BUTTON_NONE}, | 243 | {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER}, |
416 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 244 | {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE}, |
417 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 245 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
418 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 246 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
419 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 247 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
420 | #elif CONFIG_KEYPAD == RECORDER_PAD | 248 | #elif (CONFIG_KEYPAD == GIGABEAT_S_PAD) |
421 | {PLA_QUIT, BUTTON_OFF, BUTTON_NONE}, | 249 | {PLA_CANCEL, BUTTON_BACK, BUTTON_NONE}, |
422 | {PLA_START, BUTTON_ON, BUTTON_NONE}, | 250 | {PLA_EXIT, BUTTON_MENU, BUTTON_NONE}, |
423 | {PLA_MENU, BUTTON_F1, BUTTON_NONE}, | 251 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
424 | {PLA_FIRE, BUTTON_PLAY, BUTTON_NONE}, | 252 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
425 | {PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | 253 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
426 | #elif CONFIG_KEYPAD == ARCHOS_AV300_PAD | 254 | #elif (CONFIG_KEYPAD == RECORDER_PAD) |
427 | {PLA_QUIT, BUTTON_OFF, BUTTON_NONE}, | 255 | {PLA_CANCEL, BUTTON_ON, BUTTON_NONE}, |
428 | {PLA_START, BUTTON_ON, BUTTON_NONE}, | 256 | {PLA_EXIT, BUTTON_OFF, BUTTON_NONE}, |
429 | {PLA_MENU, BUTTON_F1, BUTTON_NONE}, | 257 | {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, |
430 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 258 | {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, |
431 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 259 | {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, |
432 | #elif CONFIG_KEYPAD == ONDIO_PAD | 260 | #elif (CONFIG_KEYPAD == ARCHOS_AV300_PAD) |
433 | {PLA_QUIT, BUTTON_OFF, BUTTON_NONE}, | 261 | {PLA_CANCEL, BUTTON_OFF|BUTTON_REL, BUTTON_OFF}, |
434 | {PLA_START, BUTTON_MENU, BUTTON_NONE}, | 262 | {PLA_EXIT, BUTTON_OFF|BUTTON_REPEAT, BUTTON_NONE}, |
435 | {PLA_MENU, BUTTON_DOWN, BUTTON_NONE}, | 263 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
436 | {PLA_FIRE, BUTTON_UP, BUTTON_NONE}, | 264 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
437 | {PLA_FIRE_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE}, | 265 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
438 | #elif CONFIG_KEYPAD == PLAYER_PAD | 266 | #elif (CONFIG_KEYPAD == ONDIO_PAD) |
439 | {PLA_QUIT, BUTTON_STOP|BUTTON_REPEAT, BUTTON_NONE}, | 267 | {PLA_CANCEL, BUTTON_OFF|BUTTON_REL, BUTTON_OFF}, |
440 | {PLA_START, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | 268 | {PLA_EXIT, BUTTON_OFF|BUTTON_REPEAT, BUTTON_NONE}, |
441 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 269 | {PLA_SELECT, BUTTON_MENU, BUTTON_NONE}, |
442 | {PLA_FIRE, BUTTON_ON, BUTTON_NONE}, | 270 | {PLA_SELECT_REL, BUTTON_MENU|BUTTON_REL, BUTTON_MENU}, |
443 | {PLA_FIRE_REPEAT, BUTTON_ON|BUTTON_REPEAT, BUTTON_NONE}, | 271 | {PLA_SELECT_REPEAT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, |
444 | #elif CONFIG_KEYPAD == SANSA_E200_PAD || \ | 272 | #elif (CONFIG_KEYPAD == PLAYER_PAD) |
445 | CONFIG_KEYPAD == SANSA_C200_PAD || \ | 273 | {PLA_CANCEL, BUTTON_MENU|BUTTON_REL, BUTTON_MENU}, |
446 | CONFIG_KEYPAD == SANSA_CLIP_PAD || \ | 274 | {PLA_EXIT, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE}, |
447 | CONFIG_KEYPAD == SANSA_M200_PAD | 275 | {PLA_SELECT, BUTTON_ON, BUTTON_NONE}, |
448 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 276 | {PLA_SELECT_REL, BUTTON_ON|BUTTON_REL, BUTTON_ON}, |
449 | {PLA_START, BUTTON_UP, BUTTON_NONE}, | 277 | {PLA_SELECT_REPEAT, BUTTON_ON|BUTTON_REPEAT, BUTTON_NONE}, |
450 | {PLA_MENU, BUTTON_DOWN, BUTTON_NONE}, | 278 | #elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) |
451 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 279 | {PLA_CANCEL, BUTTON_HOME|BUTTON_REL, BUTTON_HOME}, |
452 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 280 | {PLA_EXIT, BUTTON_HOME|BUTTON_REPEAT, BUTTON_NONE}, |
453 | #elif CONFIG_KEYPAD == SANSA_FUZE_PAD | 281 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
454 | {PLA_QUIT, (BUTTON_HOME|BUTTON_REPEAT), BUTTON_NONE}, | 282 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
455 | {PLA_START, BUTTON_UP, BUTTON_NONE}, | 283 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
456 | {PLA_MENU, BUTTON_DOWN, BUTTON_NONE}, | 284 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) |
457 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 285 | {PLA_CANCEL, BUTTON_PREV, BUTTON_NONE}, |
458 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 286 | {PLA_EXIT, BUTTON_POWER, BUTTON_NONE}, |
459 | #elif CONFIG_KEYPAD == IRIVER_H10_PAD | 287 | {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, |
460 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 288 | {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, |
461 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 289 | {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, |
462 | {PLA_MENU, BUTTON_FF, BUTTON_NONE}, | 290 | #elif (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) |
463 | {PLA_FIRE, BUTTON_REW, BUTTON_NONE}, | 291 | {PLA_CANCEL, BUTTON_EQ|BUTOTN_REL, BUTTON_EQ}, |
464 | {PLA_FIRE_REPEAT, BUTTON_REW|BUTTON_REPEAT, BUTTON_NONE}, | 292 | {PLA_EXIT, BUTTON_EQ|BUTTON_REPEAT, BUTTON_NONE}, |
465 | #elif CONFIG_KEYPAD == IRIVER_IFP7XX_PAD | 293 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
466 | {PLA_QUIT, BUTTON_EQ, BUTTON_NONE}, | 294 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
467 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 295 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
468 | {PLA_MENU, BUTTON_MODE, BUTTON_NONE}, | ||
469 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
470 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | ||
471 | #elif (CONFIG_KEYPAD == MROBE500_PAD) | 296 | #elif (CONFIG_KEYPAD == MROBE500_PAD) |
472 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 297 | {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER}, |
473 | {PLA_START, BUTTON_RC_PLAY, BUTTON_NONE}, | 298 | {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE}, |
474 | {PLA_MENU, BUTTON_RC_MODE, BUTTON_NONE}, | 299 | {PLA_SELECT, BUTTON_RC_HEART, BUTTON_NONE}, |
475 | {PLA_FIRE, BUTTON_RC_HEART, BUTTON_NONE}, | 300 | {PLA_SELECT_REL, BUTTON_RC_HEART|BUTTON_REL, BUTTON_RC_HEART}, |
476 | {PLA_FIRE_REPEAT, BUTTON_RC_HEART|BUTTON_REPEAT, BUTTON_NONE}, | 301 | {PLA_SELECT_REPEAT, BUTTON_RC_HEART|BUTTON_REPEAT, BUTTON_NONE}, |
477 | #elif CONFIG_KEYPAD == MROBE100_PAD | ||
478 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | ||
479 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | ||
480 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | ||
481 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
482 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | ||
483 | #elif (CONFIG_KEYPAD == COWON_D2_PAD) | 302 | #elif (CONFIG_KEYPAD == COWON_D2_PAD) |
484 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 303 | {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER}, |
485 | {PLA_START, BUTTON_MINUS, BUTTON_NONE}, | 304 | {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE}, |
486 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 305 | {PLA_SELECT, BUTTON_MINUS, BUTTON_NONE}, |
487 | {PLA_FIRE, BUTTON_PLUS, BUTTON_NONE}, | 306 | {PLA_SELECT_REL, BUTTON_MINUS|BUTTON_REL, BUTTON_MINUS}, |
488 | {PLA_FIRE_REPEAT, BUTTON_PLUS|BUTTON_REPEAT, BUTTON_NONE}, | 307 | {PLA_SELECT_REPEAT, BUTTON_MINUS|BUTTON_MINUS, BUTTON_NONE}, |
489 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | 308 | #elif (CONFIG_KEYPAD == IAUDIO_M3_PAD) |
490 | {PLA_QUIT, BUTTON_RC_REC, BUTTON_NONE}, | 309 | {PLA_CANCEL, BUTTON_RC_REC|BUTTON_REL, BUTTON_RC_REC}, |
491 | {PLA_START, BUTTON_RC_PLAY, BUTTON_NONE}, | 310 | {PLA_EXIT, BUTTON_RC_REC|BUTTON_REPEAT, BUTTON_NONE}, |
492 | {PLA_MENU, BUTTON_RC_MENU, BUTTON_NONE}, | 311 | {PLA_SELECT, BUTTON_RC_MODE, BUTTON_NONE}, |
493 | {PLA_FIRE, BUTTON_RC_MODE, BUTTON_NONE}, | 312 | {PLA_SELECT_REL, BUTTON_RC_MODE|BUTTON_REL, BUTTON_RC_MODE}, |
494 | {PLA_FIRE_REPEAT, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_NONE}, | 313 | {PLA_SELECT_REPEAT, BUTTON_RC_MODE|BUTTON_REPEAT, BUTTON_NONE}, |
495 | #elif CONFIG_KEYPAD == PHILIPS_SA9200_PAD | 314 | #elif CONFIG_KEYPAD == PHILIPS_SA9200_PAD |
496 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 315 | {PLA_EXIT, BUTTON_POWER, BUTTON_NONE}, |
497 | {PLA_START, BUTTON_RIGHT, BUTTON_NONE}, | 316 | {PLA_CANCE BUTTON_MENU, BUTTON_NONE}, |
498 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 317 | {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, |
499 | {PLA_FIRE, BUTTON_PLAY, BUTTON_NONE}, | 318 | {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, |
500 | {PLA_FIRE_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | 319 | {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, |
501 | #elif (CONFIG_KEYPAD == IAUDIO67_PAD) | 320 | #elif (CONFIG_KEYPAD == IAUDIO67_PAD) |
502 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 321 | {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER}, |
503 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 322 | {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE}, |
504 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 323 | {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, |
505 | {PLA_FIRE, BUTTON_VOLUP, BUTTON_NONE}, | 324 | {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, |
506 | {PLA_FIRE_REPEAT, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE}, | 325 | {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT BUTTON_NONE}, |
507 | #elif (CONFIG_KEYPAD == CREATIVEZVM_PAD) | 326 | #elif (CONFIG_KEYPAD == CREATIVEZVM_PAD) |
508 | {PLA_QUIT, BUTTON_BACK, BUTTON_NONE}, | 327 | {PLA_CANCEL, BUTTON_BACK|BUTTON_REL, BUTTON_BACK}, |
509 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 328 | {PLA_EXIT, BUTTON_BACK|BUTTON_REPEAT, BUTTON_NONE}, |
510 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 329 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
511 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 330 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
512 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 331 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
513 | #elif CONFIG_KEYPAD == PHILIPS_HDD1630_PAD | ||
514 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | ||
515 | {PLA_START, BUTTON_VIEW, BUTTON_NONE}, | ||
516 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | ||
517 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | ||
518 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | ||
519 | #elif (CONFIG_KEYPAD == ONDAVX747_PAD) | 332 | #elif (CONFIG_KEYPAD == ONDAVX747_PAD) |
520 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | 333 | {PLA_CANCEL, BUTTON_POWER|BUTTON_REL, BUTTON_POWER}, |
521 | {PLA_START, BUTTON_VOL_DOWN, BUTTON_NONE}, | 334 | {PLA_EXIT, BUTTON_POWER|BUTTON_REPEAT, BUTTON_NONE}, |
522 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 335 | {PLA_SELECT, BUTTON_VOL_UP, BUTTON_NONE}, |
523 | {PLA_FIRE, BUTTON_VOL_UP, BUTTON_NONE}, | 336 | {PLA_SELECT_REL, BUTTON_VOL_UP|BUTTON_REL, BUTTON_VOL_UP}, |
524 | {PLA_FIRE_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | 337 | {PLA_SELECT_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, |
525 | #elif (CONFIG_KEYPAD == ONDAVX777_PAD) | ||
526 | {PLA_QUIT, BUTTON_POWER, BUTTON_NONE}, | ||
527 | {PLA_START, BUTTON_VOL_DOWN, BUTTON_NONE}, | ||
528 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | ||
529 | {PLA_FIRE, BUTTON_VOL_UP, BUTTON_NONE}, | ||
530 | {PLA_FIRE_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
531 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) | 338 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) |
532 | {PLA_QUIT, BUTTON_REW, BUTTON_NONE}, | 339 | {PLA_CANCEL, BUTTON_REW, BUTTON_NONE}, |
533 | {PLA_START, BUTTON_FFWD, BUTTON_NONE}, | 340 | {PLA_EXIT, BUTTON_FFWD, BUTTON_NONE}, |
534 | {PLA_MENU, BUTTON_PLAY, BUTTON_NONE}, | 341 | {PLA_SELECT, BUTTON_PLAY, BUTTON_NONE}, |
535 | {PLA_FIRE, BUTTON_UP, BUTTON_NONE}, | 342 | {PLA_SELECT_REL, BUTTON_PLAY|BUTTON_REL, BUTTON_PLAY}, |
536 | {PLA_FIRE_REPEAT, BUTTON_UP|BUTTON_REW, BUTTON_NONE}, | 343 | {PLA_SELECT_REPEAT, BUTTON_PLAY|BUTTON_REPEAT, BUTTON_NONE}, |
537 | #elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD) | 344 | #elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD) |
538 | {PLA_QUIT, BUTTON_REC, BUTTON_NONE}, | 345 | {PLA_CANCEL, BUTTON_MENU, BUTTON_NONE}, |
539 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 346 | {PLA_EXIT, BUTTON_REC, BUTTON_NONE}, |
540 | {PLA_MENU, BUTTON_MENU, BUTTON_NONE}, | 347 | {PLA_SELECT, BUTTON_OK, BUTTON_NONE}, |
541 | {PLA_FIRE, BUTTON_OK, BUTTON_NONE}, | 348 | {PLA_SELECT_REL, BUTTON_OK|BUTTON_REL, BUTTON_OK }, |
542 | {PLA_FIRE_REPEAT, BUTTON_OK|BUTTON_REPEAT, BUTTON_NONE}, | 349 | {PLA_SELECT_REPEAT, BUTTON_OK|BUTTON_REPEAT, BUTTON_NONE}, |
543 | #elif (CONFIG_KEYPAD == MPIO_HD200_PAD) | 350 | #elif (CONFIG_KEYPAD == MPIO_HD200_PAD) |
544 | {PLA_QUIT, (BUTTON_REC|BUTTON_PLAY), BUTTON_NONE}, | 351 | {PLA_CANCEL, BUTTON_REC, BUTTON_NONE}, |
545 | {PLA_START, BUTTON_PLAY, BUTTON_NONE}, | 352 | {PLA_EXIT, (BUTTON_REC|BUTTON_PLAY), BUTTON_NONE}, |
546 | {PLA_MENU, BUTTON_REC, BUTTON_NONE}, | 353 | {PLA_SELECT, BUTTON_SELECT, BUTTON_NONE}, |
547 | {PLA_FIRE, BUTTON_SELECT, BUTTON_NONE}, | 354 | {PLA_SELECT_REL, BUTTON_SELECT|BUTTON_REL, BUTTON_SELECT}, |
548 | {PLA_FIRE_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, | 355 | {PLA_SELECT_REPEAT, BUTTON_SELECT|BUTTON_REPEAT, BUTTON_NONE}, |
549 | |||
550 | #else | ||
551 | #error pluginlib_actions: Unsupported keypad | ||
552 | #endif | ||
553 | {CONTEXT_PLUGIN,BUTTON_NONE,BUTTON_NONE} | ||
554 | }; | ||
555 | |||
556 | const struct button_mapping generic_increase_decrease[] = | ||
557 | { | ||
558 | #ifdef HAVE_TOUCHSCREEN | ||
559 | {PLA_INC, BUTTON_TOPMIDDLE, BUTTON_NONE}, | ||
560 | {PLA_DEC, BUTTON_BOTTOMMIDDLE, BUTTON_NONE}, | ||
561 | {PLA_INC_REPEAT, BUTTON_TOPMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | ||
562 | {PLA_DEC_REPEAT, BUTTON_BOTTOMMIDDLE|BUTTON_REPEAT, BUTTON_NONE}, | ||
563 | #endif | ||
564 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) \ | ||
565 | || (CONFIG_KEYPAD == IRIVER_H300_PAD) \ | ||
566 | || (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) \ | ||
567 | || (CONFIG_KEYPAD == GIGABEAT_PAD) \ | ||
568 | || (CONFIG_KEYPAD == RECORDER_PAD) \ | ||
569 | || (CONFIG_KEYPAD == ARCHOS_AV300_PAD) \ | ||
570 | || (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) \ | ||
571 | || (CONFIG_KEYPAD == ONDIO_PAD) \ | ||
572 | || (CONFIG_KEYPAD == GIGABEAT_S_PAD) \ | ||
573 | || (CONFIG_KEYPAD == MROBE100_PAD) \ | ||
574 | || (CONFIG_KEYPAD == PHILIPS_SA9200_PAD) \ | ||
575 | || (CONFIG_KEYPAD == PHILIPS_HDD1630_PAD) \ | ||
576 | || (CONFIG_KEYPAD == SANSA_CLIP_PAD) \ | ||
577 | || (CONFIG_KEYPAD == CREATIVEZVM_PAD) \ | ||
578 | || (CONFIG_KEYPAD == SANSA_M200_PAD) | ||
579 | {PLA_INC, BUTTON_UP, BUTTON_NONE}, | ||
580 | {PLA_DEC, BUTTON_DOWN, BUTTON_NONE}, | ||
581 | {PLA_INC_REPEAT, BUTTON_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
582 | {PLA_DEC_REPEAT, BUTTON_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
583 | #elif (CONFIG_KEYPAD == SANSA_C200_PAD) | ||
584 | {PLA_INC, BUTTON_VOL_UP, BUTTON_NONE}, | ||
585 | {PLA_DEC, BUTTON_VOL_DOWN, BUTTON_NONE}, | ||
586 | {PLA_INC_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
587 | {PLA_DEC_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
588 | #elif (CONFIG_KEYPAD == IPOD_1G2G_PAD) \ | ||
589 | || (CONFIG_KEYPAD == IPOD_3G_PAD) \ | ||
590 | || (CONFIG_KEYPAD == IPOD_4G_PAD) \ | ||
591 | || (CONFIG_KEYPAD == SANSA_E200_PAD) \ | ||
592 | || (CONFIG_KEYPAD == SANSA_FUZE_PAD) | ||
593 | {PLA_INC, BUTTON_SCROLL_FWD, BUTTON_NONE}, | ||
594 | {PLA_DEC, BUTTON_SCROLL_BACK, BUTTON_NONE}, | ||
595 | {PLA_INC_REPEAT, BUTTON_SCROLL_FWD|BUTTON_REPEAT, BUTTON_NONE}, | ||
596 | {PLA_DEC_REPEAT, BUTTON_SCROLL_BACK|BUTTON_REPEAT, BUTTON_NONE}, | ||
597 | #elif CONFIG_KEYPAD == PLAYER_PAD | ||
598 | {PLA_INC, BUTTON_STOP, BUTTON_NONE}, | ||
599 | {PLA_DEC, BUTTON_PLAY, BUTTON_NONE}, | ||
600 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) | ||
601 | {PLA_INC, BUTTON_SCROLL_UP, BUTTON_NONE}, | ||
602 | {PLA_DEC, BUTTON_SCROLL_DOWN, BUTTON_NONE}, | ||
603 | {PLA_INC_REPEAT, BUTTON_SCROLL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
604 | {PLA_DEC_REPEAT, BUTTON_SCROLL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
605 | #elif (CONFIG_KEYPAD == MROBE500_PAD) | ||
606 | {PLA_INC, BUTTON_RC_PLAY, BUTTON_NONE}, | ||
607 | {PLA_DEC, BUTTON_RC_DOWN, BUTTON_NONE}, | ||
608 | {PLA_INC_REPEAT, BUTTON_RC_PLAY|BUTTON_REPEAT, BUTTON_NONE}, | ||
609 | {PLA_DEC_REPEAT, BUTTON_RC_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
610 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
611 | {PLA_INC, BUTTON_RC_VOL_UP, BUTTON_NONE}, | ||
612 | {PLA_DEC, BUTTON_RC_VOL_DOWN, BUTTON_NONE}, | ||
613 | {PLA_INC_REPEAT, BUTTON_RC_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
614 | {PLA_DEC_REPEAT, BUTTON_RC_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
615 | #elif CONFIG_KEYPAD == COWON_D2_PAD | ||
616 | {PLA_INC, BUTTON_PLUS, BUTTON_NONE}, | ||
617 | {PLA_DEC, BUTTON_MINUS, BUTTON_NONE}, | ||
618 | {PLA_INC_REPEAT, BUTTON_PLUS|BUTTON_REPEAT, BUTTON_NONE}, | ||
619 | {PLA_DEC_REPEAT, BUTTON_MINUS|BUTTON_REPEAT, BUTTON_NONE}, | ||
620 | #elif CONFIG_KEYPAD == IAUDIO67_PAD | ||
621 | {PLA_INC, BUTTON_VOLUP, BUTTON_NONE}, | ||
622 | {PLA_DEC, BUTTON_VOLDOWN, BUTTON_NONE}, | ||
623 | {PLA_INC_REPEAT, BUTTON_VOLUP|BUTTON_REPEAT, BUTTON_NONE}, | ||
624 | {PLA_DEC_REPEAT, BUTTON_VOLDOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
625 | #elif CONFIG_KEYPAD == ONDAVX747_PAD | ||
626 | {PLA_INC, BUTTON_VOL_UP, BUTTON_NONE}, | ||
627 | {PLA_DEC, BUTTON_VOL_DOWN, BUTTON_NONE}, | ||
628 | {PLA_INC_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
629 | {PLA_DEC_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
630 | #elif CONFIG_KEYPAD == ONDAVX777_PAD | ||
631 | {PLA_INC, BUTTON_VOL_UP, BUTTON_NONE}, | ||
632 | {PLA_DEC, BUTTON_VOL_DOWN, BUTTON_NONE}, | ||
633 | {PLA_INC_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
634 | {PLA_DEC_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
635 | #elif CONFIG_KEYPAD == SAMSUNG_YH_PAD | ||
636 | {PLA_INC, BUTTON_UP, BUTTON_NONE}, | ||
637 | {PLA_DEC, BUTTON_DOWN, BUTTON_NONE}, | ||
638 | {PLA_INC_REPEAT, BUTTON_UP|BUTTON_REW, BUTTON_NONE}, | ||
639 | {PLA_DEC_REPEAT, BUTTON_DOWN|BUTTON_REW, BUTTON_NONE}, | ||
640 | #elif CONFIG_KEYPAD == PBELL_VIBE500_PAD | ||
641 | {PLA_INC, BUTTON_UP, BUTTON_NONE}, | ||
642 | {PLA_DEC, BUTTON_DOWN, BUTTON_NONE}, | ||
643 | {PLA_INC_REPEAT, BUTTON_UP, BUTTON_NONE}, | ||
644 | {PLA_DEC_REPEAT, BUTTON_DOWN, BUTTON_NONE}, | ||
645 | #elif CONFIG_KEYPAD == MPIO_HD200_PAD | ||
646 | {PLA_INC, BUTTON_VOL_UP, BUTTON_NONE}, | ||
647 | {PLA_DEC, BUTTON_VOL_DOWN, BUTTON_NONE}, | ||
648 | {PLA_INC_REPEAT, BUTTON_VOL_UP|BUTTON_REPEAT, BUTTON_NONE}, | ||
649 | {PLA_DEC_REPEAT, BUTTON_VOL_DOWN|BUTTON_REPEAT, BUTTON_NONE}, | ||
650 | |||
651 | #else | 356 | #else |
652 | #error pluginlib_actions: Unsupported keypad | 357 | #error pluginlib_actions: No actions defined |
653 | #endif | 358 | #endif |
654 | {CONTEXT_PLUGIN,BUTTON_NONE,BUTTON_NONE} | 359 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN), |
655 | }; | 360 | }; |
656 | 361 | ||
657 | static struct button_mapping **plugin_context_order; | 362 | static struct button_mapping **plugin_context_order; |
diff --git a/apps/plugins/lib/pluginlib_actions.h b/apps/plugins/lib/pluginlib_actions.h index cc5f8b4eb8..51a0f4a84a 100644 --- a/apps/plugins/lib/pluginlib_actions.h +++ b/apps/plugins/lib/pluginlib_actions.h | |||
@@ -38,27 +38,26 @@ enum { | |||
38 | PLA_LEFT_REPEAT, | 38 | PLA_LEFT_REPEAT, |
39 | PLA_RIGHT_REPEAT, | 39 | PLA_RIGHT_REPEAT, |
40 | 40 | ||
41 | PLA_INC, | 41 | PLA_CANCEL, |
42 | PLA_DEC, | 42 | PLA_EXIT, |
43 | PLA_INC_REPEAT, | 43 | PLA_SELECT, |
44 | PLA_DEC_REPEAT, | 44 | PLA_SELECT_REL, |
45 | PLA_SELECT_REPEAT, | ||
45 | 46 | ||
46 | PLA_QUIT, | 47 | #ifdef HAVE_SCROLLWHEEL |
47 | PLA_START, | 48 | PLA_SCROLL_FWD, |
48 | PLA_MENU, | 49 | PLA_SCROLL_FWD_REPEAT, |
49 | PLA_FIRE, | 50 | PLA_SCROLL_BACK, |
50 | PLA_FIRE_REPEAT, | 51 | PLA_SCROLL_BACK_REPEAT, |
52 | #endif | ||
51 | 53 | ||
52 | LAST_PLUGINLIB_ACTION | 54 | LAST_PLUGINLIB_ACTION |
53 | }; | 55 | }; |
54 | 56 | ||
55 | #if defined(HAVE_REMOTE_LCD) | 57 | #if defined(HAVE_REMOTE_LCD) |
56 | extern const struct button_mapping remote_directions[]; | 58 | extern const struct button_mapping pla_remote_ctx[]; |
57 | #endif | 59 | #endif |
58 | extern const struct button_mapping generic_directions[]; | 60 | extern const struct button_mapping pla_main_ctx[]; |
59 | extern const struct button_mapping generic_left_right_fire[]; | ||
60 | extern const struct button_mapping generic_actions[]; | ||
61 | extern const struct button_mapping generic_increase_decrease[]; | ||
62 | 61 | ||
63 | int pluginlib_getaction(int timeout, | 62 | int pluginlib_getaction(int timeout, |
64 | const struct button_mapping *plugin_contexts[], | 63 | const struct button_mapping *plugin_contexts[], |
diff --git a/apps/plugins/maze.c b/apps/plugins/maze.c index 307f14d86a..465dfa9e84 100644 --- a/apps/plugins/maze.c +++ b/apps/plugins/maze.c | |||
@@ -37,56 +37,35 @@ PLUGIN_HEADER | |||
37 | 37 | ||
38 | /* key assignments */ | 38 | /* key assignments */ |
39 | 39 | ||
40 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 40 | #if (CONFIG_KEYPAD == IPOD_3G_PAD) |
41 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | 41 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) |
42 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) | 42 | # define MAZE_NEW_PRE BUTTON_SELECT |
43 | # define MAZE_NEW_PRE BUTTON_SELECT | 43 | # define MAZE_QUIT BUTTON_MENU |
44 | # define MAZE_QUIT (BUTTON_SELECT | BUTTON_MENU) | 44 | # define MAZE_SOLVE (BUTTON_SELECT | BUTTON_PLAY) |
45 | # define MAZE_SOLVE (BUTTON_SELECT | BUTTON_PLAY) | 45 | # define MAZE_RIGHT BUTTON_RIGHT |
46 | # define MAZE_RIGHT BUTTON_RIGHT | 46 | # define MAZE_RIGHT_REPEAT BUTTON_RIGHT|BUTTON_REPEAT |
47 | # define MAZE_LEFT BUTTON_LEFT | 47 | # define MAZE_LEFT BUTTON_LEFT |
48 | # define MAZE_UP BUTTON_MENU | 48 | # define MAZE_LEFT_REPEAT BUTTON_LEFT|BUTTON_REPEAT |
49 | # define MAZE_DOWN BUTTON_PLAY | 49 | # define MAZE_UP BUTTON_SCROLL_BACK |
50 | 50 | # define MAZE_UP_REPEAT BUTTON_SCROLL_BACK|BUTTON_REPEAT | |
51 | #elif (CONFIG_KEYPAD == IPOD_3G_PAD) | 51 | # define MAZE_DOWN BUTTON_SCROLL_FWD |
52 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) | 52 | # define MAZE_DOWN_REPEAT BUTTON_SCROLL_FWD|BUTTON_REPEAT |
53 | # define MAZE_NEW_PRE BUTTON_SELECT | ||
54 | # define MAZE_QUIT BUTTON_MENU | ||
55 | # define MAZE_SOLVE (BUTTON_SELECT | BUTTON_PLAY) | ||
56 | # define MAZE_RIGHT BUTTON_RIGHT | ||
57 | # define MAZE_LEFT BUTTON_LEFT | ||
58 | # define MAZE_UP BUTTON_SCROLL_BACK | ||
59 | # define MAZE_DOWN BUTTON_SCROLL_FWD | ||
60 | |||
61 | #elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) | ||
62 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) | ||
63 | # define MAZE_QUIT (BUTTON_HOME | BUTTON_REPEAT) | ||
64 | # define MAZE_SOLVE BUTTON_SELECT | ||
65 | # define MAZE_RIGHT BUTTON_RIGHT | ||
66 | # define MAZE_LEFT BUTTON_LEFT | ||
67 | # define MAZE_UP BUTTON_UP | ||
68 | # define MAZE_DOWN BUTTON_DOWN | ||
69 | |||
70 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) | ||
71 | # define MAZE_NEW (BUTTON_SELECT | BUTTON_REPEAT) | ||
72 | # define MAZE_QUIT BUTTON_POWER | ||
73 | # define MAZE_SOLVE BUTTON_SELECT | ||
74 | # define MAZE_RIGHT BUTTON_RIGHT | ||
75 | # define MAZE_LEFT BUTTON_LEFT | ||
76 | # define MAZE_UP BUTTON_UP | ||
77 | # define MAZE_DOWN BUTTON_DOWN | ||
78 | 53 | ||
79 | #else | 54 | #else |
80 | # include "lib/pluginlib_actions.h" | 55 | # include "lib/pluginlib_actions.h" |
81 | # define MAZE_NEW PLA_START | 56 | # define MAZE_NEW PLA_SELECT_REPEAT |
82 | # define MAZE_QUIT PLA_QUIT | 57 | # define MAZE_QUIT PLA_CANCEL |
83 | # define MAZE_SOLVE PLA_FIRE | 58 | # define MAZE_SOLVE PLA_SELECT_REL |
84 | # define MAZE_RIGHT PLA_RIGHT | 59 | # define MAZE_RIGHT PLA_RIGHT |
85 | # define MAZE_LEFT PLA_LEFT | 60 | # define MAZE_RIGHT_REPEAT PLA_RIGHT_REPEAT |
86 | # define MAZE_UP PLA_UP | 61 | # define MAZE_LEFT PLA_LEFT |
87 | # define MAZE_DOWN PLA_DOWN | 62 | # define MAZE_LEFT_REPEAT PLA_LEFT_REPEAT |
63 | # define MAZE_UP PLA_UP | ||
64 | # define MAZE_UP_REPEAT PLA_UP_REPEAT | ||
65 | # define MAZE_DOWN PLA_DOWN | ||
66 | # define MAZE_DOWN_REPEAT PLA_DOWN_REPEAT | ||
88 | static const struct button_mapping *plugin_contexts[] | 67 | static const struct button_mapping *plugin_contexts[] |
89 | = {generic_directions, generic_actions}; | 68 | = {pla_main_ctx}; |
90 | 69 | ||
91 | #endif | 70 | #endif |
92 | 71 | ||
@@ -546,7 +525,8 @@ enum plugin_status plugin_start(const void* parameter) | |||
546 | 525 | ||
547 | while(!quit) { | 526 | while(!quit) { |
548 | #ifdef __PLUGINLIB_ACTIONS_H__ | 527 | #ifdef __PLUGINLIB_ACTIONS_H__ |
549 | button = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, 2); | 528 | button = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, |
529 | ARRAYLEN(plugin_contexts)); | ||
550 | #else | 530 | #else |
551 | button = rb->button_get(true); | 531 | button = rb->button_get(true); |
552 | #endif | 532 | #endif |
@@ -567,25 +547,25 @@ enum plugin_status plugin_start(const void* parameter) | |||
567 | maze_draw(&maze, rb->screens[i]); | 547 | maze_draw(&maze, rb->screens[i]); |
568 | break; | 548 | break; |
569 | case MAZE_UP: | 549 | case MAZE_UP: |
570 | case (MAZE_UP|BUTTON_REPEAT): | 550 | case MAZE_UP_REPEAT: |
571 | maze_move_player_up(&maze); | 551 | maze_move_player_up(&maze); |
572 | FOR_NB_SCREENS(i) | 552 | FOR_NB_SCREENS(i) |
573 | maze_draw(&maze, rb->screens[i]); | 553 | maze_draw(&maze, rb->screens[i]); |
574 | break; | 554 | break; |
575 | case MAZE_RIGHT: | 555 | case MAZE_RIGHT: |
576 | case (MAZE_RIGHT|BUTTON_REPEAT): | 556 | case MAZE_RIGHT_REPEAT: |
577 | maze_move_player_right(&maze); | 557 | maze_move_player_right(&maze); |
578 | FOR_NB_SCREENS(i) | 558 | FOR_NB_SCREENS(i) |
579 | maze_draw(&maze, rb->screens[i]); | 559 | maze_draw(&maze, rb->screens[i]); |
580 | break; | 560 | break; |
581 | case MAZE_DOWN: | 561 | case MAZE_DOWN: |
582 | case (MAZE_DOWN|BUTTON_REPEAT): | 562 | case MAZE_DOWN_REPEAT: |
583 | maze_move_player_down(&maze); | 563 | maze_move_player_down(&maze); |
584 | FOR_NB_SCREENS(i) | 564 | FOR_NB_SCREENS(i) |
585 | maze_draw(&maze, rb->screens[i]); | 565 | maze_draw(&maze, rb->screens[i]); |
586 | break; | 566 | break; |
587 | case MAZE_LEFT: | 567 | case MAZE_LEFT: |
588 | case (MAZE_LEFT|BUTTON_REPEAT): | 568 | case MAZE_LEFT_REPEAT: |
589 | maze_move_player_left(&maze); | 569 | maze_move_player_left(&maze); |
590 | FOR_NB_SCREENS(i) | 570 | FOR_NB_SCREENS(i) |
591 | maze_draw(&maze, rb->screens[i]); | 571 | maze_draw(&maze, rb->screens[i]); |
diff --git a/apps/plugins/mazezam.c b/apps/plugins/mazezam.c index 1eab90e9db..f4b76df374 100644 --- a/apps/plugins/mazezam.c +++ b/apps/plugins/mazezam.c | |||
@@ -27,19 +27,7 @@ | |||
27 | /* Include standard plugin macro */ | 27 | /* Include standard plugin macro */ |
28 | PLUGIN_HEADER | 28 | PLUGIN_HEADER |
29 | 29 | ||
30 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | 30 | #if (CONFIG_KEYPAD == IPOD_3G_PAD) |
31 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | ||
32 | # define MAZEZAM_MENU (BUTTON_SELECT | BUTTON_MENU) | ||
33 | # define MAZEZAM_RIGHT BUTTON_RIGHT | ||
34 | # define MAZEZAM_LEFT BUTTON_LEFT | ||
35 | # define MAZEZAM_UP BUTTON_MENU | ||
36 | # define MAZEZAM_DOWN BUTTON_PLAY | ||
37 | # define MAZEZAM_RIGHT_REPEAT (BUTTON_RIGHT|BUTTON_REPEAT) | ||
38 | # define MAZEZAM_LEFT_REPEAT (BUTTON_LEFT|BUTTON_REPEAT) | ||
39 | # define MAZEZAM_UP_REPEAT (BUTTON_MENU|BUTTON_REPEAT) | ||
40 | # define MAZEZAM_DOWN_REPEAT (BUTTON_PLAY|BUTTON_REPEAT) | ||
41 | |||
42 | #elif (CONFIG_KEYPAD == IPOD_3G_PAD) | ||
43 | # define MAZEZAM_MENU BUTTON_MENU | 31 | # define MAZEZAM_MENU BUTTON_MENU |
44 | # define MAZEZAM_RIGHT BUTTON_RIGHT | 32 | # define MAZEZAM_RIGHT BUTTON_RIGHT |
45 | # define MAZEZAM_LEFT BUTTON_LEFT | 33 | # define MAZEZAM_LEFT BUTTON_LEFT |
@@ -50,32 +38,9 @@ PLUGIN_HEADER | |||
50 | # define MAZEZAM_UP_REPEAT (BUTTON_SCROLL_BACK|BUTTON_REPEAT) | 38 | # define MAZEZAM_UP_REPEAT (BUTTON_SCROLL_BACK|BUTTON_REPEAT) |
51 | # define MAZEZAM_DOWN_REPEAT (BUTTON_SCROLL_FWD|BUTTON_REPEAT) | 39 | # define MAZEZAM_DOWN_REPEAT (BUTTON_SCROLL_FWD|BUTTON_REPEAT) |
52 | 40 | ||
53 | #elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) | ||
54 | # define MAZEZAM_MENU (BUTTON_HOME | BUTTON_REPEAT) | ||
55 | # define MAZEZAM_RIGHT BUTTON_RIGHT | ||
56 | # define MAZEZAM_LEFT BUTTON_LEFT | ||
57 | # define MAZEZAM_UP BUTTON_UP | ||
58 | # define MAZEZAM_DOWN BUTTON_DOWN | ||
59 | # define MAZEZAM_RIGHT_REPEAT (BUTTON_RIGHT|BUTTON_REPEAT) | ||
60 | # define MAZEZAM_LEFT_REPEAT (BUTTON_LEFT|BUTTON_REPEAT) | ||
61 | # define MAZEZAM_UP_REPEAT (BUTTON_UP|BUTTON_REPEAT) | ||
62 | # define MAZEZAM_DOWN_REPEAT (BUTTON_DOWN|BUTTON_REPEAT) | ||
63 | |||
64 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) | ||
65 | # define MAZEZAM_MENU BUTTON_POWER | ||
66 | # define MAZEZAM_SOLVE BUTTON_SELECT | ||
67 | # define MAZEZAM_RIGHT BUTTON_RIGHT | ||
68 | # define MAZEZAM_LEFT BUTTON_LEFT | ||
69 | # define MAZEZAM_UP BUTTON_UP | ||
70 | # define MAZEZAM_DOWN BUTTON_DOWN | ||
71 | # define MAZEZAM_RIGHT_REPEAT (BUTTON_RIGHT|BUTTON_REPEAT) | ||
72 | # define MAZEZAM_LEFT_REPEAT (BUTTON_LEFT|BUTTON_REPEAT) | ||
73 | # define MAZEZAM_UP_REPEAT (BUTTON_UP|BUTTON_REPEAT) | ||
74 | # define MAZEZAM_DOWN_REPEAT (BUTTON_DOWN|BUTTON_REPEAT) | ||
75 | |||
76 | #else | 41 | #else |
77 | # include "lib/pluginlib_actions.h" | 42 | # include "lib/pluginlib_actions.h" |
78 | # define MAZEZAM_MENU PLA_QUIT | 43 | # define MAZEZAM_MENU PLA_CANCEL |
79 | # define MAZEZAM_RIGHT PLA_RIGHT | 44 | # define MAZEZAM_RIGHT PLA_RIGHT |
80 | # define MAZEZAM_LEFT PLA_LEFT | 45 | # define MAZEZAM_LEFT PLA_LEFT |
81 | # define MAZEZAM_UP PLA_UP | 46 | # define MAZEZAM_UP PLA_UP |
@@ -85,7 +50,7 @@ PLUGIN_HEADER | |||
85 | # define MAZEZAM_UP_REPEAT PLA_UP_REPEAT | 50 | # define MAZEZAM_UP_REPEAT PLA_UP_REPEAT |
86 | # define MAZEZAM_DOWN_REPEAT PLA_DOWN_REPEAT | 51 | # define MAZEZAM_DOWN_REPEAT PLA_DOWN_REPEAT |
87 | const struct button_mapping *plugin_contexts[] | 52 | const struct button_mapping *plugin_contexts[] |
88 | = {generic_directions, generic_actions}; | 53 | = { pla_main_ctx }; |
89 | #endif | 54 | #endif |
90 | 55 | ||
91 | /* All the text is here */ | 56 | /* All the text is here */ |
@@ -586,7 +551,8 @@ static void level_loop(struct level_info* li, short* shift, short *x, short *y) | |||
586 | draw_level(li, shift, *x, *y); | 551 | draw_level(li, shift, *x, *y); |
587 | rb->lcd_update(); | 552 | rb->lcd_update(); |
588 | #ifdef __PLUGINLIB_ACTIONS_H__ | 553 | #ifdef __PLUGINLIB_ACTIONS_H__ |
589 | button = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, 2); | 554 | button = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, |
555 | ARRAYLEN(plugin_contexts)); | ||
590 | #else | 556 | #else |
591 | button = rb->button_get(true); | 557 | button = rb->button_get(true); |
592 | #endif | 558 | #endif |
diff --git a/apps/plugins/metronome.c b/apps/plugins/metronome.c index c5d27faf3d..1af62554fb 100644 --- a/apps/plugins/metronome.c +++ b/apps/plugins/metronome.c | |||
@@ -608,62 +608,56 @@ static signed short sound[] = { | |||
608 | }; | 608 | }; |
609 | #endif | 609 | #endif |
610 | 610 | ||
611 | #define METRONOME_QUIT PLA_QUIT | 611 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) \ |
612 | #define METRONOME_VOL_UP PLA_INC | 612 | || (CONFIG_KEYPAD == SANSA_E200_PAD) || (CONFIG_KEYPAD == SAMSUNG_YH_PAD) |
613 | #define METRONOME_VOL_DOWN PLA_DEC | 613 | #define MET_SYNC |
614 | #define METRONOME_VOL_UP_REP PLA_INC_REPEAT | 614 | #endif |
615 | #define METRONOME_VOL_DOWN_REP PLA_DEC_REPEAT | 615 | |
616 | #define METRONOME_QUIT PLA_EXIT | ||
617 | |||
618 | #ifdef HAVE_SCROLLWHEEL | ||
619 | #define METRONOME_VOL_UP PLA_SCROLL_FWD | ||
620 | #define METRONOME_VOL_UP_REP PLA_SCROLL_FWD_REPEAT | ||
621 | #define METRONOME_VOL_DOWN PLA_SCROLL_BACK | ||
622 | #define METRONOME_VOL_DOWN_REP PLA_SCROLL_BACK_REPEAT | ||
623 | #else | ||
624 | #define METRONOME_VOL_UP PLA_UP | ||
625 | #define METRONOME_VOL_DOWN PLA_DOWN | ||
626 | #define METRONOME_VOL_UP_REP PLA_UP_REPEAT | ||
627 | #define METRONOME_VOL_DOWN_REP PLA_DOWN_REPEAT | ||
628 | #endif | ||
616 | #define METRONOME_LEFT PLA_LEFT | 629 | #define METRONOME_LEFT PLA_LEFT |
617 | #define METRONOME_RIGHT PLA_RIGHT | 630 | #define METRONOME_RIGHT PLA_RIGHT |
618 | #define METRONOME_LEFT_REP PLA_LEFT_REPEAT | 631 | #define METRONOME_LEFT_REP PLA_LEFT_REPEAT |
619 | #define METRONOME_RIGHT_REP PLA_RIGHT_REPEAT | 632 | #define METRONOME_RIGHT_REP PLA_RIGHT_REPEAT |
633 | #define METRONOME_TAP PLA_SELECT_REL | ||
634 | #define METRONOME_PAUSE PLA_CANCEL | ||
635 | #define METRONOME_PLAY PLA_SELECT_REPEAT | ||
636 | |||
637 | #if defined(MET_SYNC) | ||
620 | enum { | 638 | enum { |
621 | METRONOME_PLAY_TAP = LAST_PLUGINLIB_ACTION+1, | 639 | METRONOME_SYNC = LAST_PLUGINLIB_ACTION+1, |
622 | #if CONFIG_KEYPAD == ONDIO_PAD | ||
623 | METRONOME_PAUSE, | ||
624 | #endif /* ONDIO_PAD */ | ||
625 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) | ||
626 | METRONOME_SYNC | ||
627 | #endif /* IRIVER_H100_PAD||IRIVER_H300_PAD */ | ||
628 | }; | 640 | }; |
641 | #endif /* IRIVER_H100_PAD||IRIVER_H300_PAD */ | ||
629 | 642 | ||
630 | 643 | ||
631 | #if CONFIG_KEYPAD == ONDIO_PAD | 644 | #define METRONOME_MSG_START "start: press select" |
632 | #define METRONOME_TAP PLA_START | 645 | #define METRONOME_MSG_STOP "start: hold select" |
633 | #define METRONOME_MSG_START "start: mode" | ||
634 | #define METRONOME_MSG_STOP "pause: hold mode" | ||
635 | static const struct button_mapping ondio_action[] = | ||
636 | { | ||
637 | {METRONOME_PLAY_TAP, BUTTON_MENU|BUTTON_REL, BUTTON_MENU }, | ||
638 | {METRONOME_PAUSE, BUTTON_MENU|BUTTON_REPEAT, BUTTON_NONE }, | ||
639 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN) | ||
640 | }; | ||
641 | #else /* !ONDIO_PAD */ | ||
642 | #define METRONOME_TAP PLA_FIRE | ||
643 | #define METRONOME_PLAYPAUSE PLA_START | ||
644 | #define METRONOME_MSG_START "press play" | ||
645 | #define METRONOME_MSG_STOP "press pause" | ||
646 | 646 | ||
647 | #if (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) | 647 | #ifdef MET_SYNC |
648 | #define MET_SYNC | ||
649 | static const struct button_mapping iriver_syncaction[] = | 648 | static const struct button_mapping iriver_syncaction[] = |
650 | { | 649 | { |
651 | {METRONOME_SYNC, BUTTON_REC, BUTTON_NONE }, | 650 | {METRONOME_SYNC, BUTTON_REC, BUTTON_NONE }, |
652 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN) | 651 | LAST_ITEM_IN_LIST__NEXTLIST(CONTEXT_PLUGIN) |
653 | }; | 652 | }; |
654 | #endif /* IRIVER_H100_PAD||IRIVER_H300_PAD */ | 653 | #endif /* IRIVER_H100_PAD||IRIVER_H300_PAD */ |
655 | #endif /* #if CONFIG_KEYPAD == ONDIO_PAD */ | ||
656 | 654 | ||
657 | const struct button_mapping *plugin_contexts[] = | 655 | const struct button_mapping *plugin_contexts[] = |
658 | { | 656 | { |
659 | generic_increase_decrease, | 657 | pla_main_ctx, |
660 | generic_directions, | 658 | #if defined(MET_SYNC) |
661 | #if CONFIG_KEYPAD == ONDIO_PAD | ||
662 | ondio_action, | ||
663 | #elif (CONFIG_KEYPAD == IRIVER_H100_PAD) || (CONFIG_KEYPAD == IRIVER_H300_PAD) | ||
664 | iriver_syncaction, | 659 | iriver_syncaction, |
665 | #endif | 660 | #endif |
666 | generic_actions | ||
667 | }; | 661 | }; |
668 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) | 662 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) |
669 | 663 | ||
@@ -890,6 +884,7 @@ void tap(void) | |||
890 | enum plugin_status plugin_start(const void* parameter) | 884 | enum plugin_status plugin_start(const void* parameter) |
891 | { | 885 | { |
892 | int button; | 886 | int button; |
887 | static int last_button = BUTTON_NONE; | ||
893 | enum plugin_status status; | 888 | enum plugin_status status; |
894 | 889 | ||
895 | (void)parameter; | 890 | (void)parameter; |
@@ -918,7 +913,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
918 | while (true){ | 913 | while (true){ |
919 | reset_tap = true; | 914 | reset_tap = true; |
920 | #if CONFIG_CODEC == SWCODEC | 915 | #if CONFIG_CODEC == SWCODEC |
921 | button = pluginlib_getaction(1,plugin_contexts,PLA_ARRAY_COUNT); | 916 | button = pluginlib_getaction(TIMEOUT_NOBLOCK,plugin_contexts,PLA_ARRAY_COUNT); |
922 | if (need_to_play) | 917 | if (need_to_play) |
923 | { | 918 | { |
924 | need_to_play = false; | 919 | need_to_play = false; |
@@ -936,35 +931,25 @@ enum plugin_status plugin_start(const void* parameter) | |||
936 | status = PLUGIN_OK; | 931 | status = PLUGIN_OK; |
937 | goto metronome_exit; | 932 | goto metronome_exit; |
938 | 933 | ||
939 | #if CONFIG_KEYPAD == ONDIO_PAD | ||
940 | case METRONOME_PLAY_TAP: | ||
941 | if(sound_paused) { | ||
942 | sound_paused = false; | ||
943 | calc_period(); | ||
944 | draw_display(); | ||
945 | } | ||
946 | else | ||
947 | tap(); | ||
948 | break; | ||
949 | |||
950 | case METRONOME_PAUSE: | 934 | case METRONOME_PAUSE: |
951 | if(!sound_paused) { | 935 | if(!sound_paused) |
936 | { | ||
952 | sound_paused = true; | 937 | sound_paused = true; |
953 | draw_display(); | 938 | draw_display(); |
954 | } | 939 | } |
955 | break; | 940 | break; |
956 | 941 | case METRONOME_PLAY: | |
957 | #else | ||
958 | case METRONOME_PLAYPAUSE: | ||
959 | if(sound_paused) | 942 | if(sound_paused) |
943 | { | ||
960 | sound_paused = false; | 944 | sound_paused = false; |
961 | else | 945 | calc_period(); |
962 | sound_paused = true; | 946 | draw_display(); |
963 | calc_period(); | 947 | } |
964 | draw_display(); | 948 | break; |
949 | case METRONOME_TAP: | ||
950 | if (last_button != METRONOME_PLAY) | ||
951 | tap(); | ||
965 | break; | 952 | break; |
966 | #endif /* ONDIO_PAD */ | ||
967 | |||
968 | case METRONOME_VOL_UP: | 953 | case METRONOME_VOL_UP: |
969 | case METRONOME_VOL_UP_REP: | 954 | case METRONOME_VOL_UP_REP: |
970 | change_volume(1); | 955 | change_volume(1); |
@@ -989,12 +974,6 @@ enum plugin_status plugin_start(const void* parameter) | |||
989 | change_bpm(1); | 974 | change_bpm(1); |
990 | break; | 975 | break; |
991 | 976 | ||
992 | #ifdef METRONOME_TAP | ||
993 | case METRONOME_TAP: | ||
994 | tap(); | ||
995 | break; | ||
996 | #endif | ||
997 | |||
998 | #ifdef MET_SYNC | 977 | #ifdef MET_SYNC |
999 | case METRONOME_SYNC: | 978 | case METRONOME_SYNC: |
1000 | minitick = period; | 979 | minitick = period; |
@@ -1012,6 +991,8 @@ enum plugin_status plugin_start(const void* parameter) | |||
1012 | break; | 991 | break; |
1013 | 992 | ||
1014 | } | 993 | } |
994 | if (button) | ||
995 | last_button = button; | ||
1015 | if (reset_tap) { | 996 | if (reset_tap) { |
1016 | tap_count = 0; | 997 | tap_count = 0; |
1017 | } | 998 | } |
diff --git a/apps/plugins/pitch_detector.c b/apps/plugins/pitch_detector.c index 09536a7b18..538e0886fa 100644 --- a/apps/plugins/pitch_detector.c +++ b/apps/plugins/pitch_detector.c | |||
@@ -413,11 +413,9 @@ void save_settings(void) | |||
413 | 413 | ||
414 | /* Keymaps */ | 414 | /* Keymaps */ |
415 | const struct button_mapping* plugin_contexts[]={ | 415 | const struct button_mapping* plugin_contexts[]={ |
416 | generic_actions, | 416 | pla_main_ctx, |
417 | generic_increase_decrease, | ||
418 | generic_directions, | ||
419 | #if NB_SCREENS == 2 | 417 | #if NB_SCREENS == 2 |
420 | remote_directions | 418 | pla_remote_ctx, |
421 | #endif | 419 | #endif |
422 | }; | 420 | }; |
423 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) | 421 | #define PLA_ARRAY_COUNT sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) |
@@ -1040,11 +1038,11 @@ void record_and_get_pitch(void) | |||
1040 | 1038 | ||
1041 | switch(button) | 1039 | switch(button) |
1042 | { | 1040 | { |
1043 | case PLA_QUIT: | 1041 | case PLA_EXIT: |
1044 | quit=true; | 1042 | quit=true; |
1045 | break; | 1043 | break; |
1046 | 1044 | ||
1047 | case PLA_MENU: | 1045 | case PLA_CANCEL: |
1048 | rb->pcm_stop_recording(); | 1046 | rb->pcm_stop_recording(); |
1049 | quit = main_menu() != 0; | 1047 | quit = main_menu() != 0; |
1050 | if(!quit) | 1048 | if(!quit) |
diff --git a/apps/plugins/robotfindskitten.c b/apps/plugins/robotfindskitten.c index 99fc327085..0e5c94ea7e 100644 --- a/apps/plugins/robotfindskitten.c +++ b/apps/plugins/robotfindskitten.c | |||
@@ -469,47 +469,7 @@ static char* messages[] = | |||
469 | 469 | ||
470 | #define RFK_VERSION "v1.4142135.406" | 470 | #define RFK_VERSION "v1.4142135.406" |
471 | 471 | ||
472 | /* Button definitions stolen from maze.c */ | 472 | # define RFK_QUIT PLA_CANCEL |
473 | #if (CONFIG_KEYPAD == IPOD_4G_PAD) || \ | ||
474 | (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | ||
475 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | ||
476 | # undef __PLUGINLIB_ACTIONS_H__ | ||
477 | # define RFK_QUIT (BUTTON_SELECT | BUTTON_MENU) | ||
478 | # define RFK_RIGHT BUTTON_RIGHT | ||
479 | # define RFK_LEFT BUTTON_LEFT | ||
480 | # define RFK_UP BUTTON_MENU | ||
481 | # define RFK_DOWN BUTTON_PLAY | ||
482 | # define RFK_RRIGHT (BUTTON_RIGHT | BUTTON_REPEAT) | ||
483 | # define RFK_RLEFT (BUTTON_LEFT | BUTTON_REPEAT) | ||
484 | # define RFK_RUP (BUTTON_MENU | BUTTON_REPEAT) | ||
485 | # define RFK_RDOWN (BUTTON_PLAY | BUTTON_REPEAT) | ||
486 | |||
487 | #elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) | ||
488 | # undef __PLUGINLIB_ACTIONS_H__ | ||
489 | # define RFK_QUIT (BUTTON_HOME|BUTTON_REPEAT) | ||
490 | # define RFK_RIGHT BUTTON_RIGHT | ||
491 | # define RFK_LEFT BUTTON_LEFT | ||
492 | # define RFK_UP BUTTON_UP | ||
493 | # define RFK_DOWN BUTTON_DOWN | ||
494 | # define RFK_RRIGHT (BUTTON_RIGHT | BUTTON_REPEAT) | ||
495 | # define RFK_RLEFT (BUTTON_LEFT | BUTTON_REPEAT) | ||
496 | # define RFK_RUP (BUTTON_UP | BUTTON_REPEAT) | ||
497 | # define RFK_RDOWN (BUTTON_DOWN | BUTTON_REPEAT) | ||
498 | |||
499 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) | ||
500 | # undef __PLUGINLIB_ACTIONS_H__ | ||
501 | # define RFK_QUIT (BUTTON_REC|BUTTON_REPEAT) | ||
502 | # define RFK_RIGHT BUTTON_RIGHT | ||
503 | # define RFK_LEFT BUTTON_LEFT | ||
504 | # define RFK_UP BUTTON_UP | ||
505 | # define RFK_DOWN BUTTON_DOWN | ||
506 | # define RFK_RRIGHT (BUTTON_PLAY | BUTTON_RIGHT) | ||
507 | # define RFK_RLEFT (BUTTON_PLAY | BUTTON_LEFT) | ||
508 | # define RFK_RUP (BUTTON_PLAY | BUTTON_UP) | ||
509 | # define RFK_RDOWN (BUTTON_PLAY | BUTTON_DOWN) | ||
510 | |||
511 | #else | ||
512 | # define RFK_QUIT PLA_QUIT | ||
513 | # define RFK_RIGHT PLA_RIGHT | 473 | # define RFK_RIGHT PLA_RIGHT |
514 | # define RFK_LEFT PLA_LEFT | 474 | # define RFK_LEFT PLA_LEFT |
515 | # define RFK_UP PLA_UP | 475 | # define RFK_UP PLA_UP |
@@ -519,7 +479,6 @@ static char* messages[] = | |||
519 | # define RFK_RUP PLA_UP_REPEAT | 479 | # define RFK_RUP PLA_UP_REPEAT |
520 | # define RFK_RDOWN PLA_DOWN_REPEAT | 480 | # define RFK_RDOWN PLA_DOWN_REPEAT |
521 | 481 | ||
522 | #endif | ||
523 | /*Constants for our internal representation of the screen.*/ | 482 | /*Constants for our internal representation of the screen.*/ |
524 | #define EMPTY -1 | 483 | #define EMPTY -1 |
525 | #define ROBOT 0 | 484 | #define ROBOT 0 |
@@ -677,9 +636,7 @@ static void play_game() | |||
677 | int old_x = robot.x; | 636 | int old_x = robot.x; |
678 | int old_y = robot.y; | 637 | int old_y = robot.y; |
679 | int input = BUTTON_NONE; | 638 | int input = BUTTON_NONE; |
680 | #ifdef __PLUGINLIB_ACTIONS_H__ | 639 | const struct button_mapping *plugin_contexts[] = {pla_main_ctx}; |
681 | const struct button_mapping *plugin_contexts[] = {generic_directions, generic_actions}; | ||
682 | #endif | ||
683 | 640 | ||
684 | while (input != RFK_QUIT && exit_rfk == false) | 641 | while (input != RFK_QUIT && exit_rfk == false) |
685 | { | 642 | { |
@@ -700,11 +657,8 @@ static void play_game() | |||
700 | old_x = robot.x; | 657 | old_x = robot.x; |
701 | old_y = robot.y; | 658 | old_y = robot.y; |
702 | } | 659 | } |
703 | #ifdef __PLUGINLIB_ACTIONS_H__ | 660 | input = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, |
704 | input = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, 2); | 661 | ARRAYLEN(plugin_contexts)); |
705 | #else | ||
706 | input = rb->button_get(true); | ||
707 | #endif | ||
708 | } | 662 | } |
709 | message("Bye!"); | 663 | message("Bye!"); |
710 | refresh(); | 664 | refresh(); |
diff --git a/apps/plugins/rocklife.c b/apps/plugins/rocklife.c index 35c848de1d..210cffa78d 100644 --- a/apps/plugins/rocklife.c +++ b/apps/plugins/rocklife.c | |||
@@ -66,11 +66,11 @@ | |||
66 | 66 | ||
67 | PLUGIN_HEADER | 67 | PLUGIN_HEADER |
68 | 68 | ||
69 | #define ROCKLIFE_PLAY_PAUSE PLA_FIRE | 69 | #define ROCKLIFE_PLAY_PAUSE PLA_SELECT |
70 | #define ROCKLIFE_INIT PLA_DOWN | 70 | #define ROCKLIFE_INIT PLA_DOWN |
71 | #define ROCKLIFE_NEXT PLA_RIGHT | 71 | #define ROCKLIFE_NEXT PLA_RIGHT |
72 | #define ROCKLIFE_NEXT_REP PLA_RIGHT_REPEAT | 72 | #define ROCKLIFE_NEXT_REP PLA_RIGHT_REPEAT |
73 | #define ROCKLIFE_QUIT PLA_QUIT | 73 | #define ROCKLIFE_QUIT PLA_CANCEL |
74 | #define ROCKLIFE_STATUS PLA_LEFT | 74 | #define ROCKLIFE_STATUS PLA_LEFT |
75 | 75 | ||
76 | #define PATTERN_RANDOM 0 | 76 | #define PATTERN_RANDOM 0 |
@@ -80,7 +80,7 @@ PLUGIN_HEADER | |||
80 | #define PATTERN_GLIDER_GUN 4 | 80 | #define PATTERN_GLIDER_GUN 4 |
81 | 81 | ||
82 | const struct button_mapping *plugin_contexts[] | 82 | const struct button_mapping *plugin_contexts[] |
83 | = {generic_directions, generic_actions}; | 83 | = {pla_main_ctx}; |
84 | 84 | ||
85 | #define GRID_W LCD_WIDTH | 85 | #define GRID_W LCD_WIDTH |
86 | #define GRID_H LCD_HEIGHT | 86 | #define GRID_H LCD_HEIGHT |
@@ -512,7 +512,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
512 | show_grid(pgrid); | 512 | show_grid(pgrid); |
513 | 513 | ||
514 | while(!quit) { | 514 | while(!quit) { |
515 | button = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, 2); | 515 | button = pluginlib_getaction(TIMEOUT_BLOCK, plugin_contexts, ARRAYLEN(plugin_contexts)); |
516 | switch(button) { | 516 | switch(button) { |
517 | case ROCKLIFE_NEXT: | 517 | case ROCKLIFE_NEXT: |
518 | case ROCKLIFE_NEXT_REP: | 518 | case ROCKLIFE_NEXT_REP: |
@@ -537,7 +537,7 @@ enum plugin_status plugin_start(const void* parameter) | |||
537 | /* show new generation */ | 537 | /* show new generation */ |
538 | rb->yield(); | 538 | rb->yield(); |
539 | show_grid(pgrid); | 539 | show_grid(pgrid); |
540 | button = pluginlib_getaction(0, plugin_contexts, 2); | 540 | button = pluginlib_getaction(0, plugin_contexts, ARRAYLEN(plugin_contexts)); |
541 | switch(button) { | 541 | switch(button) { |
542 | case ROCKLIFE_PLAY_PAUSE: | 542 | case ROCKLIFE_PLAY_PAUSE: |
543 | case ROCKLIFE_QUIT: | 543 | case ROCKLIFE_QUIT: |
diff --git a/apps/plugins/test_resize.c b/apps/plugins/test_resize.c index a6a183a54b..8ad8cdee38 100644 --- a/apps/plugins/test_resize.c +++ b/apps/plugins/test_resize.c | |||
@@ -33,7 +33,6 @@ PLUGIN_HEADER | |||
33 | const struct button_mapping *plugin_contexts[] | 33 | const struct button_mapping *plugin_contexts[] |
34 | = {generic_actions, generic_directions}; | 34 | = {generic_actions, generic_directions}; |
35 | 35 | ||
36 | #define NB_ACTION_CONTEXTS sizeof(plugin_contexts)/sizeof(plugin_contexts[0]) | ||
37 | 36 | ||
38 | /* Key assignement */ | 37 | /* Key assignement */ |
39 | #define SIZE_INCREASE PLA_UP | 38 | #define SIZE_INCREASE PLA_UP |
@@ -46,8 +45,8 @@ const struct button_mapping *plugin_contexts[] | |||
46 | #define WIDTH_DECREASE PLA_LEFT | 45 | #define WIDTH_DECREASE PLA_LEFT |
47 | #define WIDTH_DECREASE_REPEAT PLA_LEFT_REPEAT | 46 | #define WIDTH_DECREASE_REPEAT PLA_LEFT_REPEAT |
48 | 47 | ||
49 | #define BUTTON_QUIT PLA_QUIT | 48 | #define BUTTON_QUIT PLA_CANCEL |
50 | #define CHANGE_MODE PLA_MENU | 49 | #define CHANGE_MODE PLA_SELECT |
51 | 50 | ||
52 | #define MAX_OUTPUT_WIDTH LCD_WIDTH | 51 | #define MAX_OUTPUT_WIDTH LCD_WIDTH |
53 | #define MAX_OUTPUT_HEIGHT LCD_HEIGHT | 52 | #define MAX_OUTPUT_HEIGHT LCD_HEIGHT |
@@ -110,8 +109,8 @@ enum plugin_status plugin_start(const void* parameter) | |||
110 | output_bmp.height); | 109 | output_bmp.height); |
111 | 110 | ||
112 | rb->lcd_update(); | 111 | rb->lcd_update(); |
113 | button = pluginlib_getaction(HZ, | 112 | button = pluginlib_getaction(HZ, plugin_contexts, |
114 | plugin_contexts, NB_ACTION_CONTEXTS); | 113 | ARRAYLEN(plugin_contexts)); |
115 | switch (button) { | 114 | switch (button) { |
116 | case BUTTON_QUIT: | 115 | case BUTTON_QUIT: |
117 | return PLUGIN_OK; | 116 | return PLUGIN_OK; |