diff options
| author | Linus Nielsen Feltzing <linus@haxx.se> | 2002-07-30 09:00:11 +0000 |
|---|---|---|
| committer | Linus Nielsen Feltzing <linus@haxx.se> | 2002-07-30 09:00:11 +0000 |
| commit | 217023ff67281a0315c2582e4a83a4460f55b8b5 (patch) | |
| tree | 96c55b664a213331f660b52c8bf8ca7e018e14fd | |
| parent | 17cf49a8c45f10ea22ee6c8fc187a7851aef10a9 (diff) | |
| download | rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.zip rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.tar.gz rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.tar.bz2 rockbox-217023ff67281a0315c2582e4a83a4460f55b8b5.tar.xz | |
show_info() now updates the display continuously
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@1494 a1c6a512-1295-4272-9138-f99709370657
| -rw-r--r-- | apps/main_menu.c | 44 |
1 files changed, 25 insertions, 19 deletions
diff --git a/apps/main_menu.c b/apps/main_menu.c index dfe5b46..556c414 100644 --- a/apps/main_menu.c +++ b/apps/main_menu.c @@ -137,33 +137,39 @@ void show_info(void) char s[32]; int buflen = ((mp3end - mp3buf) * 100) / 0x100000; int integer, decimal; - - lcd_clear_display(); - lcd_puts(0, 0, "Rockbox info:"); - /* TODO: add disk size/usage info, battery charge etc here? */ - - integer = buflen / 100; - decimal = buflen % 100; + bool done = false; + + while(!done) + { + lcd_clear_display(); + lcd_puts(0, 0, "Rockbox info:"); + + integer = buflen / 100; + decimal = buflen % 100; #ifdef HAVE_LCD_CHARCELLS - snprintf(s, sizeof(s), "Buf: %d.%02dMb", integer, decimal); - lcd_puts(0, 0, s); + snprintf(s, sizeof(s), "Buf: %d.%02dMb", integer, decimal); + lcd_puts(0, 0, s); #else - snprintf(s, sizeof(s), "Buffer: %d.%02d Mb", integer, decimal); - lcd_puts(0, 2, s); + snprintf(s, sizeof(s), "Buffer: %d.%02d Mb", integer, decimal); + lcd_puts(0, 2, s); #endif - + #ifdef HAVE_LCD_CHARCELLS - snprintf(s, sizeof(s), "Batt: %d%%", battery_level()); - lcd_puts(0, 1, s); + snprintf(s, sizeof(s), "Batt: %d%%", battery_level()); + lcd_puts(0, 1, s); #else - snprintf(s, sizeof(s), "Battery: %d%%", battery_level()); - lcd_puts(0, 3, s); + snprintf(s, sizeof(s), "Battery: %d%%", battery_level()); + lcd_puts(0, 3, s); #endif - lcd_update(); + lcd_update(); - /* Wait for a key to be pushed */ - while(button_get(true) & BUTTON_REL); + sleep(HZ/2); + + /* Wait for a key to be pushed */ + if(button_get(false) & ~BUTTON_REL) + done = true; + } } void main_menu(void) |