forked from len0rd/rockbox
Ondio FM: * Bugfix: Cancelling 'Auto Scan Presets' left the radio screen. * Put radio mode switch in radio menu.
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@8107 a1c6a512-1295-4272-9138-f99709370657
This commit is contained in:
parent
d5af4b0f48
commit
2a31407513
3 changed files with 66 additions and 28 deletions
|
@ -3365,16 +3365,16 @@ voice: ""
|
||||||
new:
|
new:
|
||||||
|
|
||||||
id: LANG_RADIO_SCAN_MODE
|
id: LANG_RADIO_SCAN_MODE
|
||||||
desc: in radio screen
|
desc: in radio screen / menu
|
||||||
eng: "Scan Mode"
|
eng: "Scan"
|
||||||
voice: ""
|
voice: ""
|
||||||
new: "Abstimmmodus"
|
new: "Abstimmen"
|
||||||
|
|
||||||
id: LANG_RADIO_PRESET_MODE
|
id: LANG_RADIO_PRESET_MODE
|
||||||
desc: in radio screen
|
desc: in radio screen / menu
|
||||||
eng: "Preset Mode"
|
eng: "Preset"
|
||||||
voice: ""
|
voice: ""
|
||||||
new: "Sendermodus"
|
new: "Sender"
|
||||||
|
|
||||||
id: LANG_FM_FREEZE
|
id: LANG_FM_FREEZE
|
||||||
desc: splash screen during freeze in radio mode
|
desc: splash screen during freeze in radio mode
|
||||||
|
@ -3402,7 +3402,7 @@ new: "Automatische Sendersuche"
|
||||||
|
|
||||||
id: LANG_FM_SCANNING
|
id: LANG_FM_SCANNING
|
||||||
desc: during auto scan
|
desc: during auto scan
|
||||||
eng: "Scanning %d.%dMHz"
|
eng: "Scanning %d.%01dMHz"
|
||||||
voice: ""
|
voice: ""
|
||||||
new: "Suche %d,%01dMHz"
|
new: "Suche %d,%01dMHz"
|
||||||
|
|
||||||
|
@ -3453,3 +3453,9 @@ desc: in remote lcd settings menu
|
||||||
eng: "Reduce ticking"
|
eng: "Reduce ticking"
|
||||||
voice: "Ticken verringern"
|
voice: "Ticken verringern"
|
||||||
new: "Ticken verringern"
|
new: "Ticken verringern"
|
||||||
|
|
||||||
|
id: LANG_FM_TUNE_MODE
|
||||||
|
desc: in radio screen / menu
|
||||||
|
eng: "Mode:"
|
||||||
|
voice: ""
|
||||||
|
new: "Modus:"
|
||||||
|
|
|
@ -3372,14 +3372,14 @@ voice: ""
|
||||||
new:
|
new:
|
||||||
|
|
||||||
id: LANG_RADIO_SCAN_MODE
|
id: LANG_RADIO_SCAN_MODE
|
||||||
desc: in radio screen
|
desc: in radio screen / menu
|
||||||
eng: "Scan Mode"
|
eng: "Scan"
|
||||||
voice: ""
|
voice: ""
|
||||||
new:
|
new:
|
||||||
|
|
||||||
id: LANG_RADIO_PRESET_MODE
|
id: LANG_RADIO_PRESET_MODE
|
||||||
desc: in radio screen
|
desc: in radio screen / menu
|
||||||
eng: "Preset Mode"
|
eng: "Preset"
|
||||||
voice: ""
|
voice: ""
|
||||||
new:
|
new:
|
||||||
|
|
||||||
|
@ -3461,3 +3461,8 @@ eng: "Reduce ticking"
|
||||||
voice: "Reduce ticking"
|
voice: "Reduce ticking"
|
||||||
new:
|
new:
|
||||||
|
|
||||||
|
id: LANG_FM_TUNE_MODE
|
||||||
|
desc: in radio screen / menu
|
||||||
|
eng: "Mode:"
|
||||||
|
voice: ""
|
||||||
|
new:
|
||||||
|
|
|
@ -77,6 +77,7 @@
|
||||||
#define FM_EXIT (BUTTON_ON | BUTTON_REL)
|
#define FM_EXIT (BUTTON_ON | BUTTON_REL)
|
||||||
#define FM_PRESET_ADD BUTTON_F1
|
#define FM_PRESET_ADD BUTTON_F1
|
||||||
#define FM_PRESET_ACTION BUTTON_F3
|
#define FM_PRESET_ACTION BUTTON_F3
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == IRIVER_H100_PAD
|
#elif CONFIG_KEYPAD == IRIVER_H100_PAD
|
||||||
/* pause/play - short PLAY */
|
/* pause/play - short PLAY */
|
||||||
#define FM_PLAY_PRE BUTTON_ON
|
#define FM_PLAY_PRE BUTTON_ON
|
||||||
|
@ -105,10 +106,12 @@
|
||||||
/* stop and exit radio - STOP */
|
/* stop and exit radio - STOP */
|
||||||
#define FM_STOP BUTTON_OFF
|
#define FM_STOP BUTTON_OFF
|
||||||
#define FM_RC_STOP BUTTON_RC_STOP
|
#define FM_RC_STOP BUTTON_RC_STOP
|
||||||
|
|
||||||
#elif CONFIG_KEYPAD == ONDIO_PAD /* restricted keypad */
|
#elif CONFIG_KEYPAD == ONDIO_PAD /* restricted keypad */
|
||||||
#define FM_MENU (BUTTON_MENU | BUTTON_REPEAT)
|
#define FM_MENU (BUTTON_MENU | BUTTON_REPEAT)
|
||||||
#define FM_RECORD_DBLPRE BUTTON_MENU
|
#define FM_RECORD_DBLPRE BUTTON_MENU
|
||||||
#define FM_RECORD (BUTTON_MENU | BUTTON_REL)
|
#define FM_RECORD (BUTTON_MENU | BUTTON_REL)
|
||||||
|
#define FM_STOP_PRE BUTTON_OFF
|
||||||
#define FM_STOP (BUTTON_OFF | BUTTON_REL)
|
#define FM_STOP (BUTTON_OFF | BUTTON_REL)
|
||||||
#define FM_EXIT (BUTTON_OFF | BUTTON_REPEAT)
|
#define FM_EXIT (BUTTON_OFF | BUTTON_REPEAT)
|
||||||
#endif
|
#endif
|
||||||
|
@ -377,10 +380,8 @@ bool radio_screen(void)
|
||||||
}
|
}
|
||||||
|
|
||||||
curr_preset = find_preset(curr_freq);
|
curr_preset = find_preset(curr_freq);
|
||||||
#ifdef FM_MODE
|
|
||||||
if(curr_preset != -1)
|
if(curr_preset != -1)
|
||||||
radio_mode = RADIO_PRESET_MODE;
|
radio_mode = RADIO_PRESET_MODE;
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef HAS_BUTTONBAR
|
#ifdef HAS_BUTTONBAR
|
||||||
gui_buttonbar_set(&buttonbar, str(LANG_BUTTONBAR_MENU), str(LANG_FM_BUTTONBAR_PRESETS),
|
gui_buttonbar_set(&buttonbar, str(LANG_BUTTONBAR_MENU), str(LANG_FM_BUTTONBAR_PRESETS),
|
||||||
|
@ -431,6 +432,10 @@ bool radio_screen(void)
|
||||||
case FM_RC_STOP:
|
case FM_RC_STOP:
|
||||||
#endif
|
#endif
|
||||||
case FM_STOP:
|
case FM_STOP:
|
||||||
|
#ifdef FM_STOP_PRE
|
||||||
|
if (lastbutton != FM_STOP_PRE)
|
||||||
|
break;
|
||||||
|
#endif
|
||||||
#ifndef SIMULATOR
|
#ifndef SIMULATOR
|
||||||
if(audio_status() == AUDIO_STATUS_RECORD)
|
if(audio_status() == AUDIO_STATUS_RECORD)
|
||||||
{
|
{
|
||||||
|
@ -786,12 +791,11 @@ bool radio_screen(void)
|
||||||
FOR_NB_SCREENS(i)
|
FOR_NB_SCREENS(i)
|
||||||
screens[i].puts_scroll(0, top_of_screen + 2, buf);
|
screens[i].puts_scroll(0, top_of_screen + 2, buf);
|
||||||
|
|
||||||
#ifdef FM_MODE
|
snprintf(buf, 128, "%s %s", str(LANG_FM_TUNE_MODE),
|
||||||
snprintf(buf, 128, radio_mode?str(LANG_RADIO_PRESET_MODE):
|
radio_mode ? str(LANG_RADIO_PRESET_MODE) :
|
||||||
str(LANG_RADIO_SCAN_MODE));
|
str(LANG_RADIO_SCAN_MODE));
|
||||||
FOR_NB_SCREENS(i)
|
FOR_NB_SCREENS(i)
|
||||||
screens[i].puts_scroll(0, top_of_screen + 3, buf);
|
screens[i].puts_scroll(0, top_of_screen + 3, buf);
|
||||||
#endif
|
|
||||||
|
|
||||||
if(audio_status() == AUDIO_STATUS_RECORD)
|
if(audio_status() == AUDIO_STATUS_RECORD)
|
||||||
{
|
{
|
||||||
|
@ -1185,7 +1189,8 @@ char monomode_menu_string[32];
|
||||||
|
|
||||||
static void create_monomode_menu(void)
|
static void create_monomode_menu(void)
|
||||||
{
|
{
|
||||||
snprintf(monomode_menu_string, 32, "%s: %s", str(LANG_FM_MONO_MODE),
|
snprintf(monomode_menu_string, sizeof monomode_menu_string,
|
||||||
|
"%s: %s", str(LANG_FM_MONO_MODE),
|
||||||
global_settings.fm_force_mono?
|
global_settings.fm_force_mono?
|
||||||
str(LANG_SET_BOOL_YES):str(LANG_SET_BOOL_NO));
|
str(LANG_SET_BOOL_YES):str(LANG_SET_BOOL_NO));
|
||||||
}
|
}
|
||||||
|
@ -1199,6 +1204,25 @@ static bool toggle_mono_mode(void)
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#ifndef FM_MODE
|
||||||
|
char radiomode_menu_string[32];
|
||||||
|
|
||||||
|
static void create_radiomode_menu(void)
|
||||||
|
{
|
||||||
|
snprintf(radiomode_menu_string, 32, "%s %s", str(LANG_FM_TUNE_MODE),
|
||||||
|
radio_mode ? str(LANG_RADIO_PRESET_MODE) :
|
||||||
|
str(LANG_RADIO_SCAN_MODE));
|
||||||
|
}
|
||||||
|
|
||||||
|
static bool toggle_radio_mode(void)
|
||||||
|
{
|
||||||
|
radio_mode = (radio_mode == RADIO_SCAN_MODE) ?
|
||||||
|
RADIO_PRESET_MODE : RADIO_SCAN_MODE;
|
||||||
|
create_radiomode_menu();
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
static bool scan_presets(void)
|
static bool scan_presets(void)
|
||||||
{
|
{
|
||||||
bool tuned = false;
|
bool tuned = false;
|
||||||
|
@ -1249,9 +1273,7 @@ static bool scan_presets(void)
|
||||||
curr_freq = presets[0].frequency;
|
curr_freq = presets[0].frequency;
|
||||||
radio_set(RADIO_FREQUENCY, curr_freq);
|
radio_set(RADIO_FREQUENCY, curr_freq);
|
||||||
remember_frequency();
|
remember_frequency();
|
||||||
#ifdef FM_MODE
|
|
||||||
radio_mode = RADIO_PRESET_MODE;
|
radio_mode = RADIO_PRESET_MODE;
|
||||||
#endif
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return true;
|
return true;
|
||||||
|
@ -1300,15 +1322,20 @@ bool radio_menu(void)
|
||||||
{ ID2P(LANG_FM_ADD_PRESET) , radio_add_preset },
|
{ ID2P(LANG_FM_ADD_PRESET) , radio_add_preset },
|
||||||
#endif
|
#endif
|
||||||
{ monomode_menu_string , toggle_mono_mode },
|
{ monomode_menu_string , toggle_mono_mode },
|
||||||
|
#ifndef FM_MODE
|
||||||
|
{ radiomode_menu_string , toggle_radio_mode },
|
||||||
|
#endif
|
||||||
{ ID2P(LANG_SOUND_SETTINGS) , sound_menu },
|
{ ID2P(LANG_SOUND_SETTINGS) , sound_menu },
|
||||||
#if !defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)
|
#if !defined(SIMULATOR) && (CONFIG_CODEC != SWCODEC)
|
||||||
{ ID2P(LANG_RECORDING_SETTINGS) , fm_recording_settings},
|
{ ID2P(LANG_RECORDING_SETTINGS) , fm_recording_settings},
|
||||||
#endif
|
#endif
|
||||||
{ ID2P(LANG_FM_SCAN_PRESETS) , scan_presets},
|
{ ID2P(LANG_FM_SCAN_PRESETS) , scan_presets },
|
||||||
};
|
};
|
||||||
|
|
||||||
create_monomode_menu();
|
create_monomode_menu();
|
||||||
|
#ifndef FM_MODE
|
||||||
|
create_radiomode_menu();
|
||||||
|
#endif
|
||||||
m = menu_init(items, sizeof(items) / sizeof(*items),
|
m = menu_init(items, sizeof(items) / sizeof(*items),
|
||||||
radio_menu_cb, NULL, NULL, NULL);
|
radio_menu_cb, NULL, NULL, NULL);
|
||||||
result = menu_run(m);
|
result = menu_run(m);
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue