diff options
author | Christi Scarborough <christi@coraline.org> | 2005-06-26 20:16:26 +0000 |
---|---|---|
committer | Christi Scarborough <christi@coraline.org> | 2005-06-26 20:16:26 +0000 |
commit | 37c3d8b6106a50d8dbfb790807be0ba82b2cd58d (patch) | |
tree | cdd2ab3bc3c74ef6aa783705316f62521748edc6 /apps | |
parent | 59df31244acb02d8ee4947f1ed71392683dfcbcd (diff) | |
download | rockbox-37c3d8b6106a50d8dbfb790807be0ba82b2cd58d.tar.gz rockbox-37c3d8b6106a50d8dbfb790807be0ba82b2cd58d.zip |
Quick menu for iRiver: A long press on the PLAY key in the browser or the WPS will take you into the quick menu screen where certain common settings can be adjusted. Works just the same as F2 menu on Archos.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@6880 a1c6a512-1295-4272-9138-f99709370657
Diffstat (limited to 'apps')
-rw-r--r-- | apps/screens.c | 37 | ||||
-rw-r--r-- | apps/screens.h | 7 | ||||
-rw-r--r-- | apps/tree.c | 9 | ||||
-rw-r--r-- | apps/tree.h | 2 | ||||
-rw-r--r-- | apps/wps.c | 11 | ||||
-rw-r--r-- | apps/wps.h | 5 |
6 files changed, 52 insertions, 19 deletions
diff --git a/apps/screens.c b/apps/screens.c index 81366141bb..6849384cda 100644 --- a/apps/screens.c +++ b/apps/screens.c | |||
@@ -513,7 +513,9 @@ int pitch_screen(void) | |||
513 | else | 513 | else |
514 | return 0; | 514 | return 0; |
515 | } | 515 | } |
516 | #endif | ||
516 | 517 | ||
518 | #if (CONFIG_KEYPAD == RECORDER_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) | ||
517 | bool quick_screen(int context, int button) | 519 | bool quick_screen(int context, int button) |
518 | { | 520 | { |
519 | bool exit = false; | 521 | bool exit = false; |
@@ -535,7 +537,12 @@ bool quick_screen(int context, int button) | |||
535 | 537 | ||
536 | switch(button) | 538 | switch(button) |
537 | { | 539 | { |
538 | case BUTTON_F2: | 540 | #if CONFIG_KEYPAD == RECORDER_PAD |
541 | case SCREENS_QUICK: | ||
542 | #endif | ||
543 | #if CONFIG_KEYPAD == IRIVER_H100_PAD | ||
544 | case SCREENS_QUICK | BUTTON_REPEAT: | ||
545 | #endif | ||
539 | /* Shuffle mode */ | 546 | /* Shuffle mode */ |
540 | lcd_putsxy(0, LCD_HEIGHT/2 - h*2, str(LANG_SHUFFLE)); | 547 | lcd_putsxy(0, LCD_HEIGHT/2 - h*2, str(LANG_SHUFFLE)); |
541 | lcd_putsxy(0, LCD_HEIGHT/2 - h, str(LANG_F2_MODE)); | 548 | lcd_putsxy(0, LCD_HEIGHT/2 - h, str(LANG_F2_MODE)); |
@@ -596,6 +603,7 @@ bool quick_screen(int context, int button) | |||
596 | lcd_putsxy(LCD_WIDTH - w, LCD_HEIGHT/2 - h, str(LANG_F2_MODE)); | 603 | lcd_putsxy(LCD_WIDTH - w, LCD_HEIGHT/2 - h, str(LANG_F2_MODE)); |
597 | lcd_putsxy(LCD_WIDTH - w, LCD_HEIGHT/2, ptr); | 604 | lcd_putsxy(LCD_WIDTH - w, LCD_HEIGHT/2, ptr); |
598 | break; | 605 | break; |
606 | #ifdef BUTTON_F3 | ||
599 | case BUTTON_F3: | 607 | case BUTTON_F3: |
600 | /* Scrollbar */ | 608 | /* Scrollbar */ |
601 | lcd_putsxy(0, LCD_HEIGHT/2 - h*2, str(LANG_F3_SCROLL)); | 609 | lcd_putsxy(0, LCD_HEIGHT/2 - h*2, str(LANG_F3_SCROLL)); |
@@ -620,6 +628,7 @@ bool quick_screen(int context, int button) | |||
620 | lcd_getstringsize(ptr,&w,&h); | 628 | lcd_getstringsize(ptr,&w,&h); |
621 | lcd_putsxy((LCD_WIDTH-w)/2, LCD_HEIGHT - h, ptr); | 629 | lcd_putsxy((LCD_WIDTH-w)/2, LCD_HEIGHT - h, ptr); |
622 | break; | 630 | break; |
631 | #endif | ||
623 | } | 632 | } |
624 | 633 | ||
625 | lcd_bitmap(bitmap_icons_7x8[Icon_FastBackward], | 634 | lcd_bitmap(bitmap_icons_7x8[Icon_FastBackward], |
@@ -641,8 +650,8 @@ bool quick_screen(int context, int button) | |||
641 | key = button | key; | 650 | key = button | key; |
642 | 651 | ||
643 | switch (key) { | 652 | switch (key) { |
644 | case BUTTON_F2 | BUTTON_LEFT: | 653 | case SCREENS_QUICK | BUTTON_LEFT: |
645 | case BUTTON_F2 | BUTTON_LEFT | BUTTON_REPEAT: | 654 | case SCREENS_QUICK | BUTTON_LEFT | BUTTON_REPEAT: |
646 | global_settings.playlist_shuffle = | 655 | global_settings.playlist_shuffle = |
647 | !global_settings.playlist_shuffle; | 656 | !global_settings.playlist_shuffle; |
648 | 657 | ||
@@ -656,22 +665,23 @@ bool quick_screen(int context, int button) | |||
656 | used = true; | 665 | used = true; |
657 | break; | 666 | break; |
658 | 667 | ||
659 | case BUTTON_F2 | BUTTON_DOWN: | 668 | case SCREENS_QUICK | BUTTON_DOWN: |
660 | case BUTTON_F2 | BUTTON_DOWN | BUTTON_REPEAT: | 669 | case SCREENS_QUICK | BUTTON_DOWN | BUTTON_REPEAT: |
661 | global_settings.dirfilter++; | 670 | global_settings.dirfilter++; |
662 | if ( global_settings.dirfilter >= NUM_FILTER_MODES ) | 671 | if ( global_settings.dirfilter >= NUM_FILTER_MODES ) |
663 | global_settings.dirfilter = 0; | 672 | global_settings.dirfilter = 0; |
664 | used = true; | 673 | used = true; |
665 | break; | 674 | break; |
666 | 675 | ||
667 | case BUTTON_F2 | BUTTON_RIGHT: | 676 | case SCREENS_QUICK | BUTTON_RIGHT: |
668 | case BUTTON_F2 | BUTTON_RIGHT | BUTTON_REPEAT: | 677 | case SCREENS_QUICK | BUTTON_RIGHT | BUTTON_REPEAT: |
669 | global_settings.repeat_mode++; | 678 | global_settings.repeat_mode++; |
670 | if ( global_settings.repeat_mode >= NUM_REPEAT_MODES ) | 679 | if ( global_settings.repeat_mode >= NUM_REPEAT_MODES ) |
671 | global_settings.repeat_mode = 0; | 680 | global_settings.repeat_mode = 0; |
672 | used = true; | 681 | used = true; |
673 | break; | 682 | break; |
674 | 683 | ||
684 | #ifdef BUTTON_F3 | ||
675 | case BUTTON_F3 | BUTTON_LEFT: | 685 | case BUTTON_F3 | BUTTON_LEFT: |
676 | case BUTTON_F3 | BUTTON_LEFT | BUTTON_REPEAT: | 686 | case BUTTON_F3 | BUTTON_LEFT | BUTTON_REPEAT: |
677 | global_settings.scrollbar = !global_settings.scrollbar; | 687 | global_settings.scrollbar = !global_settings.scrollbar; |
@@ -679,15 +689,15 @@ bool quick_screen(int context, int button) | |||
679 | break; | 689 | break; |
680 | 690 | ||
681 | case BUTTON_F3 | BUTTON_RIGHT: | 691 | case BUTTON_F3 | BUTTON_RIGHT: |
682 | case BUTTON_F3 | BUTTON_RIGHT | BUTTON_REPEAT: | 692 | // case BUTTON_F3 | BUTTON_RIGHT | BUTTON_REPEAT: |
683 | global_settings.statusbar = !global_settings.statusbar; | 693 | global_settings.statusbar = !global_settings.statusbar; |
684 | used = true; | 694 | used = true; |
685 | break; | 695 | break; |
686 | 696 | ||
687 | case BUTTON_F3 | BUTTON_DOWN: | 697 | case BUTTON_F3 | BUTTON_DOWN: |
688 | case BUTTON_F3 | BUTTON_DOWN | BUTTON_REPEAT: | 698 | // case BUTTON_F3 | BUTTON_DOWN | BUTTON_REPEAT: |
689 | case BUTTON_F3 | BUTTON_UP: | 699 | case BUTTON_F3 | BUTTON_UP: |
690 | case BUTTON_F3 | BUTTON_UP | BUTTON_REPEAT: | 700 | // case BUTTON_F3 | BUTTON_UP | BUTTON_REPEAT: |
691 | global_settings.flip_display = !global_settings.flip_display; | 701 | global_settings.flip_display = !global_settings.flip_display; |
692 | button_set_flip(global_settings.flip_display); | 702 | button_set_flip(global_settings.flip_display); |
693 | lcd_set_flip(global_settings.flip_display); | 703 | lcd_set_flip(global_settings.flip_display); |
@@ -695,7 +705,8 @@ bool quick_screen(int context, int button) | |||
695 | break; | 705 | break; |
696 | 706 | ||
697 | case BUTTON_F3 | BUTTON_REL: | 707 | case BUTTON_F3 | BUTTON_REL: |
698 | case BUTTON_F2 | BUTTON_REL: | 708 | #endif |
709 | case SCREENS_QUICK | BUTTON_REL: | ||
699 | 710 | ||
700 | if( used ) | 711 | if( used ) |
701 | exit = true; | 712 | exit = true; |
@@ -719,12 +730,13 @@ bool quick_screen(int context, int button) | |||
719 | 730 | ||
720 | switch( button ) | 731 | switch( button ) |
721 | { | 732 | { |
722 | case BUTTON_F2: | 733 | case SCREENS_QUICK: |
723 | 734 | ||
724 | if ( oldrepeat != global_settings.repeat_mode ) | 735 | if ( oldrepeat != global_settings.repeat_mode ) |
725 | audio_flush_and_reload_tracks(); | 736 | audio_flush_and_reload_tracks(); |
726 | 737 | ||
727 | break; | 738 | break; |
739 | #ifdef BUTTON_F3 | ||
728 | case BUTTON_F3: | 740 | case BUTTON_F3: |
729 | 741 | ||
730 | if (global_settings.statusbar) | 742 | if (global_settings.statusbar) |
@@ -733,6 +745,7 @@ bool quick_screen(int context, int button) | |||
733 | lcd_setmargins(0, 0); | 745 | lcd_setmargins(0, 0); |
734 | 746 | ||
735 | break; | 747 | break; |
748 | #endif | ||
736 | } | 749 | } |
737 | 750 | ||
738 | lcd_setfont(FONT_UI); | 751 | lcd_setfont(FONT_UI); |
diff --git a/apps/screens.h b/apps/screens.h index 8940bb590c..88eb3bdfec 100644 --- a/apps/screens.h +++ b/apps/screens.h | |||
@@ -33,6 +33,13 @@ int mmc_remove_request(void); | |||
33 | #if CONFIG_KEYPAD == RECORDER_PAD | 33 | #if CONFIG_KEYPAD == RECORDER_PAD |
34 | int pitch_screen(void); | 34 | int pitch_screen(void); |
35 | bool quick_screen(const int, const int); | 35 | bool quick_screen(const int, const int); |
36 | #define SCREENS_QUICK BUTTON_F2 | ||
37 | #endif | ||
38 | |||
39 | #if CONFIG_KEYPAD == IRIVER_H100_PAD | ||
40 | bool quick_screen(const int, const int); | ||
41 | #define SCREENS_QUICK BUTTON_ON | ||
42 | /* Long press already detected so not needed here */ | ||
36 | #endif | 43 | #endif |
37 | 44 | ||
38 | void splash(int ticks, /* how long */ | 45 | void splash(int ticks, /* how long */ |
diff --git a/apps/tree.c b/apps/tree.c index e6b79889c6..be4edf7065 100644 --- a/apps/tree.c +++ b/apps/tree.c | |||
@@ -1066,12 +1066,12 @@ static bool dirbrowse(void) | |||
1066 | } | 1066 | } |
1067 | break; | 1067 | break; |
1068 | 1068 | ||
1069 | #ifdef BUTTON_F2 | 1069 | #ifdef TREE_QUICK |
1070 | case BUTTON_F2: | 1070 | case TREE_QUICK: |
1071 | /* don't enter f2 from plugin browser */ | 1071 | /* don't enter f2 from plugin browser */ |
1072 | if (*tc.dirfilter < NUM_FILTER_MODES) | 1072 | if (*tc.dirfilter < NUM_FILTER_MODES) |
1073 | { | 1073 | { |
1074 | if (quick_screen(curr_context, BUTTON_F2)) | 1074 | if (quick_screen(curr_context, TREE_QUICK)) |
1075 | reload_dir = true; | 1075 | reload_dir = true; |
1076 | restore = true; | 1076 | restore = true; |
1077 | 1077 | ||
@@ -1079,6 +1079,9 @@ static bool dirbrowse(void) | |||
1079 | break; | 1079 | break; |
1080 | } | 1080 | } |
1081 | 1081 | ||
1082 | #endif | ||
1083 | |||
1084 | #ifdef BUTTON_F3 | ||
1082 | case BUTTON_F3: | 1085 | case BUTTON_F3: |
1083 | /* don't enter f3 from plugin browser */ | 1086 | /* don't enter f3 from plugin browser */ |
1084 | if (*tc.dirfilter < NUM_FILTER_MODES) | 1087 | if (*tc.dirfilter < NUM_FILTER_MODES) |
diff --git a/apps/tree.h b/apps/tree.h index cf578fd0bb..2c973cc358 100644 --- a/apps/tree.h +++ b/apps/tree.h | |||
@@ -39,6 +39,7 @@ | |||
39 | #define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) | 39 | #define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) |
40 | #define TREE_CONTEXT2 (BUTTON_ON | BUTTON_SELECT) | 40 | #define TREE_CONTEXT2 (BUTTON_ON | BUTTON_SELECT) |
41 | #define TREE_POWER_BTN BUTTON_ON | 41 | #define TREE_POWER_BTN BUTTON_ON |
42 | #define TREE_QUICK (BUTTON_ON | BUTTON_REPEAT) | ||
42 | 43 | ||
43 | #define TREE_RC_NEXT BUTTON_RC_FF | 44 | #define TREE_RC_NEXT BUTTON_RC_FF |
44 | #define TREE_RC_PREV BUTTON_RC_REW | 45 | #define TREE_RC_PREV BUTTON_RC_REW |
@@ -66,6 +67,7 @@ | |||
66 | #define TREE_CONTEXT (BUTTON_PLAY | BUTTON_REPEAT) | 67 | #define TREE_CONTEXT (BUTTON_PLAY | BUTTON_REPEAT) |
67 | #define TREE_CONTEXT2 (BUTTON_ON | BUTTON_PLAY) | 68 | #define TREE_CONTEXT2 (BUTTON_ON | BUTTON_PLAY) |
68 | #define TREE_POWER_BTN BUTTON_ON | 69 | #define TREE_POWER_BTN BUTTON_ON |
70 | #define TREE_QUICK BUTTON_F2 | ||
69 | 71 | ||
70 | #define TREE_RC_NEXT BUTTON_RC_RIGHT | 72 | #define TREE_RC_NEXT BUTTON_RC_RIGHT |
71 | #define TREE_RC_PREV BUTTON_RC_LEFT | 73 | #define TREE_RC_PREV BUTTON_RC_LEFT |
diff --git a/apps/wps.c b/apps/wps.c index a685d58ba0..f05109872d 100644 --- a/apps/wps.c +++ b/apps/wps.c | |||
@@ -655,28 +655,33 @@ long wps_show(void) | |||
655 | break; | 655 | break; |
656 | #endif | 656 | #endif |
657 | 657 | ||
658 | #if CONFIG_KEYPAD == RECORDER_PAD | 658 | #if (CONFIG_KEYPAD == RECORDER_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) |
659 | /* play settings */ | 659 | /* play settings */ |
660 | case BUTTON_F2: | 660 | case WPS_QUICK: |
661 | if (quick_screen(CONTEXT_WPS, BUTTON_F2)) | 661 | if (quick_screen(CONTEXT_WPS, WPS_QUICK)) |
662 | return SYS_USB_CONNECTED; | 662 | return SYS_USB_CONNECTED; |
663 | restore = true; | 663 | restore = true; |
664 | lastbutton = 0; | ||
664 | break; | 665 | break; |
665 | 666 | ||
666 | /* screen settings */ | 667 | /* screen settings */ |
668 | #ifdef BUTTON_F3 | ||
667 | case BUTTON_F3: | 669 | case BUTTON_F3: |
668 | if (quick_screen(CONTEXT_WPS, BUTTON_F3)) | 670 | if (quick_screen(CONTEXT_WPS, BUTTON_F3)) |
669 | return SYS_USB_CONNECTED; | 671 | return SYS_USB_CONNECTED; |
670 | restore = true; | 672 | restore = true; |
671 | break; | 673 | break; |
674 | #endif | ||
672 | 675 | ||
673 | /* pitch screen */ | 676 | /* pitch screen */ |
677 | #if CONFIG_KEYPAD == RECORDER_PAD | ||
674 | case BUTTON_ON | BUTTON_REPEAT: | 678 | case BUTTON_ON | BUTTON_REPEAT: |
675 | if (2 == pitch_screen()) | 679 | if (2 == pitch_screen()) |
676 | return SYS_USB_CONNECTED; | 680 | return SYS_USB_CONNECTED; |
677 | restore = true; | 681 | restore = true; |
678 | break; | 682 | break; |
679 | #endif | 683 | #endif |
684 | #endif | ||
680 | 685 | ||
681 | /* stop and exit wps */ | 686 | /* stop and exit wps */ |
682 | #ifdef WPS_EXIT | 687 | #ifdef WPS_EXIT |
diff --git a/apps/wps.h b/apps/wps.h index 4f869794b2..94a6b04859 100644 --- a/apps/wps.h +++ b/apps/wps.h | |||
@@ -31,7 +31,8 @@ | |||
31 | #define WPS_REW (BUTTON_LEFT | BUTTON_REPEAT) | 31 | #define WPS_REW (BUTTON_LEFT | BUTTON_REPEAT) |
32 | #define WPS_INCVOL BUTTON_UP | 32 | #define WPS_INCVOL BUTTON_UP |
33 | #define WPS_DECVOL BUTTON_DOWN | 33 | #define WPS_DECVOL BUTTON_DOWN |
34 | #define WPS_PAUSE BUTTON_ON | 34 | #define WPS_PAUSE (BUTTON_ON | BUTTON_REL) |
35 | #define WPS_PAUSE_PRE BUTTON_ON | ||
35 | #define WPS_MENU (BUTTON_MODE | BUTTON_REL) | 36 | #define WPS_MENU (BUTTON_MODE | BUTTON_REL) |
36 | #define WPS_MENU_PRE BUTTON_MODE | 37 | #define WPS_MENU_PRE BUTTON_MODE |
37 | #define WPS_BROWSE (BUTTON_SELECT | BUTTON_REL) | 38 | #define WPS_BROWSE (BUTTON_SELECT | BUTTON_REL) |
@@ -39,6 +40,7 @@ | |||
39 | #define WPS_EXIT BUTTON_OFF | 40 | #define WPS_EXIT BUTTON_OFF |
40 | #define WPS_ID3 (BUTTON_MODE | BUTTON_ON) | 41 | #define WPS_ID3 (BUTTON_MODE | BUTTON_ON) |
41 | #define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) | 42 | #define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) |
43 | #define WPS_QUICK (BUTTON_ON | BUTTON_REPEAT) | ||
42 | 44 | ||
43 | #define WPS_RC_NEXT BUTTON_RC_FF | 45 | #define WPS_RC_NEXT BUTTON_RC_FF |
44 | #define WPS_RC_PREV BUTTON_RC_REW | 46 | #define WPS_RC_PREV BUTTON_RC_REW |
@@ -70,6 +72,7 @@ | |||
70 | #define WPS_KEYLOCK (BUTTON_F1 | BUTTON_DOWN) | 72 | #define WPS_KEYLOCK (BUTTON_F1 | BUTTON_DOWN) |
71 | #define WPS_ID3 (BUTTON_F1 | BUTTON_ON) | 73 | #define WPS_ID3 (BUTTON_F1 | BUTTON_ON) |
72 | #define WPS_CONTEXT (BUTTON_PLAY | BUTTON_REPEAT) | 74 | #define WPS_CONTEXT (BUTTON_PLAY | BUTTON_REPEAT) |
75 | #define WPS_QUICK BUTTON_F2 | ||
73 | 76 | ||
74 | #define WPS_RC_NEXT BUTTON_RC_RIGHT | 77 | #define WPS_RC_NEXT BUTTON_RC_RIGHT |
75 | #define WPS_RC_PREV BUTTON_RC_LEFT | 78 | #define WPS_RC_PREV BUTTON_RC_LEFT |