mirror of
https://github.com/libretro/RetroArch
synced 2025-03-28 19:20:35 +00:00
Add new dropdown lists
This commit is contained in:
parent
991688f35c
commit
e04d3da985
@ -125,36 +125,6 @@ static void menu_action_setting_disp_set_label_cheevos_locked_entry(
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_CHEEVOS_LOCKED_ENTRY), len);
|
||||
}
|
||||
|
||||
static void menu_action_setting_disp_set_label_crt_switch_resolution(
|
||||
file_list_t* list,
|
||||
unsigned *w, unsigned type, unsigned i,
|
||||
const char *label,
|
||||
char *s, size_t len,
|
||||
const char *entry_label,
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
*w = 19;
|
||||
strlcpy(s2, path, len2);
|
||||
|
||||
if (settings)
|
||||
{
|
||||
switch (settings->uints.crt_switch_resolution)
|
||||
{
|
||||
case CRT_SWITCH_NONE:
|
||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len);
|
||||
break;
|
||||
case CRT_SWITCH_15KHZ:
|
||||
strlcpy(s, "15 KHz", len);
|
||||
break;
|
||||
case CRT_SWITCH_31KHZ:
|
||||
strlcpy(s, "31 KHz", len);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
static void menu_action_setting_disp_set_label_crt_switch_resolution_super(
|
||||
file_list_t* list,
|
||||
unsigned *w, unsigned type, unsigned i,
|
||||
@ -301,61 +271,6 @@ static void menu_action_setting_disp_set_label_filter(
|
||||
settings->paths.path_softfilter_plugin, len);
|
||||
}
|
||||
|
||||
static void menu_action_setting_disp_set_label_pipeline(
|
||||
file_list_t* list,
|
||||
unsigned *w, unsigned type, unsigned i,
|
||||
const char *label,
|
||||
char *s, size_t len,
|
||||
const char *entry_label,
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
*s = '\0';
|
||||
*w = 19;
|
||||
|
||||
switch (settings->uints.menu_xmb_shader_pipeline)
|
||||
{
|
||||
case XMB_SHADER_PIPELINE_WALLPAPER:
|
||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SIMPLE_RIBBON:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON_SIMPLIFIED), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_RIBBON:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SIMPLE_SNOW:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SIMPLE_SNOW), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SNOW:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOW), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_BOKEH:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_BOKEH), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SNOWFLAKE:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOWFLAKE), len);
|
||||
break;
|
||||
}
|
||||
|
||||
strlcpy(s2, path, len2);
|
||||
|
||||
}
|
||||
|
||||
#ifdef HAVE_NETWORKING
|
||||
static void menu_action_setting_disp_set_label_netplay_mitm_server(
|
||||
file_list_t* list,
|
||||
@ -885,71 +800,6 @@ static void menu_action_setting_disp_set_label_state(
|
||||
strlcat(s, " (Auto)", len);
|
||||
}
|
||||
|
||||
static void menu_action_setting_disp_set_label_xmb_theme(
|
||||
file_list_t* list,
|
||||
unsigned *w, unsigned type, unsigned i,
|
||||
const char *label,
|
||||
char *s, size_t len,
|
||||
const char *entry_label,
|
||||
const char *path,
|
||||
char *s2, size_t len2)
|
||||
{
|
||||
settings_t *settings = config_get_ptr();
|
||||
|
||||
if (!settings)
|
||||
return;
|
||||
|
||||
strlcpy(s2, path, len2);
|
||||
*w = 19;
|
||||
switch (settings->uints.menu_xmb_theme)
|
||||
{
|
||||
case XMB_ICON_THEME_MONOCHROME:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_FLATUI:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_FLATUI), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_RETROACTIVE:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_RETROACTIVE), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_RETROSYSTEM:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_RETROSYSTEM), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_PIXEL:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_PIXEL), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_NEOACTIVE:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_NEOACTIVE), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_SYSTEMATIC:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_SYSTEMATIC), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_DOTART:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_DOTART), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_MONOCHROME_INVERTED:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME_INVERTED), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_CUSTOM:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_CUSTOM), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_AUTOMATIC:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_AUTOMATIC), len);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void menu_action_setting_disp_set_label_wifi_is_online(
|
||||
file_list_t* list,
|
||||
unsigned *w, unsigned type, unsigned i,
|
||||
@ -1875,10 +1725,6 @@ static int menu_cbs_init_bind_get_string_representation_compare_label(
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_xmb_layout);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_XMB_THEME:
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_xmb_theme);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_CONNECT_WIFI:
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_wifi_is_online);
|
||||
@ -1923,10 +1769,6 @@ static int menu_cbs_init_bind_get_string_representation_compare_label(
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_shader_watch_for_changes);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_XMB_RIBBON_ENABLE:
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_pipeline);
|
||||
break;
|
||||
case MENU_ENUM_LABEL_VIDEO_SHADER_PASS:
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_shader_pass);
|
||||
@ -2203,10 +2045,6 @@ int menu_cbs_init_bind_get_string_representation(menu_file_list_cbs_t *cbs,
|
||||
{
|
||||
switch (cbs->enum_idx)
|
||||
{
|
||||
case MENU_ENUM_LABEL_CRT_SWITCH_RESOLUTION:
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_crt_switch_resolution);
|
||||
return 0;
|
||||
case MENU_ENUM_LABEL_CRT_SWITCH_RESOLUTION_SUPER:
|
||||
BIND_ACTION_GET_VALUE(cbs,
|
||||
menu_action_setting_disp_set_label_crt_switch_resolution_super);
|
||||
|
@ -190,6 +190,107 @@ static void setting_get_string_representation_cheevos_password(void *data,
|
||||
}
|
||||
#endif
|
||||
|
||||
static void setting_get_string_representation_uint_xmb_icon_theme(void *data,
|
||||
char *s, size_t len)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
if (!setting)
|
||||
return;
|
||||
|
||||
switch (*setting->value.target.unsigned_integer)
|
||||
{
|
||||
case XMB_ICON_THEME_MONOCHROME:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_FLATUI:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_FLATUI), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_RETROACTIVE:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_RETROACTIVE), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_RETROSYSTEM:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_RETROSYSTEM), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_PIXEL:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_PIXEL), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_NEOACTIVE:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_NEOACTIVE), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_SYSTEMATIC:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_SYSTEMATIC), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_DOTART:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_DOTART), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_MONOCHROME_INVERTED:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_MONOCHROME_INVERTED), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_CUSTOM:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_CUSTOM), len);
|
||||
break;
|
||||
case XMB_ICON_THEME_AUTOMATIC:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_XMB_ICON_THEME_AUTOMATIC), len);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void setting_get_string_representation_uint_xmb_shader_pipeline(void *data,
|
||||
char *s, size_t len)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
if (!setting)
|
||||
return;
|
||||
|
||||
switch (*setting->value.target.unsigned_integer)
|
||||
{
|
||||
case XMB_SHADER_PIPELINE_WALLPAPER:
|
||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SIMPLE_RIBBON:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON_SIMPLIFIED), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_RIBBON:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_RIBBON), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SIMPLE_SNOW:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SIMPLE_SNOW), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SNOW:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOW), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_BOKEH:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_BOKEH), len);
|
||||
break;
|
||||
case XMB_SHADER_PIPELINE_SNOWFLAKE:
|
||||
strlcpy(s,
|
||||
msg_hash_to_str(
|
||||
MENU_ENUM_LABEL_VALUE_SHADER_PIPELINE_SNOWFLAKE), len);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void setting_get_string_representation_uint_video_monitor_index(void *data,
|
||||
char *s, size_t len)
|
||||
{
|
||||
@ -635,6 +736,28 @@ static void setting_get_string_representation_uint_aspect_ratio_index(
|
||||
len);
|
||||
}
|
||||
|
||||
static void setting_get_string_representation_uint_crt_switch_resolutions(
|
||||
void *data,
|
||||
char *s, size_t len)
|
||||
{
|
||||
rarch_setting_t *setting = (rarch_setting_t*)data;
|
||||
if (!setting)
|
||||
return;
|
||||
|
||||
switch (*setting->value.target.unsigned_integer)
|
||||
{
|
||||
case CRT_SWITCH_NONE:
|
||||
strlcpy(s, msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OFF), len);
|
||||
break;
|
||||
case CRT_SWITCH_15KHZ:
|
||||
strlcpy(s, "15 KHz", len);
|
||||
break;
|
||||
case CRT_SWITCH_31KHZ:
|
||||
strlcpy(s, "31 KHz", len);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
static void setting_get_string_representation_uint_audio_resampler_quality(
|
||||
void *data,
|
||||
char *s, size_t len)
|
||||
@ -4756,6 +4879,9 @@ static bool setting_append_list(
|
||||
parent_group,
|
||||
general_write_handler,
|
||||
general_read_handler);
|
||||
(*list)[list_info->index - 1].action_ok = &setting_action_ok_uint;
|
||||
(*list)[list_info->index - 1].get_string_representation =
|
||||
&setting_get_string_representation_uint_crt_switch_resolutions;
|
||||
settings_data_list_current_add_flags(list, list_info, SD_FLAG_ADVANCED);
|
||||
menu_settings_list_current_add_range(list, list_info, CRT_SWITCH_NONE, CRT_SWITCH_31KHZ, 1.0, true, true);
|
||||
|
||||
@ -6633,6 +6759,8 @@ static bool setting_append_list(
|
||||
parent_group,
|
||||
general_write_handler,
|
||||
general_read_handler);
|
||||
(*list)[list_info->index - 1].get_string_representation =
|
||||
&setting_get_string_representation_uint_xmb_icon_theme;
|
||||
menu_settings_list_current_add_range(list, list_info, 0, XMB_ICON_THEME_LAST - 1, 1, true, true);
|
||||
menu_settings_list_current_add_cmd(list, list_info, CMD_EVENT_REINIT);
|
||||
|
||||
@ -6665,6 +6793,9 @@ static bool setting_append_list(
|
||||
parent_group,
|
||||
general_write_handler,
|
||||
general_read_handler);
|
||||
(*list)[list_info->index - 1].action_ok = &setting_action_ok_uint;
|
||||
(*list)[list_info->index - 1].get_string_representation =
|
||||
&setting_get_string_representation_uint_xmb_shader_pipeline;
|
||||
menu_settings_list_current_add_range(list, list_info, 0, XMB_SHADER_PIPELINE_LAST-1, 1, true, true);
|
||||
}
|
||||
#endif
|
||||
|
Loading…
x
Reference in New Issue
Block a user