mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
Reimplement Playlist Settings
This commit is contained in:
parent
443bf73c8c
commit
e997171d3c
@ -79,6 +79,11 @@ static int deferred_push_input_settings_list(menu_displaylist_info_t *info)
|
||||
return deferred_push_dlist(info, DISPLAYLIST_INPUT_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int deferred_push_playlist_settings_list(menu_displaylist_info_t *info)
|
||||
{
|
||||
return deferred_push_dlist(info, DISPLAYLIST_PLAYLIST_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int deferred_push_accounts_cheevos_list(menu_displaylist_info_t *info)
|
||||
{
|
||||
return deferred_push_dlist(info, DISPLAYLIST_ACCOUNTS_CHEEVOS_LIST);
|
||||
@ -574,6 +579,9 @@ static int menu_cbs_init_bind_deferred_push_compare_label(menu_file_list_cbs_t *
|
||||
case MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_input_settings_list);
|
||||
break;
|
||||
case MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_playlist_settings_list);
|
||||
break;
|
||||
case MENU_LABEL_DEFERRED_ACCOUNTS_CHEEVOS_LIST:
|
||||
BIND_ACTION_DEFERRED_PUSH(cbs, deferred_push_accounts_cheevos_list);
|
||||
break;
|
||||
|
@ -312,6 +312,12 @@ int generic_action_ok_displaylist_push(const char *path,
|
||||
info_path = path;
|
||||
info_label = menu_hash_to_str(MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST);
|
||||
break;
|
||||
case ACTION_OK_DL_PLAYLIST_SETTINGS_LIST:
|
||||
info.directory_ptr = idx;
|
||||
info.type = type;
|
||||
info_path = path;
|
||||
info_label = menu_hash_to_str(MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST);
|
||||
break;
|
||||
case ACTION_OK_DL_ACCOUNTS_CHEEVOS_LIST:
|
||||
info.directory_ptr = idx;
|
||||
info.type = type;
|
||||
@ -1587,6 +1593,13 @@ static int action_ok_push_input_settings_list(const char *path,
|
||||
ACTION_OK_DL_INPUT_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int action_ok_push_playlist_settings_list(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
return generic_action_ok_displaylist_push(path, label, 0, 0, entry_idx,
|
||||
ACTION_OK_DL_PLAYLIST_SETTINGS_LIST);
|
||||
}
|
||||
|
||||
static int action_ok_push_user_binds_list(const char *path,
|
||||
const char *label, unsigned type, size_t idx, size_t entry_idx)
|
||||
{
|
||||
@ -1909,6 +1922,9 @@ static int menu_cbs_init_bind_ok_compare_label(menu_file_list_cbs_t *cbs,
|
||||
case MENU_LABEL_INPUT_SETTINGS:
|
||||
BIND_ACTION_OK(cbs, action_ok_push_input_settings_list);
|
||||
break;
|
||||
case MENU_LABEL_PLAYLIST_SETTINGS:
|
||||
BIND_ACTION_OK(cbs, action_ok_push_playlist_settings_list);
|
||||
break;
|
||||
case MENU_LABEL_ACCOUNTS_RETRO_ACHIEVEMENTS:
|
||||
BIND_ACTION_OK(cbs, action_ok_push_accounts_cheevos_list);
|
||||
break;
|
||||
|
@ -48,6 +48,12 @@ static const char *menu_hash_to_str_us_label(uint32_t hash)
|
||||
return "accounts_list";
|
||||
case MENU_LABEL_INPUT_SETTINGS_BEGIN:
|
||||
return "input_settings_begin";
|
||||
case MENU_LABEL_PLAYLIST_SETTINGS_BEGIN:
|
||||
return "playlist_settings_begin";
|
||||
case MENU_LABEL_PLAYLIST_SETTINGS:
|
||||
return "playlist_settings";
|
||||
case MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST:
|
||||
return "deferred_playlist_settings";
|
||||
case MENU_LABEL_INPUT_SETTINGS:
|
||||
return "input_settings";
|
||||
case MENU_LABEL_DEBUG_PANEL_ENABLE:
|
||||
@ -1513,7 +1519,7 @@ const char *menu_hash_to_str_us(uint32_t hash)
|
||||
case MENU_LABEL_VALUE_NETWORK_SETTINGS:
|
||||
return "Network";
|
||||
case MENU_LABEL_VALUE_PLAYLIST_SETTINGS:
|
||||
return "Playlist";
|
||||
return "Playlists";
|
||||
case MENU_LABEL_VALUE_USER_SETTINGS:
|
||||
return "User";
|
||||
case MENU_LABEL_VALUE_DIRECTORY_SETTINGS:
|
||||
|
@ -42,6 +42,7 @@ enum
|
||||
ACTION_OK_DL_PUSH_DEFAULT,
|
||||
ACTION_OK_DL_DOWNLOADS_DIR,
|
||||
ACTION_OK_DL_INPUT_SETTINGS_LIST,
|
||||
ACTION_OK_DL_PLAYLIST_SETTINGS_LIST,
|
||||
ACTION_OK_DL_ACCOUNTS_LIST,
|
||||
ACTION_OK_DL_ACCOUNTS_CHEEVOS_LIST,
|
||||
ACTION_OK_DL_USER_BINDS_LIST,
|
||||
|
@ -2477,6 +2477,11 @@ int menu_displaylist_push_list(menu_displaylist_info_t *info, unsigned type)
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_PLAYLIST_SETTINGS_LIST:
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_HISTORY_LIST_ENABLE), PARSE_ONLY_BOOL, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_CONTENT_HISTORY_SIZE), PARSE_ONLY_UINT, false);
|
||||
info->need_push = true;
|
||||
break;
|
||||
case DISPLAYLIST_INPUT_SETTINGS_LIST:
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
@ -2562,7 +2567,7 @@ int menu_displaylist_push_list(menu_displaylist_info_t *info, unsigned type)
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_VALUE_NETWORK_SETTINGS), PARSE_ONLY_GROUP, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_VALUE_PLAYLIST_SETTINGS), PARSE_ONLY_GROUP, false);
|
||||
menu_hash_to_str(MENU_LABEL_PLAYLIST_SETTINGS), PARSE_ACTION, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
menu_hash_to_str(MENU_LABEL_VALUE_USER_SETTINGS), PARSE_ONLY_GROUP, false);
|
||||
ret = menu_displaylist_parse_settings(menu, info,
|
||||
|
@ -24,6 +24,9 @@ extern "C" {
|
||||
|
||||
#define MENU_LABEL_INPUT_SETTINGS 0x78b4a7c5U
|
||||
|
||||
#define MENU_LABEL_PLAYLIST_SETTINGS_BEGIN 0x80a8d2cbU
|
||||
#define MENU_LABEL_DEFERRED_PLAYLIST_SETTINGS_LIST 0x9518e0c7U
|
||||
|
||||
#define MENU_LABEL_INPUT_SETTINGS_BEGIN 0xddee308bU
|
||||
|
||||
#define MENU_LABEL_DEFERRED_INPUT_SETTINGS_LIST 0x050bec60U
|
||||
@ -813,7 +816,7 @@ extern "C" {
|
||||
#define MENU_LABEL_UI_SETTINGS 0xf8da6ef4U
|
||||
#define MENU_LABEL_VALUE_UI_SETTINGS 0x76ebdc06U
|
||||
#define MENU_LABEL_PATCH_SETTINGS 0xa78b0986U
|
||||
#define MENU_LABEL_PLAYLIST_SETTINGS 0x4d276288U
|
||||
#define MENU_LABEL_PLAYLIST_SETTINGS 0xdb3e0e07U
|
||||
#define MENU_LABEL_VALUE_PLAYLIST_SETTINGS 0x4d276288U
|
||||
#define MENU_LABEL_CORE_UPDATER_SETTINGS 0x124ad454U
|
||||
#define MENU_LABEL_VALUE_CORE_UPDATER_SETTINGS 0x124ad454U
|
||||
|
@ -3179,6 +3179,13 @@ static bool setting_append_list_main_menu_options(
|
||||
subgroup_info.name,
|
||||
parent_group);
|
||||
|
||||
CONFIG_ACTION(
|
||||
menu_hash_to_str(MENU_LABEL_PLAYLIST_SETTINGS),
|
||||
menu_hash_to_str(MENU_LABEL_VALUE_PLAYLIST_SETTINGS),
|
||||
group_info.name,
|
||||
subgroup_info.name,
|
||||
parent_group);
|
||||
|
||||
for (user = 0; user < MAX_USERS; user++)
|
||||
setting_append_list_input_player_options(list, list_info, parent_group, user);
|
||||
|
||||
@ -5962,7 +5969,7 @@ static bool setting_append_list_playlist_options(
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
START_GROUP(group_info,
|
||||
menu_hash_to_str(MENU_LABEL_VALUE_PLAYLIST_SETTINGS),
|
||||
menu_hash_to_str(MENU_LABEL_PLAYLIST_SETTINGS_BEGIN),
|
||||
parent_group);
|
||||
settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user