summaryrefslogtreecommitdiff
path: root/apps/settings_menu.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/settings_menu.c')
-rw-r--r--apps/settings_menu.c180
1 files changed, 17 insertions, 163 deletions
diff --git a/apps/settings_menu.c b/apps/settings_menu.c
index 00c5dfb..a27f4fe 100644
--- a/apps/settings_menu.c
+++ b/apps/settings_menu.c
@@ -33,190 +33,44 @@
#include "backlight.h"
#include "playlist.h" /* for playlist_shuffle */
-enum { Shuffle, Backlight, Scroll, Wps, numsettings };
-
static void shuffle(void)
{
- bool done = false;
-
- lcd_clear_display();
- lcd_puts(0,0,"[Shuffle]");
-
- while ( !done ) {
- lcd_puts(0, 1, playlist_shuffle ? "on " : "off");
- lcd_update();
-
- switch ( button_get(true) ) {
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_LEFT:
-#else
- case BUTTON_STOP:
-#endif
- done = true;
- break;
+ set_bool( "[Shuffle]", &global_settings.playlist_shuffle );
+}
- default:
- playlist_shuffle = !playlist_shuffle;
- break;
- }
- }
+static void mp3_filter(void)
+{
+ set_bool( "[MP3/M3U filter]", &global_settings.mp3filter );
}
static void backlight_timer(void)
{
- bool done = false;
- int timer = global_settings.backlight;
- char str[16];
-
- lcd_clear_display();
- lcd_puts_scroll(0,0,"Backlight");
-
- while (!done) {
- snprintf(str,sizeof str,"Timeout: %d s ", timer);
- lcd_puts(0,1,str);
- lcd_update();
- switch( button_get(true) ) {
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_UP:
-#else
- case BUTTON_RIGHT:
-#endif
- timer++;
- if(timer > 60)
- timer = 60;
- break;
-
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_DOWN:
-#else
- case BUTTON_LEFT:
-#endif
- timer--;
- if ( timer < 0 )
- timer = 0;
- break;
-
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_LEFT:
-#else
- case BUTTON_STOP:
- case BUTTON_MENU:
-#endif
- done = true;
- global_settings.backlight = timer;
- backlight_on();
- break;
- }
- }
+ set_int( "[Backlight]", "s", &global_settings.backlight,
+ backlight_time, 1, 0, 60 );
+ backlight_on();
}
static void scroll_speed(void)
{
- bool done=false;
- int speed=10;
- char str[16];
-
- lcd_clear_display();
- lcd_puts_scroll(0,0,"Scroll speed indicator");
-
- while (!done) {
- snprintf(str,sizeof str,"Speed: %d ",speed);
- lcd_puts(0,1,str);
- lcd_update();
- lcd_scroll_speed(speed);
- switch( button_get(true) ) {
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_UP:
-#else
- case BUTTON_RIGHT:
-#endif
- speed++;
- break;
-
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_DOWN:
-#else
- case BUTTON_LEFT:
-#endif
- speed--;
- if ( speed < 1 )
- speed = 1;
- break;
-
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_LEFT:
-#else
- case BUTTON_STOP:
- case BUTTON_MENU:
-#endif
- done = true;
- lcd_stop_scroll();
- break;
- }
- }
+ set_int("Scroll speed indicator...", "", &global_settings.scroll_speed,
+ &lcd_scroll_speed, 1, 1, 20 );
}
-
-void wps_set(void)
+static void wps_set(void)
{
- /* Simple menu for selecting what the display shows during playback */
-
- bool done = false;
- int itemp = 0;
char* names[] = { "Id3 ", "File ", "Parse" };
-
- lcd_clear_display();
- lcd_puts(0,0,"[Display]");
-
- while (!done) {
- lcd_puts(0,1,names[itemp]);
- lcd_update();
-
- switch ( button_get(true) ) {
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_DOWN:
-#else
- case BUTTON_LEFT:
-#endif
- itemp--;
- if (itemp <= 0)
- itemp = 0;
- break;
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_UP:
-#else
- case BUTTON_RIGHT:
-#endif
- itemp++;
- if (itemp >= 2)
- itemp = 2;
- break;
-#ifdef HAVE_RECORDER_KEYPAD
- case BUTTON_LEFT:
-#else
- case BUTTON_STOP:
- case BUTTON_MENU:
-#endif
- done = true;
- break;
- default:
- itemp = 0;
- break;
- }
- }
-
-
- global_settings.wps_display = itemp; //savedsettings[itemp];
+ set_option("[WPS display]", &global_settings.wps_display, names, 3 );
}
void settings_menu(void)
{
int m;
struct menu_items items[] = {
- { Shuffle, "Shuffle", shuffle },
- { Backlight, "Backlight Timer", backlight_timer },
- { Scroll, "Scroll speed", scroll_speed },
- { Wps, "While Playing", wps_set },
+ { "Shuffle", shuffle },
+ { "MP3/M3U filter", mp3_filter },
+ { "Backlight Timer", backlight_timer },
+ { "Scroll speed", scroll_speed },
+ { "While Playing", wps_set },
};
m=menu_init( items, sizeof items / sizeof(struct menu_items) );