summaryrefslogtreecommitdiff
path: root/apps
diff options
context:
space:
mode:
authorJonathan Gordon <rockbox@jdgordon.info>2006-12-22 05:19:56 +0000
committerJonathan Gordon <rockbox@jdgordon.info>2006-12-22 05:19:56 +0000
commit7258b5e51a78e4d990bf1225c5893dc4b78d78b7 (patch)
tree94e8ec97b9d08224aa31005d4a295c6d37649717 /apps
parent26b02415cbea9d1247319d4f6d41ea9f95c00e83 (diff)
downloadrockbox-7258b5e51a78e4d990bf1225c5893dc4b78d78b7.tar.gz
rockbox-7258b5e51a78e4d990bf1225c5893dc4b78d78b7.zip
Make AB mode uable on the ipods. In AB mode select is used to set/reset
the markers in he WPS. AB mode must be disblaed ot get into the browser. This can allow the Ondio's to have AB mode but it makes rombox too large. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@11832 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r--apps/action.h6
-rw-r--r--apps/gui/gwps.c42
2 files changed, 27 insertions, 21 deletions
diff --git a/apps/action.h b/apps/action.h
index b0725ddb41..5a8168ea80 100644
--- a/apps/action.h
+++ b/apps/action.h
@@ -111,7 +111,11 @@ enum {
111 ACTION_WPS_CONTEXT, 111 ACTION_WPS_CONTEXT,
112 ACTION_WPS_QUICKSCREEN,/* optional */ 112 ACTION_WPS_QUICKSCREEN,/* optional */
113 ACTION_WPS_MENU, /*this should be the same as ACTION_STD_MENU */ 113 ACTION_WPS_MENU, /*this should be the same as ACTION_STD_MENU */
114 ACTION_WPSAB_SINGLE, /* No targets use this, but leave n just-in-case! */ 114#if 0
115 ACTION_WPSAB_SINGLE, /* This needs to be #defined in
116 the config-<target>.h to one of the ACTION_WPS_ actions
117 so it can be used */
118#endif
115 ACTION_WPS_ABSETA_PREVDIR, /* these should be safe to put together seen as */ 119 ACTION_WPS_ABSETA_PREVDIR, /* these should be safe to put together seen as */
116 ACTION_WPS_ABSETB_NEXTDIR, /* you shouldnt want to change dir in ab-mode */ 120 ACTION_WPS_ABSETB_NEXTDIR, /* you shouldnt want to change dir in ab-mode */
117 ACTION_WPSAB_RESET, 121 ACTION_WPSAB_RESET,
diff --git a/apps/gui/gwps.c b/apps/gui/gwps.c
index ec9a5351ea..7128a958f7 100644
--- a/apps/gui/gwps.c
+++ b/apps/gui/gwps.c
@@ -208,7 +208,28 @@ long gui_wps_show(void)
208 from F1 */ 208 from F1 */
209 if (!audio_status()) 209 if (!audio_status())
210 exit = true; 210 exit = true;
211 211#ifdef ACTION_WPSAB_SINGLE
212 if (!global_settings.party_mode && ab_repeat_mode_enabled())
213 {
214 static int wps_ab_state = 0;
215 if (button == ACTION_WPSAB_SINGLE)
216 {
217 switch (wps_ab_state)
218 {
219 case 0: /* set the A spot */
220 button = ACTION_WPS_ABSETA_PREVDIR;
221 break;
222 case 1: /* set the B spot */
223 button = ACTION_WPS_ABSETB_NEXTDIR;
224 break;
225 case 2:
226 button = ACTION_WPSAB_RESET;
227 break;
228 }
229 wps_ab_state = (wps_ab_state+1) % 3;
230 }
231 }
232#endif
212 switch(button) 233 switch(button)
213 { 234 {
214 case ACTION_WPS_CONTEXT: 235 case ACTION_WPS_CONTEXT:
@@ -507,25 +528,6 @@ long gui_wps_show(void)
507#endif /* HAVE_PITCHSCREEN */ 528#endif /* HAVE_PITCHSCREEN */
508 529
509#ifdef AB_REPEAT_ENABLE 530#ifdef AB_REPEAT_ENABLE
510 case ACTION_WPSAB_SINGLE:
511/* If we are using the menu option to enable ab_repeat mode, don't do anything
512 * when it's disabled */
513#if (AB_REPEAT_ENABLE == 1)
514 if (!ab_repeat_mode_enabled())
515 break;
516#endif
517 if (ab_A_marker_set()) {
518 update_track = true;
519 if (ab_B_marker_set()) {
520 ab_reset_markers();
521 break;
522 }
523 ab_set_B_marker(wps_state.id3->elapsed);
524 ab_jump_to_A_marker();
525 break;
526 }
527 ab_set_A_marker(wps_state.id3->elapsed);
528 break;
529 /* reset A&B markers */ 531 /* reset A&B markers */
530 case ACTION_WPSAB_RESET: 532 case ACTION_WPSAB_RESET:
531 if (ab_repeat_mode_enabled()) 533 if (ab_repeat_mode_enabled())