summaryrefslogtreecommitdiff
path: root/apps/plugins/clock
diff options
context:
space:
mode:
authorThomas Martitz <kugel@rockbox.org>2010-05-20 17:41:28 +0000
committerThomas Martitz <kugel@rockbox.org>2010-05-20 17:41:28 +0000
commit20e9d56ba5507021bdde898f4b0a0eb14f2af861 (patch)
tree20a1ff36d0cc0f530bc7c7648b1bca2f9127a5c8 /apps/plugins/clock
parent97365803d390e44155fc41657bd03a7b121956aa (diff)
downloadrockbox-20e9d56ba5507021bdde898f4b0a0eb14f2af861.tar.gz
rockbox-20e9d56ba5507021bdde898f4b0a0eb14f2af861.zip
S#10387 - Rework pluginlib actions
It changes pluginlib actions to contain only a single and simple context (and other one for remote directional buttons), consisting of 7(9) buttons: up/down/left/right, select OR short select and long select, exit and cancel (plus 2 for scrollwheel targets). This ensures contexts don't clash with other contexts and simplifies them, at the expense of reduced versatility. However, the versatility made it largely unusable due to the great number of targets. This should allow for using pluginlib actions safely for the most simple plugins (e.g. almost all demos). git-svn-id: svn://svn.rockbox.org/rockbox/trunk@26202 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/plugins/clock')
-rw-r--r--apps/plugins/clock/clock.c36
1 files changed, 14 insertions, 22 deletions
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 */
36const struct button_mapping* plugin_contexts[]={ 36const 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)