diff options
author | Eric Linenberg <elinenbe@umich.edu> | 2002-09-05 04:42:12 +0000 |
---|---|---|
committer | Eric Linenberg <elinenbe@umich.edu> | 2002-09-05 04:42:12 +0000 |
commit | c5b645b795746c9b5c404528348394426432528e (patch) | |
tree | 7fbc3a0fc6d7a05374768dea45c3a77f673cb585 /apps/settings.c | |
parent | e4a27617c078b527ab5aaf7f53f058b4929baedb (diff) | |
download | rockbox-c5b645b795746c9b5c404528348394426432528e.tar.gz rockbox-c5b645b795746c9b5c404528348394426432528e.zip |
Chris Pimlott's menu patch -- reorgainzes the menus
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@2178 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps/settings.c')
-rw-r--r-- | apps/settings.c | 66 |
1 files changed, 9 insertions, 57 deletions
diff --git a/apps/settings.c b/apps/settings.c index 1a020c305d..7ebe612ce7 100644 --- a/apps/settings.c +++ b/apps/settings.c | |||
@@ -524,64 +524,15 @@ void settings_display(void) | |||
524 | 524 | ||
525 | void set_bool(char* string, bool* variable ) | 525 | void set_bool(char* string, bool* variable ) |
526 | { | 526 | { |
527 | bool done = false; | 527 | set_bool_options(string, variable, "yes", "no "); |
528 | int button; | 528 | } |
529 | |||
530 | #ifdef HAVE_LCD_BITMAP | ||
531 | if(global_settings.statusbar) | ||
532 | lcd_setmargins(0, STATUSBAR_HEIGHT); | ||
533 | else | ||
534 | lcd_setmargins(0, 0); | ||
535 | #endif | ||
536 | lcd_clear_display(); | ||
537 | lcd_puts_scroll(0, 0, string); | ||
538 | |||
539 | while ( !done ) { | ||
540 | lcd_puts(0, 1, *variable ? "on " : "off"); | ||
541 | #ifdef HAVE_LCD_BITMAP | ||
542 | status_draw(); | ||
543 | #endif | ||
544 | lcd_update(); | ||
545 | |||
546 | button = button_get_w_tmo(HZ/2); | ||
547 | switch ( button ) { | ||
548 | #ifdef HAVE_RECORDER_KEYPAD | ||
549 | case BUTTON_LEFT: | ||
550 | #else | ||
551 | case BUTTON_STOP: | ||
552 | case BUTTON_MENU: | ||
553 | #endif | ||
554 | done = true; | ||
555 | break; | ||
556 | |||
557 | #ifdef HAVE_RECORDER_KEYPAD | ||
558 | case BUTTON_UP: | ||
559 | case BUTTON_DOWN: | ||
560 | #else | ||
561 | case BUTTON_LEFT: | ||
562 | case BUTTON_RIGHT: | ||
563 | #endif | ||
564 | if(!(button & BUTTON_REL)) | ||
565 | *variable = !*variable; | ||
566 | break; | ||
567 | 529 | ||
568 | #ifdef HAVE_RECORDER_KEYPAD | 530 | void set_bool_options(char* string, bool* variable, char* yes_str, char* no_str ) |
569 | case BUTTON_F3: | 531 | { |
570 | #ifdef HAVE_LCD_BITMAP | 532 | char* names[] = { yes_str, no_str }; |
571 | global_settings.statusbar = !global_settings.statusbar; | 533 | int value = !*variable; |
572 | settings_save(); | 534 | set_option(string, &value, names, 2); |
573 | if(global_settings.statusbar) | 535 | *variable = !value; |
574 | lcd_setmargins(0, STATUSBAR_HEIGHT); | ||
575 | else | ||
576 | lcd_setmargins(0, 0); | ||
577 | lcd_clear_display(); | ||
578 | lcd_puts_scroll(0, 0, string); | ||
579 | #endif | ||
580 | break; | ||
581 | #endif | ||
582 | } | ||
583 | } | ||
584 | lcd_stop_scroll(); | ||
585 | } | 536 | } |
586 | 537 | ||
587 | void set_int(char* string, | 538 | void set_int(char* string, |
@@ -600,6 +551,7 @@ void set_int(char* string, | |||
600 | else | 551 | else |
601 | lcd_setmargins(0, 0); | 552 | lcd_setmargins(0, 0); |
602 | #endif | 553 | #endif |
554 | |||
603 | lcd_clear_display(); | 555 | lcd_clear_display(); |
604 | lcd_puts_scroll(0, 0, string); | 556 | lcd_puts_scroll(0, 0, string); |
605 | 557 | ||