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.zip rockbox-37c3d8b6106a50d8dbfb790807be0ba82b2cd58d.tar.gz rockbox-37c3d8b6106a50d8dbfb790807be0ba82b2cd58d.tar.bz2 rockbox-37c3d8b6106a50d8dbfb790807be0ba82b2cd58d.tar.xz | |
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 8136614..6849384 100644 --- a/apps/screens.c +++ b/apps/screens.c @@ -513,7 +513,9 @@ int pitch_screen(void) else return 0; } +#endif +#if (CONFIG_KEYPAD == RECORDER_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) bool quick_screen(int context, int button) { bool exit = false; @@ -535,7 +537,12 @@ bool quick_screen(int context, int button) switch(button) { - case BUTTON_F2: +#if CONFIG_KEYPAD == RECORDER_PAD + case SCREENS_QUICK: +#endif +#if CONFIG_KEYPAD == IRIVER_H100_PAD + case SCREENS_QUICK | BUTTON_REPEAT: +#endif /* Shuffle mode */ lcd_putsxy(0, LCD_HEIGHT/2 - h*2, str(LANG_SHUFFLE)); lcd_putsxy(0, LCD_HEIGHT/2 - h, str(LANG_F2_MODE)); @@ -596,6 +603,7 @@ bool quick_screen(int context, int button) lcd_putsxy(LCD_WIDTH - w, LCD_HEIGHT/2 - h, str(LANG_F2_MODE)); lcd_putsxy(LCD_WIDTH - w, LCD_HEIGHT/2, ptr); break; +#ifdef BUTTON_F3 case BUTTON_F3: /* Scrollbar */ lcd_putsxy(0, LCD_HEIGHT/2 - h*2, str(LANG_F3_SCROLL)); @@ -620,6 +628,7 @@ bool quick_screen(int context, int button) lcd_getstringsize(ptr,&w,&h); lcd_putsxy((LCD_WIDTH-w)/2, LCD_HEIGHT - h, ptr); break; +#endif } lcd_bitmap(bitmap_icons_7x8[Icon_FastBackward], @@ -641,8 +650,8 @@ bool quick_screen(int context, int button) key = button | key; switch (key) { - case BUTTON_F2 | BUTTON_LEFT: - case BUTTON_F2 | BUTTON_LEFT | BUTTON_REPEAT: + case SCREENS_QUICK | BUTTON_LEFT: + case SCREENS_QUICK | BUTTON_LEFT | BUTTON_REPEAT: global_settings.playlist_shuffle = !global_settings.playlist_shuffle; @@ -656,22 +665,23 @@ bool quick_screen(int context, int button) used = true; break; - case BUTTON_F2 | BUTTON_DOWN: - case BUTTON_F2 | BUTTON_DOWN | BUTTON_REPEAT: + case SCREENS_QUICK | BUTTON_DOWN: + case SCREENS_QUICK | BUTTON_DOWN | BUTTON_REPEAT: global_settings.dirfilter++; if ( global_settings.dirfilter >= NUM_FILTER_MODES ) global_settings.dirfilter = 0; used = true; break; - case BUTTON_F2 | BUTTON_RIGHT: - case BUTTON_F2 | BUTTON_RIGHT | BUTTON_REPEAT: + case SCREENS_QUICK | BUTTON_RIGHT: + case SCREENS_QUICK | BUTTON_RIGHT | BUTTON_REPEAT: global_settings.repeat_mode++; if ( global_settings.repeat_mode >= NUM_REPEAT_MODES ) global_settings.repeat_mode = 0; used = true; break; +#ifdef BUTTON_F3 case BUTTON_F3 | BUTTON_LEFT: case BUTTON_F3 | BUTTON_LEFT | BUTTON_REPEAT: global_settings.scrollbar = !global_settings.scrollbar; @@ -679,15 +689,15 @@ bool quick_screen(int context, int button) break; case BUTTON_F3 | BUTTON_RIGHT: - case BUTTON_F3 | BUTTON_RIGHT | BUTTON_REPEAT: +// case BUTTON_F3 | BUTTON_RIGHT | BUTTON_REPEAT: global_settings.statusbar = !global_settings.statusbar; used = true; break; case BUTTON_F3 | BUTTON_DOWN: - case BUTTON_F3 | BUTTON_DOWN | BUTTON_REPEAT: +// case BUTTON_F3 | BUTTON_DOWN | BUTTON_REPEAT: case BUTTON_F3 | BUTTON_UP: - case BUTTON_F3 | BUTTON_UP | BUTTON_REPEAT: +// case BUTTON_F3 | BUTTON_UP | BUTTON_REPEAT: global_settings.flip_display = !global_settings.flip_display; button_set_flip(global_settings.flip_display); lcd_set_flip(global_settings.flip_display); @@ -695,7 +705,8 @@ bool quick_screen(int context, int button) break; case BUTTON_F3 | BUTTON_REL: - case BUTTON_F2 | BUTTON_REL: +#endif + case SCREENS_QUICK | BUTTON_REL: if( used ) exit = true; @@ -719,12 +730,13 @@ bool quick_screen(int context, int button) switch( button ) { - case BUTTON_F2: + case SCREENS_QUICK: if ( oldrepeat != global_settings.repeat_mode ) audio_flush_and_reload_tracks(); break; +#ifdef BUTTON_F3 case BUTTON_F3: if (global_settings.statusbar) @@ -733,6 +745,7 @@ bool quick_screen(int context, int button) lcd_setmargins(0, 0); break; +#endif } lcd_setfont(FONT_UI); diff --git a/apps/screens.h b/apps/screens.h index 8940bb5..88eb3bd 100644 --- a/apps/screens.h +++ b/apps/screens.h @@ -33,6 +33,13 @@ int mmc_remove_request(void); #if CONFIG_KEYPAD == RECORDER_PAD int pitch_screen(void); bool quick_screen(const int, const int); +#define SCREENS_QUICK BUTTON_F2 +#endif + +#if CONFIG_KEYPAD == IRIVER_H100_PAD +bool quick_screen(const int, const int); +#define SCREENS_QUICK BUTTON_ON + /* Long press already detected so not needed here */ #endif void splash(int ticks, /* how long */ diff --git a/apps/tree.c b/apps/tree.c index e6b7988..be4edf7 100644 --- a/apps/tree.c +++ b/apps/tree.c @@ -1066,12 +1066,12 @@ static bool dirbrowse(void) } break; -#ifdef BUTTON_F2 - case BUTTON_F2: +#ifdef TREE_QUICK + case TREE_QUICK: /* don't enter f2 from plugin browser */ if (*tc.dirfilter < NUM_FILTER_MODES) { - if (quick_screen(curr_context, BUTTON_F2)) + if (quick_screen(curr_context, TREE_QUICK)) reload_dir = true; restore = true; @@ -1079,6 +1079,9 @@ static bool dirbrowse(void) break; } +#endif + +#ifdef BUTTON_F3 case BUTTON_F3: /* don't enter f3 from plugin browser */ if (*tc.dirfilter < NUM_FILTER_MODES) diff --git a/apps/tree.h b/apps/tree.h index cf578fd..2c973cc 100644 --- a/apps/tree.h +++ b/apps/tree.h @@ -39,6 +39,7 @@ #define TREE_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) #define TREE_CONTEXT2 (BUTTON_ON | BUTTON_SELECT) #define TREE_POWER_BTN BUTTON_ON +#define TREE_QUICK (BUTTON_ON | BUTTON_REPEAT) #define TREE_RC_NEXT BUTTON_RC_FF #define TREE_RC_PREV BUTTON_RC_REW @@ -66,6 +67,7 @@ #define TREE_CONTEXT (BUTTON_PLAY | BUTTON_REPEAT) #define TREE_CONTEXT2 (BUTTON_ON | BUTTON_PLAY) #define TREE_POWER_BTN BUTTON_ON +#define TREE_QUICK BUTTON_F2 #define TREE_RC_NEXT BUTTON_RC_RIGHT #define TREE_RC_PREV BUTTON_RC_LEFT @@ -655,28 +655,33 @@ long wps_show(void) break; #endif -#if CONFIG_KEYPAD == RECORDER_PAD +#if (CONFIG_KEYPAD == RECORDER_PAD) || (CONFIG_KEYPAD == IRIVER_H100_PAD) /* play settings */ - case BUTTON_F2: - if (quick_screen(CONTEXT_WPS, BUTTON_F2)) + case WPS_QUICK: + if (quick_screen(CONTEXT_WPS, WPS_QUICK)) return SYS_USB_CONNECTED; restore = true; + lastbutton = 0; break; /* screen settings */ +#ifdef BUTTON_F3 case BUTTON_F3: if (quick_screen(CONTEXT_WPS, BUTTON_F3)) return SYS_USB_CONNECTED; restore = true; break; +#endif /* pitch screen */ +#if CONFIG_KEYPAD == RECORDER_PAD case BUTTON_ON | BUTTON_REPEAT: if (2 == pitch_screen()) return SYS_USB_CONNECTED; restore = true; break; #endif +#endif /* stop and exit wps */ #ifdef WPS_EXIT @@ -31,7 +31,8 @@ #define WPS_REW (BUTTON_LEFT | BUTTON_REPEAT) #define WPS_INCVOL BUTTON_UP #define WPS_DECVOL BUTTON_DOWN -#define WPS_PAUSE BUTTON_ON +#define WPS_PAUSE (BUTTON_ON | BUTTON_REL) +#define WPS_PAUSE_PRE BUTTON_ON #define WPS_MENU (BUTTON_MODE | BUTTON_REL) #define WPS_MENU_PRE BUTTON_MODE #define WPS_BROWSE (BUTTON_SELECT | BUTTON_REL) @@ -39,6 +40,7 @@ #define WPS_EXIT BUTTON_OFF #define WPS_ID3 (BUTTON_MODE | BUTTON_ON) #define WPS_CONTEXT (BUTTON_SELECT | BUTTON_REPEAT) +#define WPS_QUICK (BUTTON_ON | BUTTON_REPEAT) #define WPS_RC_NEXT BUTTON_RC_FF #define WPS_RC_PREV BUTTON_RC_REW @@ -70,6 +72,7 @@ #define WPS_KEYLOCK (BUTTON_F1 | BUTTON_DOWN) #define WPS_ID3 (BUTTON_F1 | BUTTON_ON) #define WPS_CONTEXT (BUTTON_PLAY | BUTTON_REPEAT) +#define WPS_QUICK BUTTON_F2 #define WPS_RC_NEXT BUTTON_RC_RIGHT #define WPS_RC_PREV BUTTON_RC_LEFT |