From a6d0abb602985189b304648532053d7e61d54171 Mon Sep 17 00:00:00 2001 From: Björn Stenberg Date: Fri, 4 Oct 2002 08:48:20 +0000 Subject: Repeat off/all/one toggle. By Hardeep Sidhu. git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2498 a1c6a512-1295-4272-9138-f99709370657 --- apps/settings_menu.c | 23 +++++++++++++++++++---- 1 file changed, 19 insertions(+), 4 deletions(-) (limited to 'apps/settings_menu.c') diff --git a/apps/settings_menu.c b/apps/settings_menu.c index 49e2fe431e..5d130e9cda 100644 --- a/apps/settings_menu.c +++ b/apps/settings_menu.c @@ -109,12 +109,28 @@ static bool peak_meter_menu(void) } #endif -#ifndef HAVE_RECORDER_KEYPAD static bool shuffle(void) { return set_bool( str(LANG_SHUFFLE), &global_settings.playlist_shuffle ); } -#endif + +static bool repeat_mode(void) +{ + bool result; + char* names[] = { str(LANG_OFF), + str(LANG_REPEAT_ALL), + str(LANG_REPEAT_ONE) }; + + int old_repeat = global_settings.repeat_mode; + + result = set_option( str(LANG_REPEAT), &global_settings.repeat_mode, + names, 3, NULL ); + + if (old_repeat != global_settings.repeat_mode) + mpeg_flush_and_reload_tracks(); + + return result; +} static bool play_selected(void) { @@ -299,9 +315,8 @@ static bool playback_settings_menu(void) bool result; struct menu_items items[] = { -#ifndef HAVE_RECORDER_KEYPAD { str(LANG_SHUFFLE), shuffle }, -#endif + { str(LANG_REPEAT), repeat_mode }, { str(LANG_PLAY_SELECTED), play_selected }, { str(LANG_RESUME), resume }, { str(LANG_FFRW_STEP), ff_rewind_min_step }, -- cgit v1.2.3