diff options
author | Jean-Louis Biasini <jlbiasini@gmail.com> | 2012-02-21 15:04:21 +0100 |
---|---|---|
committer | Thomas Martitz <kugel@rockbox.org> | 2012-02-24 13:20:24 +0100 |
commit | a60bc256ab78482812d6900d08c59d4948e019a2 (patch) | |
tree | 2ede3b768525d437c646f9029b286c87367e995c /apps/plugins | |
parent | 7c215b1be86a1ceb0063b976c3521d908f35c9fe (diff) | |
download | rockbox-a60bc256ab78482812d6900d08c59d4948e019a2.tar.gz rockbox-a60bc256ab78482812d6900d08c59d4948e019a2.zip |
fireworks's plugin PLA integration
1) this patch replace all keymaps with PLA ones. It also clean some optionnal
compiling that are not needed anymore througt PLA
2) it also add an alternative exit button (PLA_EXIT or PLA_CANCEL)
Note: no patch for manual here as there isn't a manual for fireworks yet
Change-Id: I460096a018ce8d3890425f8b6b98194c4e3f9d76
Reviewed-on: http://gerrit.rockbox.org/114
Reviewed-by: Thomas Martitz <kugel@rockbox.org>
Tested-by: Thomas Martitz <kugel@rockbox.org>
Diffstat (limited to 'apps/plugins')
-rw-r--r-- | apps/plugins/fireworks.c | 131 |
1 files changed, 13 insertions, 118 deletions
diff --git a/apps/plugins/fireworks.c b/apps/plugins/fireworks.c index 52b11b7079..c49c4fd6bb 100644 --- a/apps/plugins/fireworks.c +++ b/apps/plugins/fireworks.c | |||
@@ -21,8 +21,10 @@ | |||
21 | #include "plugin.h" | 21 | #include "plugin.h" |
22 | #include "lib/helper.h" | 22 | #include "lib/helper.h" |
23 | #include "lib/playback_control.h" | 23 | #include "lib/playback_control.h" |
24 | #include "lib/pluginlib_actions.h" | ||
24 | 25 | ||
25 | 26 | /* this set the context to use with PLA */ | |
27 | static const struct button_mapping *plugin_contexts[] = { pla_main_ctx }; | ||
26 | 28 | ||
27 | /*** | 29 | /*** |
28 | * FIREWORKS.C by ZAKK ROBERTS | 30 | * FIREWORKS.C by ZAKK ROBERTS |
@@ -31,121 +33,11 @@ | |||
31 | * Currently disabled for Archos Recorder - runs too slow. | 33 | * Currently disabled for Archos Recorder - runs too slow. |
32 | ***/ | 34 | ***/ |
33 | 35 | ||
34 | /* All sorts of keymappings.. */ | 36 | /* We use PLA */ |
35 | #if (CONFIG_KEYPAD == IRIVER_H300_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) | 37 | #define BTN_MENU PLA_EXIT |
36 | #define BTN_MENU BUTTON_OFF | 38 | #define BTN_MENU2 PLA_CANCEL |
37 | #define BTN_FIRE BUTTON_SELECT | 39 | #define BTN_FIRE PLA_SELECT |
38 | 40 | #define BTN_FIRE_REPEAT PLA_SELECT_REPEAT | |
39 | #elif (CONFIG_KEYPAD == IPOD_4G_PAD) || (CONFIG_KEYPAD == IPOD_3G_PAD) || \ | ||
40 | (CONFIG_KEYPAD == IPOD_1G2G_PAD) | ||
41 | #define BTN_MENU BUTTON_MENU | ||
42 | #define BTN_FIRE BUTTON_SELECT | ||
43 | |||
44 | #elif (CONFIG_KEYPAD == RECORDER_PAD) | ||
45 | #define BTN_MENU BUTTON_OFF | ||
46 | #define BTN_FIRE BUTTON_PLAY | ||
47 | |||
48 | #elif (CONFIG_KEYPAD == ARCHOS_AV300_PAD) | ||
49 | #define BTN_MENU BUTTON_OFF | ||
50 | #define BTN_FIRE BUTTON_SELECT | ||
51 | |||
52 | #elif (CONFIG_KEYPAD == ONDIO_PAD) | ||
53 | #define BTN_MENU BUTTON_MENU | ||
54 | #define BTN_FIRE BUTTON_UP | ||
55 | |||
56 | #elif (CONFIG_KEYPAD == IAUDIO_X5M5_PAD) | ||
57 | #define BTN_MENU BUTTON_POWER | ||
58 | #define BTN_FIRE BUTTON_SELECT | ||
59 | |||
60 | #elif (CONFIG_KEYPAD == IRIVER_IFP7XX_PAD) | ||
61 | #define BTN_MENU BUTTON_MODE | ||
62 | #define BTN_FIRE BUTTON_SELECT | ||
63 | |||
64 | #elif (CONFIG_KEYPAD == GIGABEAT_PAD) || \ | ||
65 | (CONFIG_KEYPAD == GIGABEAT_S_PAD) || \ | ||
66 | (CONFIG_KEYPAD == MROBE100_PAD) || \ | ||
67 | (CONFIG_KEYPAD == SAMSUNG_YPR0_PAD) | ||
68 | #define BTN_MENU BUTTON_MENU | ||
69 | #define BTN_FIRE BUTTON_SELECT | ||
70 | |||
71 | #elif (CONFIG_KEYPAD == SANSA_E200_PAD) || \ | ||
72 | (CONFIG_KEYPAD == SANSA_C200_PAD) || \ | ||
73 | (CONFIG_KEYPAD == SANSA_CONNECT_PAD) | ||
74 | #define BTN_MENU BUTTON_POWER | ||
75 | #define BTN_FIRE BUTTON_SELECT | ||
76 | |||
77 | #elif (CONFIG_KEYPAD == SANSA_FUZE_PAD) | ||
78 | #define BTN_MENU (BUTTON_HOME|BUTTON_REPEAT) | ||
79 | #define BTN_FIRE BUTTON_SELECT | ||
80 | |||
81 | #elif (CONFIG_KEYPAD == IRIVER_H10_PAD) | ||
82 | #define BTN_MENU BUTTON_POWER | ||
83 | #define BTN_FIRE BUTTON_PLAY | ||
84 | |||
85 | #elif CONFIG_KEYPAD == IAUDIO_M3_PAD | ||
86 | #define BTN_MENU BUTTON_RC_REC | ||
87 | #define BTN_FIRE BUTTON_RC_PLAY | ||
88 | |||
89 | #elif (CONFIG_KEYPAD == COWON_D2_PAD) | ||
90 | #define BTN_MENU (BUTTON_MENU|BUTTON_REL) | ||
91 | |||
92 | #elif CONFIG_KEYPAD == IAUDIO67_PAD | ||
93 | #define BTN_MENU BUTTON_MENU | ||
94 | #define BTN_FIRE BUTTON_PLAY | ||
95 | |||
96 | #elif CONFIG_KEYPAD == CREATIVEZVM_PAD | ||
97 | #define BTN_MENU BUTTON_MENU | ||
98 | #define BTN_FIRE BUTTON_SELECT | ||
99 | |||
100 | #elif CONFIG_KEYPAD == PHILIPS_HDD1630_PAD | ||
101 | #define BTN_MENU BUTTON_MENU | ||
102 | #define BTN_FIRE BUTTON_SELECT | ||
103 | |||
104 | #elif CONFIG_KEYPAD == PHILIPS_HDD6330_PAD | ||
105 | #define BTN_MENU BUTTON_MENU | ||
106 | #define BTN_FIRE BUTTON_PLAY | ||
107 | |||
108 | #elif CONFIG_KEYPAD == PHILIPS_SA9200_PAD | ||
109 | #define BTN_MENU BUTTON_MENU | ||
110 | #define BTN_FIRE BUTTON_PLAY | ||
111 | |||
112 | #elif (CONFIG_KEYPAD == ONDAVX747_PAD) | ||
113 | #define BTN_MENU (BUTTON_MENU|BUTTON_REL) | ||
114 | |||
115 | #elif (CONFIG_KEYPAD == SAMSUNG_YH_PAD) | ||
116 | #define BTN_MENU BUTTON_LEFT | ||
117 | #define BTN_FIRE BUTTON_PLAY | ||
118 | |||
119 | #elif (CONFIG_KEYPAD == PBELL_VIBE500_PAD) | ||
120 | #define BTN_MENU BUTTON_MENU | ||
121 | #define BTN_FIRE BUTTON_OK | ||
122 | |||
123 | #elif (CONFIG_KEYPAD == MPIO_HD200_PAD) | ||
124 | #define BTN_MENU BUTTON_REC | ||
125 | #define BTN_FIRE BUTTON_PLAY | ||
126 | |||
127 | #elif (CONFIG_KEYPAD == MPIO_HD300_PAD) | ||
128 | #define BTN_MENU BUTTON_MENU | ||
129 | #define BTN_FIRE BUTTON_PLAY | ||
130 | |||
131 | #elif (CONFIG_KEYPAD == SANSA_FUZEPLUS_PAD) | ||
132 | #define BTN_MENU BUTTON_SELECT | ||
133 | #define BTN_FIRE BUTTON_PLAYPAUSE | ||
134 | |||
135 | #elif defined(HAVE_TOUCHSCREEN) | ||
136 | /* This is a touchscreen target */ | ||
137 | #else | ||
138 | #error No keymap defined! | ||
139 | #endif | ||
140 | |||
141 | #ifdef HAVE_TOUCHSCREEN | ||
142 | #ifndef BTN_MENU | ||
143 | #define BTN_MENU (BUTTON_TOPLEFT|BUTTON_REL) | ||
144 | #endif | ||
145 | #ifndef BTN_FIRE | ||
146 | #define BTN_FIRE BUTTON_CENTER | ||
147 | #endif | ||
148 | #endif | ||
149 | 41 | ||
150 | /* The lowdown on source terminology: | 42 | /* The lowdown on source terminology: |
151 | * a ROCKET is launched from the LCD bottom. | 43 | * a ROCKET is launched from the LCD bottom. |
@@ -609,15 +501,18 @@ enum plugin_status plugin_start(const void* parameter) | |||
609 | 501 | ||
610 | rb->lcd_update(); | 502 | rb->lcd_update(); |
611 | 503 | ||
612 | button = rb->button_get_w_tmo(HZ/fps_values[frames_per_second]); | 504 | button = pluginlib_getaction(HZ/fps_values[frames_per_second], plugin_contexts, |
505 | ARRAYLEN(plugin_contexts)); | ||
506 | |||
613 | switch(button) | 507 | switch(button) |
614 | { | 508 | { |
615 | case BTN_MENU: /* back to config menu */ | 509 | case BTN_MENU: /* back to config menu */ |
510 | case BTN_MENU2: | ||
616 | fireworks_menu(); | 511 | fireworks_menu(); |
617 | break; | 512 | break; |
618 | 513 | ||
619 | case BTN_FIRE: /* fire off rockets manually */ | 514 | case BTN_FIRE: /* fire off rockets manually */ |
620 | case BTN_FIRE|BUTTON_REPEAT: | 515 | case BTN_FIRE_REPEAT: |
621 | init_rocket(thisrocket); | 516 | init_rocket(thisrocket); |
622 | if(++thisrocket == MAX_ROCKETS) | 517 | if(++thisrocket == MAX_ROCKETS) |
623 | thisrocket=0; | 518 | thisrocket=0; |