mirror of
https://github.com/libretro/RetroArch
synced 2025-03-30 07:20:36 +00:00
Refactor 'Saving settings' and 'Logging settings' lists
This commit is contained in:
parent
662497d897
commit
f011c4c9d6
@ -1282,6 +1282,10 @@ static const char *menu_hash_to_str_us_label_enum(enum msg_hash_enums msg)
|
||||
return "deferred_video_settings_list";
|
||||
case MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST:
|
||||
return "deferred_configuration_settings_list";
|
||||
case MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST:
|
||||
return "deferred_saving_settings_list";
|
||||
case MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST:
|
||||
return "deferred_logging_settings_list";
|
||||
case MENU_ENUM_LABEL_ACCOUNTS_LIST:
|
||||
return "accounts_list";
|
||||
case MENU_ENUM_LABEL_DEFERRED_INPUT_HOTKEY_BINDS_LIST:
|
||||
@ -1306,6 +1310,10 @@ static const char *menu_hash_to_str_us_label_enum(enum msg_hash_enums msg)
|
||||
return "video_settings";
|
||||
case MENU_ENUM_LABEL_CONFIGURATION_SETTINGS:
|
||||
return "configuration_settings";
|
||||
case MENU_ENUM_LABEL_SAVING_SETTINGS:
|
||||
return "saving_settings";
|
||||
case MENU_ENUM_LABEL_LOGGING_SETTINGS:
|
||||
return "logging_settings";
|
||||
case MENU_ENUM_LABEL_AUDIO_SETTINGS:
|
||||
return "audio_settings";
|
||||
case MENU_ENUM_LABEL_DEBUG_PANEL_ENABLE:
|
||||
|
@ -119,6 +119,16 @@ static int deferred_push_configuration_settings_list(menu_displaylist_info_t *in
|
||||
return deferred_push_dlist(info, DISPLAYLIST_CONFIGURATION_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int deferred_push_saving_settings_list(menu_displaylist_info_t *info)
|
||||
{
|
||||
return deferred_push_dlist(info, DISPLAYLIST_SAVING_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int deferred_push_logging_settings_list(menu_displaylist_info_t *info)
|
||||
{
|
||||
return deferred_push_dlist(info, DISPLAYLIST_LOGGING_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int deferred_push_audio_settings_list(menu_displaylist_info_t *info)
|
||||
{
|
||||
return deferred_push_dlist(info, DISPLAYLIST_AUDIO_SETTINGS_LIST);
|
||||
@ -617,6 +627,16 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_configuration_settings_list);
|
||||
return 0;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST)))
|
||||
{
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_saving_settings_list);
|
||||
return 0;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST)))
|
||||
{
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_logging_settings_list);
|
||||
return 0;
|
||||
}
|
||||
else if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_CORE_CONTENT_DIRS_LIST)))
|
||||
{
|
||||
#ifdef HAVE_NETWORKING
|
||||
@ -857,6 +877,12 @@ static int menu_cbs_init_bind_deferred_push_compare_label(
|
||||
case MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_configuration_settings_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_saving_settings_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_saving_settings_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_DEFERRED_AUDIO_SETTINGS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_audio_settings_list);
|
||||
break;
|
||||
|
@ -472,6 +472,20 @@ int generic_action_ok_displaylist_push(const char *path,
|
||||
info_label = msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST);
|
||||
info.enum_idx = MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST;
|
||||
break;
|
||||
case ACTION_OK_DL_SAVING_SETTINGS_LIST:
|
||||
info.directory_ptr = idx;
|
||||
info.type = type;
|
||||
info_path = path;
|
||||
info_label = msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST);
|
||||
info.enum_idx = MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST;
|
||||
break;
|
||||
case ACTION_OK_DL_LOGGING_SETTINGS_LIST:
|
||||
info.directory_ptr = idx;
|
||||
info.type = type;
|
||||
info_path = path;
|
||||
info_label = msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST);
|
||||
info.enum_idx = MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST;
|
||||
break;
|
||||
case ACTION_OK_DL_AUDIO_SETTINGS_LIST:
|
||||
info.directory_ptr = idx;
|
||||
info.type = type;
|
||||
@ -2310,6 +2324,20 @@ static int action_ok_configurations_list(const char *path,
|
||||
entry_idx, ACTION_OK_DL_CONFIGURATIONS_LIST);
|
||||
}
|
||||
|
||||
static int action_ok_saving_list(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
return generic_action_ok_displaylist_push(path, label, type, idx,
|
||||
entry_idx, ACTION_OK_DL_SAVING_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int action_ok_logging_list(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
return generic_action_ok_displaylist_push(path, label, type, idx,
|
||||
entry_idx, ACTION_OK_DL_LOGGING_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int action_ok_rdb_entry(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
@ -2946,6 +2974,12 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs,
|
||||
case MENU_ENUM_LABEL_CONFIGURATIONS:
|
||||
BIND_ACTION_OK(cbs, action_ok_configurations_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_SAVING_SETTINGS:
|
||||
BIND_ACTION_OK(cbs, action_ok_saving_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_LOGGING_SETTINGS:
|
||||
BIND_ACTION_OK(cbs, action_ok_logging_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_SCREEN_RESOLUTION:
|
||||
BIND_ACTION_OK(cbs, action_ok_video_resolution);
|
||||
break;
|
||||
|
@ -207,6 +207,20 @@ static int action_get_configuration_settings_list(const char *path, const char *
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int action_get_saving_settings_list(const char *path, const char *label,
|
||||
unsigned menu_type, char *s, size_t len)
|
||||
{
|
||||
sanitize_to_string(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS), len);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int action_get_logging_settings_list(const char *path, const char *label,
|
||||
unsigned menu_type, char *s, size_t len)
|
||||
{
|
||||
sanitize_to_string(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOGGING_SETTINGS), len);
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int action_get_audio_settings_list(const char *path, const char *label,
|
||||
unsigned menu_type, char *s, size_t len)
|
||||
{
|
||||
@ -763,6 +777,18 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST)))
|
||||
{
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_saving_settings_list);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST)))
|
||||
{
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_logging_settings_list);
|
||||
return 0;
|
||||
}
|
||||
|
||||
if (string_is_equal(label, msg_hash_to_str(MENU_ENUM_LABEL_DEFERRED_CORE_CONTENT_DIRS_LIST)))
|
||||
{
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_download_core_content_list);
|
||||
@ -980,6 +1006,12 @@ static int menu_cbs_init_bind_title_compare_label(menu_file_list_cbs_t *cbs,
|
||||
case MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST:
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_configuration_settings_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST:
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_logging_settings_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST:
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_saving_settings_list);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_DEFERRED_CORE_SETTINGS_LIST:
|
||||
BIND_ACTION_GET_TITLE(cbs, action_get_core_settings_list);
|
||||
break;
|
||||
|
@ -43,6 +43,8 @@ enum
|
||||
ACTION_OK_DL_VIDEO_SETTINGS_LIST,
|
||||
ACTION_OK_DL_AUDIO_SETTINGS_LIST,
|
||||
ACTION_OK_DL_CONFIGURATION_SETTINGS_LIST,
|
||||
ACTION_OK_DL_SAVING_SETTINGS_LIST,
|
||||
ACTION_OK_DL_LOGGING_SETTINGS_LIST,
|
||||
ACTION_OK_DL_CORE_SETTINGS_LIST,
|
||||
ACTION_OK_DL_INPUT_HOTKEY_BINDS_LIST,
|
||||
ACTION_OK_DL_PLAYLIST_SETTINGS_LIST,
|
||||
|
@ -3738,6 +3738,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
|
||||
case DISPLAYLIST_DRIVER_SETTINGS_LIST:
|
||||
case DISPLAYLIST_VIDEO_SETTINGS_LIST:
|
||||
case DISPLAYLIST_CONFIGURATION_SETTINGS_LIST:
|
||||
case DISPLAYLIST_LOGGING_SETTINGS_LIST:
|
||||
case DISPLAYLIST_SAVING_SETTINGS_LIST:
|
||||
case DISPLAYLIST_AUDIO_SETTINGS_LIST:
|
||||
case DISPLAYLIST_CORE_SETTINGS_LIST:
|
||||
case DISPLAYLIST_INPUT_SETTINGS_LIST:
|
||||
@ -4060,6 +4062,49 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
|
||||
MENU_ENUM_LABEL_AUTO_REMAPS_ENABLE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_SAVING_SETTINGS_LIST:
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_SORT_SAVEFILES_ENABLE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_SORT_SAVESTATES_ENABLE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_BLOCK_SRAM_OVERWRITE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_AUTOSAVE_INTERVAL,
|
||||
PARSE_ONLY_UINT, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_SAVESTATE_AUTO_INDEX,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_SAVESTATE_AUTO_SAVE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_SAVESTATE_AUTO_LOAD,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_LOGGING_SETTINGS_LIST:
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_LOG_VERBOSITY,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_LIBRETRO_LOG_LEVEL,
|
||||
PARSE_ONLY_UINT, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_DEBUG_PANEL_ENABLE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_PERFCNT_ENABLE,
|
||||
PARSE_ONLY_BOOL, false);
|
||||
|
||||
info->need_refresh = true;
|
||||
info->need_push = true;
|
||||
break;
|
||||
@ -4303,10 +4348,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type, void *data)
|
||||
MENU_ENUM_LABEL_CORE_SETTINGS, PARSE_ACTION, false);
|
||||
ret = menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_CONFIGURATION_SETTINGS, PARSE_ACTION, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS), PARSE_ONLY_GROUP, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOGGING_SETTINGS), PARSE_ONLY_GROUP, false);
|
||||
ret = menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_SAVING_SETTINGS, PARSE_ACTION, false);
|
||||
ret = menu_displaylist_parse_settings_enum(menu, info,
|
||||
MENU_ENUM_LABEL_LOGGING_SETTINGS, PARSE_ACTION, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_FRAME_THROTTLE_SETTINGS), PARSE_ONLY_GROUP, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
|
@ -103,6 +103,8 @@ enum menu_displaylist_ctl_state
|
||||
DISPLAYLIST_DRIVER_SETTINGS_LIST,
|
||||
DISPLAYLIST_VIDEO_SETTINGS_LIST,
|
||||
DISPLAYLIST_CONFIGURATION_SETTINGS_LIST,
|
||||
DISPLAYLIST_SAVING_SETTINGS_LIST,
|
||||
DISPLAYLIST_LOGGING_SETTINGS_LIST,
|
||||
DISPLAYLIST_AUDIO_SETTINGS_LIST,
|
||||
DISPLAYLIST_CORE_SETTINGS_LIST,
|
||||
DISPLAYLIST_INPUT_SETTINGS_LIST,
|
||||
|
@ -4227,6 +4227,24 @@ static bool setting_append_list(
|
||||
parent_group);
|
||||
menu_settings_list_current_add_enum_idx(list, list_info, MENU_ENUM_LABEL_CONFIGURATION_SETTINGS);
|
||||
|
||||
CONFIG_ACTION(
|
||||
list, list_info,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVING_SETTINGS),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS),
|
||||
&group_info,
|
||||
&subgroup_info,
|
||||
parent_group);
|
||||
menu_settings_list_current_add_enum_idx(list, list_info, MENU_ENUM_LABEL_SAVING_SETTINGS);
|
||||
|
||||
CONFIG_ACTION(
|
||||
list, list_info,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_LOGGING_SETTINGS),
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOGGING_SETTINGS),
|
||||
&group_info,
|
||||
&subgroup_info,
|
||||
parent_group);
|
||||
menu_settings_list_current_add_enum_idx(list, list_info, MENU_ENUM_LABEL_LOGGING_SETTINGS);
|
||||
|
||||
CONFIG_ACTION(
|
||||
list, list_info,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_PLAYLIST_SETTINGS),
|
||||
@ -4574,9 +4592,9 @@ static bool setting_append_list(
|
||||
{
|
||||
bool *tmp_b = NULL;
|
||||
START_GROUP(list, list_info, &group_info, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_LOGGING_SETTINGS), parent_group);
|
||||
settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED);
|
||||
parent_group = msg_hash_to_str(MENU_ENUM_LABEL_LOGGING_SETTINGS);
|
||||
|
||||
parent_group = msg_hash_to_str(MENU_ENUM_LABEL_SETTINGS);
|
||||
settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED);
|
||||
|
||||
START_SUB_GROUP(list, list_info, "State", &group_info, &subgroup_info,
|
||||
parent_group);
|
||||
@ -4658,8 +4676,7 @@ static bool setting_append_list(
|
||||
break;
|
||||
case SETTINGS_LIST_SAVING:
|
||||
START_GROUP(list, list_info, &group_info, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS), parent_group);
|
||||
|
||||
parent_group = msg_hash_to_str(MENU_ENUM_LABEL_SETTINGS);
|
||||
parent_group = msg_hash_to_str(MENU_ENUM_LABEL_SAVING_SETTINGS);
|
||||
|
||||
START_SUB_GROUP(list, list_info, "State", &group_info, &subgroup_info,
|
||||
parent_group);
|
||||
|
@ -687,6 +687,8 @@ enum msg_hash_enums
|
||||
MENU_ENUM_LABEL_DEFERRED_DRIVER_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_VIDEO_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_CONFIGURATION_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_SAVING_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_LOGGING_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_AUDIO_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_CORE_SETTINGS_LIST,
|
||||
MENU_ENUM_LABEL_DEFERRED_USER_BINDS_LIST,
|
||||
@ -1337,8 +1339,12 @@ enum msg_hash_enums
|
||||
MENU_ENUM_LABEL_CONFIGURATION_SETTINGS,
|
||||
MENU_ENUM_LABEL_VALUE_CONFIGURATION_SETTINGS,
|
||||
|
||||
MENU_ENUM_LABEL_LOGGING_SETTINGS,
|
||||
MENU_ENUM_LABEL_VALUE_LOGGING_SETTINGS,
|
||||
|
||||
MENU_ENUM_LABEL_SAVING_SETTINGS,
|
||||
MENU_ENUM_LABEL_VALUE_SAVING_SETTINGS,
|
||||
|
||||
MENU_ENUM_LABEL_VALUE_REWIND_SETTINGS,
|
||||
MENU_ENUM_LABEL_RECORDING_SETTINGS,
|
||||
MENU_ENUM_LABEL_VALUE_RECORDING_SETTINGS,
|
||||
|
Loading…
x
Reference in New Issue
Block a user