diff options
| author | Dan Everton <dan@iocaine.org> | 2006-03-24 20:41:56 +0000 |
|---|---|---|
| committer | Dan Everton <dan@iocaine.org> | 2006-03-24 20:41:56 +0000 |
| commit | d946771ebd324561eca59116c723dff18491906c (patch) | |
| tree | 222bbd46b03b7cf39b83f22f0750f5ef54323600 /apps/settings_menu.c | |
| parent | bddf3793ad52e211e9616bf46ee1c434ed9ff0db (diff) | |
| download | rockbox-d946771ebd324561eca59116c723dff18491906c.zip rockbox-d946771ebd324561eca59116c723dff18491906c.tar.gz rockbox-d946771ebd324561eca59116c723dff18491906c.tar.bz2 rockbox-d946771ebd324561eca59116c723dff18491906c.tar.xz | |
Port sleep timer setting screen to new setting screens. Make sleep timer usable from the remote.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@9240 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings_menu.c')
| -rw-r--r-- | apps/settings_menu.c | 32 |
1 files changed, 30 insertions, 2 deletions
diff --git a/apps/settings_menu.c b/apps/settings_menu.c index 70703a2..5141416 100644 --- a/apps/settings_menu.c +++ b/apps/settings_menu.c @@ -36,7 +36,6 @@ #include "backlight.h" #include "playlist.h" /* for playlist_shuffle */ #include "fat.h" /* For dotfile settings */ -#include "sleeptimer.h" #include "powermgmt.h" #include "rtc.h" #include "ata.h" @@ -799,6 +798,35 @@ static bool poweroff_idle_timer(void) INT, names, 15, set_poweroff_timeout); } +static void sleep_timer_formatter(char* buffer, int buffer_size, int value, + const char* unit) +{ + int minutes, hours; + + (void) unit; + + if (value) { + hours = value / 60; + minutes = value - (hours * 60); + snprintf(buffer, buffer_size, "%d:%02d", hours, minutes); + } else { + snprintf(buffer, buffer_size, "%s", str(LANG_OFF)); + } +} + +static void sleep_timer_set(int minutes) +{ + set_sleep_timer(minutes * 60); +} + +static bool sleep_timer(void) +{ + int minutes = get_sleep_timer() / 60; + + return set_int(str(LANG_SLEEP_TIMER), "", UNIT_MIN, &minutes, + &sleep_timer_set, 15, 0, 300, sleep_timer_formatter); +} + static bool scroll_speed(void) { return set_int(str(LANG_SCROLL), "", UNIT_INT, @@ -1864,7 +1892,7 @@ static bool system_settings_menu(void) { ID2P(LANG_TIME_MENU), time_settings_menu }, #endif { ID2P(LANG_POWEROFF_IDLE), poweroff_idle_timer }, - { ID2P(LANG_SLEEP_TIMER), sleeptimer_screen }, + { ID2P(LANG_SLEEP_TIMER), sleep_timer }, #ifdef HAVE_ALARM_MOD { ID2P(LANG_ALARM_MOD_ALARM_MENU), alarm_screen }, #endif |