mirror of
https://github.com/libretro/RetroArch
synced 2025-03-03 13:14:04 +00:00
(menu) menu_displaylist_build_list - cleanups
This commit is contained in:
parent
08d1b847fd
commit
8a6584d0df
@ -6282,6 +6282,156 @@ unsigned menu_displaylist_build_list(
|
|||||||
|
|
||||||
switch (type)
|
switch (type)
|
||||||
{
|
{
|
||||||
|
case DISPLAYLIST_OPTIONS_OVERRIDES:
|
||||||
|
{
|
||||||
|
runloop_state_t *runloop_st = runloop_state_get_ptr();
|
||||||
|
rarch_system_info_t *system = &runloop_st->system;
|
||||||
|
|
||||||
|
const char *rarch_path_basename = path_get(RARCH_PATH_BASENAME);
|
||||||
|
const char *core_name = system ? system->info.library_name : NULL;
|
||||||
|
char config_directory[PATH_MAX_LENGTH];
|
||||||
|
char content_dir_name[PATH_MAX_LENGTH];
|
||||||
|
char override_path[PATH_MAX_LENGTH];
|
||||||
|
bool has_content = !string_is_empty(path_get(RARCH_PATH_CONTENT));
|
||||||
|
bool core_override_remove = false;
|
||||||
|
bool content_dir_override_remove = false;
|
||||||
|
bool game_override_remove = false;
|
||||||
|
|
||||||
|
config_directory[0] = '\0';
|
||||||
|
content_dir_name[0] = '\0';
|
||||||
|
override_path[0] = '\0';
|
||||||
|
|
||||||
|
fill_pathname_application_special(config_directory,
|
||||||
|
sizeof(config_directory),
|
||||||
|
APPLICATION_SPECIAL_DIRECTORY_CONFIG);
|
||||||
|
|
||||||
|
if (has_content)
|
||||||
|
{
|
||||||
|
/* Game-specific path */
|
||||||
|
fill_pathname_join_special_ext(override_path,
|
||||||
|
config_directory, core_name,
|
||||||
|
path_basename_nocompression(rarch_path_basename),
|
||||||
|
FILE_PATH_CONFIG_EXTENSION,
|
||||||
|
sizeof(override_path));
|
||||||
|
|
||||||
|
game_override_remove = path_is_valid(override_path);
|
||||||
|
override_path[0] = '\0';
|
||||||
|
|
||||||
|
/* Contentdir-specific path */
|
||||||
|
fill_pathname_parent_dir_name(content_dir_name,
|
||||||
|
rarch_path_basename, sizeof(content_dir_name));
|
||||||
|
fill_pathname_join_special_ext(override_path,
|
||||||
|
config_directory, core_name,
|
||||||
|
content_dir_name,
|
||||||
|
FILE_PATH_CONFIG_EXTENSION,
|
||||||
|
sizeof(override_path));
|
||||||
|
|
||||||
|
content_dir_override_remove = path_is_valid(override_path);
|
||||||
|
override_path[0] = '\0';
|
||||||
|
}
|
||||||
|
|
||||||
|
{
|
||||||
|
/* Core-specific path */
|
||||||
|
fill_pathname_join_special_ext(override_path,
|
||||||
|
config_directory, core_name,
|
||||||
|
core_name,
|
||||||
|
FILE_PATH_CONFIG_EXTENSION,
|
||||||
|
sizeof(override_path));
|
||||||
|
|
||||||
|
core_override_remove = path_is_valid(override_path);
|
||||||
|
override_path[0] = '\0';
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Show currently 'active' override file */
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OVERRIDE_FILE_INFO),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_OVERRIDE_FILE_INFO),
|
||||||
|
MENU_ENUM_LABEL_OVERRIDE_FILE_INFO,
|
||||||
|
MENU_SETTINGS_CORE_INFO_NONE, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
|
||||||
|
/* Load override file */
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OVERRIDE_FILE_LOAD),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_OVERRIDE_FILE_LOAD),
|
||||||
|
MENU_ENUM_LABEL_OVERRIDE_FILE_LOAD,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
|
||||||
|
if ( has_content
|
||||||
|
&& settings->bools.quick_menu_show_save_game_overrides
|
||||||
|
&& !settings->bools.kiosk_mode_enable)
|
||||||
|
{
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
||||||
|
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
|
||||||
|
if (game_override_remove)
|
||||||
|
{
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_REMOVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
||||||
|
MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_GAME,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( has_content
|
||||||
|
&& settings->bools.quick_menu_show_save_content_dir_overrides
|
||||||
|
&& !settings->bools.kiosk_mode_enable)
|
||||||
|
{
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
||||||
|
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
|
||||||
|
if (content_dir_override_remove)
|
||||||
|
{
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_REMOVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
||||||
|
MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if ( settings->bools.quick_menu_show_save_core_overrides
|
||||||
|
&& !settings->bools.kiosk_mode_enable)
|
||||||
|
{
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
||||||
|
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
|
||||||
|
if (core_override_remove)
|
||||||
|
{
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_REMOVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
||||||
|
MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CORE,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Unload overrides */
|
||||||
|
if (menu_entries_append(list,
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OVERRIDE_UNLOAD),
|
||||||
|
msg_hash_to_str(MENU_ENUM_LABEL_OVERRIDE_UNLOAD),
|
||||||
|
MENU_ENUM_LABEL_OVERRIDE_UNLOAD,
|
||||||
|
MENU_SETTING_ACTION, 0, 0, NULL))
|
||||||
|
count++;
|
||||||
|
}
|
||||||
|
break;
|
||||||
case DISPLAYLIST_ARCHIVE_ACTION:
|
case DISPLAYLIST_ARCHIVE_ACTION:
|
||||||
{
|
{
|
||||||
menu_displaylist_build_info_selective_t build_list[] = {
|
menu_displaylist_build_info_selective_t build_list[] = {
|
||||||
@ -13338,6 +13488,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
case DISPLAYLIST_STEAM_SETTINGS_LIST:
|
case DISPLAYLIST_STEAM_SETTINGS_LIST:
|
||||||
#endif
|
#endif
|
||||||
case DISPLAYLIST_ARCHIVE_ACTION:
|
case DISPLAYLIST_ARCHIVE_ACTION:
|
||||||
|
case DISPLAYLIST_OPTIONS_OVERRIDES:
|
||||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||||
count = menu_displaylist_build_list(info->list, settings, type, false);
|
count = menu_displaylist_build_list(info->list, settings, type, false);
|
||||||
|
|
||||||
@ -13673,166 +13824,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
ret = 0;
|
ret = 0;
|
||||||
info->flags |= MD_FLAG_NEED_PUSH;
|
info->flags |= MD_FLAG_NEED_PUSH;
|
||||||
break;
|
break;
|
||||||
case DISPLAYLIST_OPTIONS_OVERRIDES:
|
|
||||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
|
||||||
{
|
|
||||||
runloop_state_t *runloop_st = runloop_state_get_ptr();
|
|
||||||
rarch_system_info_t *system = &runloop_st->system;
|
|
||||||
|
|
||||||
const char *rarch_path_basename = path_get(RARCH_PATH_BASENAME);
|
|
||||||
const char *core_name = system ? system->info.library_name : NULL;
|
|
||||||
char config_directory[PATH_MAX_LENGTH];
|
|
||||||
char content_dir_name[PATH_MAX_LENGTH];
|
|
||||||
char override_path[PATH_MAX_LENGTH];
|
|
||||||
bool has_content = !string_is_empty(path_get(RARCH_PATH_CONTENT));
|
|
||||||
bool core_override_remove = false;
|
|
||||||
bool content_dir_override_remove = false;
|
|
||||||
bool game_override_remove = false;
|
|
||||||
|
|
||||||
config_directory[0] = '\0';
|
|
||||||
content_dir_name[0] = '\0';
|
|
||||||
override_path[0] = '\0';
|
|
||||||
|
|
||||||
fill_pathname_application_special(config_directory,
|
|
||||||
sizeof(config_directory),
|
|
||||||
APPLICATION_SPECIAL_DIRECTORY_CONFIG);
|
|
||||||
|
|
||||||
if (has_content)
|
|
||||||
{
|
|
||||||
/* Game-specific path */
|
|
||||||
fill_pathname_join_special_ext(override_path,
|
|
||||||
config_directory, core_name,
|
|
||||||
path_basename_nocompression(rarch_path_basename),
|
|
||||||
FILE_PATH_CONFIG_EXTENSION,
|
|
||||||
sizeof(override_path));
|
|
||||||
|
|
||||||
game_override_remove = path_is_valid(override_path);
|
|
||||||
override_path[0] = '\0';
|
|
||||||
|
|
||||||
/* Contentdir-specific path */
|
|
||||||
fill_pathname_parent_dir_name(content_dir_name,
|
|
||||||
rarch_path_basename, sizeof(content_dir_name));
|
|
||||||
fill_pathname_join_special_ext(override_path,
|
|
||||||
config_directory, core_name,
|
|
||||||
content_dir_name,
|
|
||||||
FILE_PATH_CONFIG_EXTENSION,
|
|
||||||
sizeof(override_path));
|
|
||||||
|
|
||||||
content_dir_override_remove = path_is_valid(override_path);
|
|
||||||
override_path[0] = '\0';
|
|
||||||
}
|
|
||||||
|
|
||||||
{
|
|
||||||
/* Core-specific path */
|
|
||||||
fill_pathname_join_special_ext(override_path,
|
|
||||||
config_directory, core_name,
|
|
||||||
core_name,
|
|
||||||
FILE_PATH_CONFIG_EXTENSION,
|
|
||||||
sizeof(override_path));
|
|
||||||
|
|
||||||
core_override_remove = path_is_valid(override_path);
|
|
||||||
override_path[0] = '\0';
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Show currently 'active' override file */
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OVERRIDE_FILE_INFO),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_OVERRIDE_FILE_INFO),
|
|
||||||
MENU_ENUM_LABEL_OVERRIDE_FILE_INFO,
|
|
||||||
MENU_SETTINGS_CORE_INFO_NONE, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
|
|
||||||
/* Load override file */
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OVERRIDE_FILE_LOAD),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_OVERRIDE_FILE_LOAD),
|
|
||||||
MENU_ENUM_LABEL_OVERRIDE_FILE_LOAD,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
|
|
||||||
if ( has_content
|
|
||||||
&& settings->bools.quick_menu_show_save_game_overrides
|
|
||||||
&& !settings->bools.kiosk_mode_enable)
|
|
||||||
{
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
|
||||||
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_GAME,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
|
|
||||||
if (game_override_remove)
|
|
||||||
{
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_REMOVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_GAME),
|
|
||||||
MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_GAME,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( has_content
|
|
||||||
&& settings->bools.quick_menu_show_save_content_dir_overrides
|
|
||||||
&& !settings->bools.kiosk_mode_enable)
|
|
||||||
{
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
|
||||||
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
|
|
||||||
if (content_dir_override_remove)
|
|
||||||
{
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_REMOVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR),
|
|
||||||
MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CONTENT_DIR,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
if ( settings->bools.quick_menu_show_save_core_overrides
|
|
||||||
&& !settings->bools.kiosk_mode_enable)
|
|
||||||
{
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_SAVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
|
||||||
MENU_ENUM_LABEL_SAVE_CURRENT_CONFIG_OVERRIDE_CORE,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
|
|
||||||
if (core_override_remove)
|
|
||||||
{
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_REMOVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CORE),
|
|
||||||
MENU_ENUM_LABEL_REMOVE_CURRENT_CONFIG_OVERRIDE_CORE,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Unload overrides */
|
|
||||||
if (menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_OVERRIDE_UNLOAD),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_OVERRIDE_UNLOAD),
|
|
||||||
MENU_ENUM_LABEL_OVERRIDE_UNLOAD,
|
|
||||||
MENU_SETTING_ACTION, 0, 0, NULL))
|
|
||||||
count++;
|
|
||||||
}
|
|
||||||
|
|
||||||
if (count == 0)
|
|
||||||
menu_entries_append(info->list,
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_VALUE_NO_SETTINGS_FOUND),
|
|
||||||
msg_hash_to_str(MENU_ENUM_LABEL_NO_SETTINGS_FOUND),
|
|
||||||
MENU_ENUM_LABEL_NO_SETTINGS_FOUND,
|
|
||||||
0, 0, 0, NULL);
|
|
||||||
|
|
||||||
info->flags |= MD_FLAG_NEED_PUSH;
|
|
||||||
break;
|
|
||||||
case DISPLAYLIST_SHADER_PARAMETERS:
|
case DISPLAYLIST_SHADER_PARAMETERS:
|
||||||
case DISPLAYLIST_SHADER_PARAMETERS_PRESET:
|
case DISPLAYLIST_SHADER_PARAMETERS_PRESET:
|
||||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||||
@ -14118,9 +14109,9 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
info->type_default = FILE_TYPE_RDB;
|
info->type_default = FILE_TYPE_RDB;
|
||||||
info->exts = strldup(".rdb", sizeof(".rdb"));
|
info->exts = strldup(".rdb", sizeof(".rdb"));
|
||||||
info->enum_idx = MENU_ENUM_LABEL_PLAYLISTS_TAB;
|
info->enum_idx = MENU_ENUM_LABEL_PLAYLISTS_TAB;
|
||||||
|
info->path = strdup(settings->paths.path_content_database);
|
||||||
load_content = false;
|
load_content = false;
|
||||||
use_filebrowser = true;
|
use_filebrowser = true;
|
||||||
info->path = strdup(settings->paths.path_content_database);
|
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case DISPLAYLIST_SHADER_PASS:
|
case DISPLAYLIST_SHADER_PASS:
|
||||||
@ -14175,38 +14166,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case DISPLAYLIST_SHADER_PRESET_PREPEND:
|
case DISPLAYLIST_SHADER_PRESET_PREPEND:
|
||||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
|
||||||
#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL)
|
|
||||||
{
|
|
||||||
struct string_list str_list = {0};
|
|
||||||
char new_exts[PATH_MAX_LENGTH];
|
|
||||||
union string_list_elem_attr attr;
|
|
||||||
|
|
||||||
attr.i = 0;
|
|
||||||
|
|
||||||
new_exts[0] = '\0';
|
|
||||||
|
|
||||||
string_list_initialize(&str_list);
|
|
||||||
|
|
||||||
filebrowser_clear_type();
|
|
||||||
|
|
||||||
info->type_default = FILE_TYPE_SHADER_PRESET;
|
|
||||||
if (video_shader_is_supported(RARCH_SHADER_CG))
|
|
||||||
string_list_append(&str_list, "cgp", attr);
|
|
||||||
if (video_shader_is_supported(RARCH_SHADER_GLSL))
|
|
||||||
string_list_append(&str_list, "glslp", attr);
|
|
||||||
if (video_shader_is_supported(RARCH_SHADER_SLANG))
|
|
||||||
string_list_append(&str_list, "slangp", attr);
|
|
||||||
|
|
||||||
string_list_join_concat(new_exts, sizeof(new_exts), &str_list, "|");
|
|
||||||
if (!string_is_empty(info->exts))
|
|
||||||
free(info->exts);
|
|
||||||
info->exts = strdup(new_exts);
|
|
||||||
string_list_deinitialize(&str_list);
|
|
||||||
use_filebrowser = true;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
break;
|
|
||||||
case DISPLAYLIST_SHADER_PRESET_APPEND:
|
case DISPLAYLIST_SHADER_PRESET_APPEND:
|
||||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||||
#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL)
|
#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL)
|
||||||
@ -14214,15 +14173,10 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
struct string_list str_list = {0};
|
struct string_list str_list = {0};
|
||||||
char new_exts[PATH_MAX_LENGTH];
|
char new_exts[PATH_MAX_LENGTH];
|
||||||
union string_list_elem_attr attr;
|
union string_list_elem_attr attr;
|
||||||
|
|
||||||
attr.i = 0;
|
attr.i = 0;
|
||||||
|
|
||||||
new_exts[0] = '\0';
|
new_exts[0] = '\0';
|
||||||
|
|
||||||
string_list_initialize(&str_list);
|
string_list_initialize(&str_list);
|
||||||
|
|
||||||
filebrowser_clear_type();
|
filebrowser_clear_type();
|
||||||
|
|
||||||
info->type_default = FILE_TYPE_SHADER_PRESET;
|
info->type_default = FILE_TYPE_SHADER_PRESET;
|
||||||
if (video_shader_is_supported(RARCH_SHADER_CG))
|
if (video_shader_is_supported(RARCH_SHADER_CG))
|
||||||
string_list_append(&str_list, "cgp", attr);
|
string_list_append(&str_list, "cgp", attr);
|
||||||
@ -14230,7 +14184,6 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
string_list_append(&str_list, "glslp", attr);
|
string_list_append(&str_list, "glslp", attr);
|
||||||
if (video_shader_is_supported(RARCH_SHADER_SLANG))
|
if (video_shader_is_supported(RARCH_SHADER_SLANG))
|
||||||
string_list_append(&str_list, "slangp", attr);
|
string_list_append(&str_list, "slangp", attr);
|
||||||
|
|
||||||
string_list_join_concat(new_exts, sizeof(new_exts), &str_list, "|");
|
string_list_join_concat(new_exts, sizeof(new_exts), &str_list, "|");
|
||||||
if (!string_is_empty(info->exts))
|
if (!string_is_empty(info->exts))
|
||||||
free(info->exts);
|
free(info->exts);
|
||||||
@ -14239,7 +14192,7 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
use_filebrowser = true;
|
use_filebrowser = true;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
break;
|
break;
|
||||||
case DISPLAYLIST_IMAGES:
|
case DISPLAYLIST_IMAGES:
|
||||||
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
menu_entries_ctl(MENU_ENTRIES_CTL_CLEAR, info->list);
|
||||||
if ( (filebrowser_get_type() != FILEBROWSER_SELECT_FILE)
|
if ( (filebrowser_get_type() != FILEBROWSER_SELECT_FILE)
|
||||||
@ -14250,12 +14203,8 @@ bool menu_displaylist_ctl(enum menu_displaylist_ctl_state type,
|
|||||||
char new_exts[PATH_MAX_LENGTH];
|
char new_exts[PATH_MAX_LENGTH];
|
||||||
union string_list_elem_attr attr;
|
union string_list_elem_attr attr;
|
||||||
struct string_list *str_list = string_list_new();
|
struct string_list *str_list = string_list_new();
|
||||||
|
|
||||||
attr.i = 0;
|
attr.i = 0;
|
||||||
new_exts[0] = '\0';
|
new_exts[0] = '\0';
|
||||||
|
|
||||||
(void)attr;
|
|
||||||
|
|
||||||
#ifdef HAVE_RBMP
|
#ifdef HAVE_RBMP
|
||||||
string_list_append(str_list, "bmp", attr);
|
string_list_append(str_list, "bmp", attr);
|
||||||
#endif
|
#endif
|
||||||
|
Loading…
x
Reference in New Issue
Block a user