(RMenu) Menu now more or less synced with RGUI's menu ordering

This commit is contained in:
twinaphex 2013-05-05 04:42:06 +02:00
parent ed97079b89
commit 2c557c1eef
2 changed files with 51 additions and 126 deletions

View File

@ -211,21 +211,6 @@ static void menu_stack_pop(unsigned menu_type)
{
switch(menu_type)
{
case GENERAL_VIDEO_MENU:
selected = FIRST_INGAME_MENU_SETTING;
break;
case GENERAL_AUDIO_MENU:
selected = FIRST_VIDEO_SETTING;
break;
case EMU_GENERAL_MENU:
selected = FIRST_AUDIO_SETTING;
break;
case EMU_VIDEO_MENU:
selected = FIRST_EMU_SETTING;
break;
case EMU_AUDIO_MENU:
selected = FIRST_EMU_VIDEO_SETTING;
break;
case LIBRETRO_CHOICE:
case INGAME_MENU_CORE_OPTIONS:
case INGAME_MENU_LOAD_GAME_HISTORY:
@ -233,7 +218,9 @@ static void menu_stack_pop(unsigned menu_type)
case INGAME_MENU_SCREENSHOT:
rgui->frame_buf_show = true;
break;
case INGAME_MENU_SETTINGS:
case INGAME_MENU_VIDEO_OPTIONS:
case INGAME_MENU_AUDIO_OPTIONS:
case INGAME_MENU_INPUT_OPTIONS:
case INGAME_MENU_PATH_OPTIONS:
selected = FIRST_INGAME_MENU_SETTING;
@ -274,27 +261,18 @@ static void menu_stack_push(unsigned menu_type, bool prev_dir)
case INGAME_MENU_VIDEO_OPTIONS:
selected = FIRST_SHADERMAN_SETTING;
break;
case INGAME_MENU_AUDIO_OPTIONS:
selected = FIRST_AUDIO_SETTING;
break;
case INGAME_MENU_INPUT_OPTIONS:
selected = FIRST_CONTROLS_SETTING_PAGE_1;
break;
case INGAME_MENU_PATH_OPTIONS:
selected = FIRST_PATH_SETTING;
break;
case GENERAL_VIDEO_MENU:
case INGAME_MENU_SETTINGS:
selected = FIRST_VIDEO_SETTING;
break;
case GENERAL_AUDIO_MENU:
selected = FIRST_AUDIO_SETTING;
break;
case EMU_GENERAL_MENU:
selected = FIRST_EMU_SETTING;
break;
case EMU_VIDEO_MENU:
selected = FIRST_EMU_VIDEO_SETTING;
break;
case EMU_AUDIO_MENU:
selected = FIRST_EMU_AUDIO_SETTING;
break;
default:
break;
}
@ -380,20 +358,13 @@ static void display_menubar(uint8_t menu_type)
case FILE_BROWSER_MENU:
strlcpy(title, "Filebrowser", sizeof(title));
break;
case GENERAL_VIDEO_MENU:
strlcpy(title, "Video", sizeof(title));
case INGAME_MENU_SETTINGS:
case INGAME_MENU_SETTINGS_MODE:
strlcpy(title, "Settings", sizeof(title));
break;
case GENERAL_AUDIO_MENU:
strlcpy(title, "Audio", sizeof(title));
break;
case EMU_GENERAL_MENU:
strlcpy(title, "Retro", sizeof(title));
break;
case EMU_VIDEO_MENU:
strlcpy(title, "Retro Video", sizeof(title));
break;
case EMU_AUDIO_MENU:
strlcpy(title, "Retro Audio", sizeof(title));
case INGAME_MENU_AUDIO_OPTIONS:
case INGAME_MENU_AUDIO_OPTIONS_MODE:
strlcpy(title, "Audio Options", sizeof(title));
break;
case INGAME_MENU_PATH_OPTIONS:
case INGAME_MENU_PATH_OPTIONS_MODE:
@ -1208,10 +1179,6 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t
#endif
}
break;
case SETTING_EMU_VIDEO_DEFAULT_ALL:
break;
case SETTING_EMU_AUDIO_DEFAULT_ALL:
break;
case SETTING_PATH_DEFAULT_ROM_DIRECTORY:
if ((input & (1ULL << DEVICE_NAV_LEFT)) || (input & (1ULL << DEVICE_NAV_RIGHT)) || (input & (1ULL << DEVICE_NAV_B)))
{
@ -1526,9 +1493,9 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t
if (input & (1ULL << DEVICE_NAV_B))
menu_stack_push(FILE_BROWSER_MENU, false);
break;
case INGAME_MENU_SETTINGS:
case INGAME_MENU_SETTINGS_MODE:
if (input & (1ULL << DEVICE_NAV_B))
menu_stack_push(GENERAL_VIDEO_MENU, false);
menu_stack_push(INGAME_MENU_SETTINGS, false);
break;
case INGAME_MENU_RESET:
if (input & (1ULL << DEVICE_NAV_B))
@ -1572,6 +1539,10 @@ static int set_setting_action(uint8_t menu_type, unsigned switchvalue, uint64_t
if (input & (1ULL << DEVICE_NAV_B))
menu_stack_push(INGAME_MENU_VIDEO_OPTIONS, false);
break;
case INGAME_MENU_AUDIO_OPTIONS_MODE:
if (input & (1ULL << DEVICE_NAV_B))
menu_stack_push(INGAME_MENU_AUDIO_OPTIONS, false);
break;
case INGAME_MENU_INPUT_OPTIONS_MODE:
if (input & (1ULL << DEVICE_NAV_B))
menu_stack_push(INGAME_MENU_INPUT_OPTIONS, false);
@ -1751,30 +1722,14 @@ static int select_setting(void *data, uint64_t input)
switch (rgui->menu_type)
{
case GENERAL_VIDEO_MENU:
first_setting = FIRST_VIDEO_SETTING;
max_settings = MAX_NO_OF_VIDEO_SETTINGS;
break;
case GENERAL_AUDIO_MENU:
first_setting = FIRST_AUDIO_SETTING;
max_settings = MAX_NO_OF_AUDIO_SETTINGS;
break;
case EMU_GENERAL_MENU:
first_setting = FIRST_EMU_SETTING;
max_settings = MAX_NO_OF_EMU_SETTINGS;
break;
case EMU_VIDEO_MENU:
first_setting = FIRST_EMU_VIDEO_SETTING;
max_settings = MAX_NO_OF_EMU_VIDEO_SETTINGS;
break;
case EMU_AUDIO_MENU:
first_setting = FIRST_EMU_AUDIO_SETTING;
max_settings = MAX_NO_OF_EMU_AUDIO_SETTINGS;
break;
case INGAME_MENU:
first_setting = FIRST_INGAME_MENU_SETTING;
max_settings = MAX_NO_OF_INGAME_MENU_SETTINGS;
break;
case INGAME_MENU_SETTINGS:
first_setting = FIRST_VIDEO_SETTING;
max_settings = MAX_NO_OF_VIDEO_SETTINGS;
break;
case INGAME_MENU_INPUT_OPTIONS:
first_setting = FIRST_CONTROLS_SETTING_PAGE_1;
max_settings = MAX_NO_OF_CONTROLS_SETTINGS;
@ -1783,6 +1738,10 @@ static int select_setting(void *data, uint64_t input)
first_setting = FIRST_PATH_SETTING;
max_settings = MAX_NO_OF_PATH_SETTINGS;
break;
case INGAME_MENU_AUDIO_OPTIONS:
first_setting = FIRST_AUDIO_SETTING;
max_settings = MAX_NO_OF_AUDIO_SETTINGS;
break;
case INGAME_MENU_VIDEO_OPTIONS:
first_setting = FIRST_SHADERMAN_SETTING;
max_settings = SHADERMAN_SHADER_LAST;
@ -2118,26 +2077,11 @@ static int select_setting(void *data, uint64_t input)
strlcpy(setting_text, "", sizeof(setting_text));
strlcpy(comment, "INFO - Set all Controls settings to defaults.", sizeof(comment));
break;
case SETTING_EMU_VIDEO_DEFAULT_ALL:
strlcpy(text, "DEFAULTS", sizeof(text));
strlcpy(setting_text, "", sizeof(setting_text));
strlcpy(comment, "INFO - Set all Video settings to defaults.", sizeof(comment));
break;
case SETTING_EMU_AUDIO_DEFAULT_ALL:
strlcpy(text, "DEFAULTS", sizeof(text));
strlcpy(setting_text, "", sizeof(setting_text));
strlcpy(comment, "INFO - Set all Audio settings to defaults.", sizeof(comment));
break;
case SETTING_PATH_DEFAULT_ALL:
strlcpy(text, "DEFAULTS", sizeof(text));
strlcpy(setting_text, "", sizeof(setting_text));
strlcpy(comment, "INFO - Set all Path settings to defaults.", sizeof(comment));
break;
case SETTING_EMU_DEFAULT_ALL:
strlcpy(text, "DEFAULTS", sizeof(text));
strlcpy(setting_text, "", sizeof(setting_text));
strlcpy(comment, "INFO - Set all RetroArch settings to defaults.", sizeof(comment));
break;
case INGAME_MENU_LOAD_STATE:
strlcpy(text, "Load State", sizeof(text));
snprintf(setting_text, sizeof(setting_text), "%d", g_extern.state_slot);
@ -2178,6 +2122,11 @@ static int select_setting(void *data, uint64_t input)
strlcpy(setting_text, "...", sizeof(setting_text));
strlcpy(comment, "Set and manage video options.", sizeof(comment));
break;
case INGAME_MENU_AUDIO_OPTIONS_MODE:
strlcpy(text, "Audio Options", sizeof(text));
strlcpy(setting_text, "...", sizeof(setting_text));
strlcpy(comment, "Set and manage audio options.", sizeof(comment));
break;
case INGAME_MENU_INPUT_OPTIONS_MODE:
strlcpy(text, "Input Options", sizeof(text));
strlcpy(setting_text, "...", sizeof(setting_text));
@ -2188,6 +2137,11 @@ static int select_setting(void *data, uint64_t input)
strlcpy(setting_text, "...", sizeof(setting_text));
strlcpy(comment, "Set and manage path options.", sizeof(comment));
break;
case INGAME_MENU_SETTINGS_MODE:
strlcpy(text, "Settings", sizeof(text));
strlcpy(setting_text, "...", sizeof(setting_text));
strlcpy(comment, "Set and manage various settings.", sizeof(comment));
break;
case INGAME_MENU_FRAME_ADVANCE:
strlcpy(text, "Frame Advance", sizeof(text));
strlcpy(setting_text, "", sizeof(setting_text));
@ -2218,11 +2172,6 @@ static int select_setting(void *data, uint64_t input)
strlcpy(setting_text, "...", sizeof(setting_text));
strlcpy(comment, "Choose another libretro core.", sizeof(comment));
break;
case INGAME_MENU_SETTINGS:
strlcpy(text, "Settings", sizeof(text));
strlcpy(setting_text, "...", sizeof(setting_text));
strlcpy(comment, "Change RetroArch settings.", sizeof(comment));
break;
#ifdef HAVE_MULTIMAN
case INGAME_MENU_RETURN_TO_MULTIMAN:
strlcpy(text, "Return to multiMAN", sizeof(text));
@ -2407,16 +2356,6 @@ static int select_setting(void *data, uint64_t input)
if ((input & (1ULL << DEVICE_NAV_A))
|| (input & (1ULL << DEVICE_NAV_MENU)))
menu_stack_pop(rgui->menu_type);
else if (input & (1ULL << DEVICE_NAV_R1))
{
if (rgui->menu_type != INGAME_MENU_INPUT_OPTIONS
|| rgui->menu_type != INGAME_MENU_VIDEO_OPTIONS
|| rgui->menu_type != INGAME_MENU_PATH_OPTIONS
|| rgui->menu_type != INGAME_MENU
)
menu_stack_push(rgui->menu_type + 1, false);
}
ret = set_setting_action(rgui->menu_type, selected, input);
@ -3101,13 +3040,10 @@ int rgui_iterate(rgui_handle_t *rgui)
#endif
case PATH_SYSTEM_DIR_CHOICE:
return select_directory(rgui, rgui->trigger_state);
case GENERAL_VIDEO_MENU:
case GENERAL_AUDIO_MENU:
case EMU_GENERAL_MENU:
case EMU_VIDEO_MENU:
case EMU_AUDIO_MENU:
case INGAME_MENU:
case INGAME_MENU_SETTINGS:
case INGAME_MENU_VIDEO_OPTIONS:
case INGAME_MENU_AUDIO_OPTIONS:
case INGAME_MENU_INPUT_OPTIONS:
case INGAME_MENU_PATH_OPTIONS:
return select_setting(rgui, rgui->trigger_state);

View File

@ -41,11 +41,6 @@ enum
enum
{
FILE_BROWSER_MENU = 0,
GENERAL_VIDEO_MENU,
GENERAL_AUDIO_MENU,
EMU_GENERAL_MENU,
EMU_VIDEO_MENU,
EMU_AUDIO_MENU,
#ifdef HAVE_SHADER_MANAGER
SHADER_CHOICE,
CGP_CHOICE,
@ -61,10 +56,12 @@ enum
PATH_SYSTEM_DIR_CHOICE,
INPUT_PRESET_CHOICE,
INGAME_MENU,
INGAME_MENU_SETTINGS,
INGAME_MENU_RESIZE,
INGAME_MENU_CORE_OPTIONS,
INGAME_MENU_LOAD_GAME_HISTORY,
INGAME_MENU_VIDEO_OPTIONS,
INGAME_MENU_AUDIO_OPTIONS,
INGAME_MENU_INPUT_OPTIONS,
INGAME_MENU_PATH_OPTIONS,
INGAME_MENU_SCREENSHOT,
@ -75,26 +72,20 @@ enum
enum
{
SETTING_FONT_SIZE,
SETTING_REFRESH_RATE,
SETTING_THROTTLE_MODE,
SETTING_TRIPLE_BUFFERING,
SETTING_EMU_SHOW_DEBUG_INFO_MSG,
SETTING_EMU_SHOW_INFO_MSG,
SETTING_EMU_SKIN,
SETTING_DEFAULT_VIDEO_ALL,
SETTING_SOUND_MODE,
#ifdef HAVE_RSOUND
SETTING_RSOUND_SERVER_IP_ADDRESS,
#endif
SETTING_ENABLE_CUSTOM_BGM,
SETTING_DEFAULT_AUDIO_ALL,
SETTING_EMU_SHOW_DEBUG_INFO_MSG,
SETTING_EMU_SHOW_INFO_MSG,
SETTING_EMU_SKIN,
SETTING_EMU_DEFAULT_ALL,
SETTING_EMU_VIDEO_DEFAULT_ALL,
#ifdef _XBOX1
SETTING_EMU_AUDIO_SOUND_VOLUME_LEVEL,
#endif
SETTING_EMU_AUDIO_MUTE,
SETTING_EMU_AUDIO_DEFAULT_ALL,
SETTING_DEFAULT_AUDIO_ALL,
SETTING_PATH_DEFAULT_ROM_DIRECTORY,
SETTING_PATH_SAVESTATES_DIRECTORY,
SETTING_PATH_SRAM_DIRECTORY,
@ -132,9 +123,10 @@ enum
INGAME_MENU_CHANGE_GAME,
INGAME_MENU_CORE_OPTIONS_MODE,
INGAME_MENU_VIDEO_OPTIONS_MODE,
INGAME_MENU_AUDIO_OPTIONS_MODE,
INGAME_MENU_INPUT_OPTIONS_MODE,
INGAME_MENU_PATH_OPTIONS_MODE,
INGAME_MENU_SETTINGS,
INGAME_MENU_SETTINGS_MODE,
INGAME_MENU_LOAD_STATE,
INGAME_MENU_SAVE_STATE,
INGAME_MENU_SCREENSHOT_MODE,
@ -156,6 +148,9 @@ enum
SETTING_FLICKER_FILTER,
SETTING_SOFT_DISPLAY_FILTER,
#endif
SETTING_REFRESH_RATE,
SETTING_THROTTLE_MODE,
SETTING_TRIPLE_BUFFERING,
SETTING_ASPECT_RATIO,
SETTING_CUSTOM_VIEWPORT,
SETTING_ROTATION,
@ -201,11 +196,8 @@ enum
#endif
#define FIRST_VIDEO_SETTING 0
#define FIRST_AUDIO_SETTING SETTING_DEFAULT_VIDEO_ALL+1
#define FIRST_EMU_SETTING SETTING_DEFAULT_AUDIO_ALL+1
#define FIRST_EMU_VIDEO_SETTING SETTING_EMU_DEFAULT_ALL+1
#define FIRST_EMU_AUDIO_SETTING SETTING_EMU_VIDEO_DEFAULT_ALL+1
#define FIRST_PATH_SETTING SETTING_EMU_AUDIO_DEFAULT_ALL+1
#define FIRST_AUDIO_SETTING SETTING_DEFAULT_VIDEO_ALL+1
#define FIRST_PATH_SETTING SETTING_DEFAULT_AUDIO_ALL+1
#define FIRST_CONTROLS_SETTING_PAGE_1 SETTING_PATH_DEFAULT_ALL+1
#define FIRST_CONTROL_BIND SETTING_CONTROLS_RETRO_DEVICE_ID_JOYPAD_B
#define FIRST_INGAME_MENU_SETTING SETTING_LAST+1
@ -213,9 +205,6 @@ enum
#define MAX_NO_OF_VIDEO_SETTINGS SETTING_DEFAULT_VIDEO_ALL+1
#define MAX_NO_OF_AUDIO_SETTINGS SETTING_DEFAULT_AUDIO_ALL+1
#define MAX_NO_OF_EMU_SETTINGS SETTING_EMU_DEFAULT_ALL+1
#define MAX_NO_OF_EMU_VIDEO_SETTINGS SETTING_EMU_VIDEO_DEFAULT_ALL+1
#define MAX_NO_OF_EMU_AUDIO_SETTINGS SETTING_EMU_AUDIO_DEFAULT_ALL+1
#define MAX_NO_OF_PATH_SETTINGS SETTING_PATH_DEFAULT_ALL+1
#define MAX_NO_OF_CONTROLS_SETTINGS SETTING_CONTROLS_DEFAULT_ALL+1
#define MAX_NO_OF_INGAME_MENU_SETTINGS INGAME_MENU_QUIT_RETROARCH+1