mirror of
https://github.com/libretro/RetroArch
synced 2025-03-02 19:13:34 +00:00
(Menu) Fix shader parameters
This commit is contained in:
parent
dd3c6588ea
commit
7bf45b23e9
@ -1305,7 +1305,10 @@ static int menu_setting_toggle(unsigned type,
|
||||
{
|
||||
struct retro_perf_counter **counters = NULL;
|
||||
|
||||
if (menu_common_type_is(label, type) == MENU_SETTINGS_SHADER_OPTIONS)
|
||||
if ((menu_common_type_is(label, type) == MENU_SETTINGS_SHADER_OPTIONS) ||
|
||||
!strcmp(label, "video_shader_parameters") ||
|
||||
!strcmp(label, "video_shader_preset_parameters")
|
||||
)
|
||||
{
|
||||
if (driver.menu_ctx && driver.menu_ctx->backend
|
||||
&& driver.menu_ctx->backend->shader_manager_setting_toggle)
|
||||
@ -2207,7 +2210,9 @@ static void menu_common_setting_set_label(char *type_str,
|
||||
rarch_setting_t *setting = (rarch_setting_t*)setting_data_find_setting(setting_data,
|
||||
driver.menu->selection_buf->list[index].label);
|
||||
|
||||
if (!strcmp(menu_label, "Shader Options")
|
||||
if ((!strcmp(menu_label, "Shader Options") ||
|
||||
!strcmp(menu_label, "video_shader_parameters") ||
|
||||
!strcmp(menu_label, "video_shader_preset_parameters"))
|
||||
&&
|
||||
driver.menu_ctx && driver.menu_ctx->backend &&
|
||||
driver.menu_ctx->backend->shader_manager_get_str
|
||||
|
@ -334,11 +334,6 @@ static int menu_common_shader_manager_setting_toggle(
|
||||
setting_data, "video_smooth")))
|
||||
menu_common_setting_set_current_boolean(current_setting, action);
|
||||
}
|
||||
else if ((!strcmp(label, "video_shader_parameters") ||
|
||||
!strcmp(label, "video_shader_preset_parameters"))
|
||||
&& action == MENU_ACTION_OK)
|
||||
menu_entries_push(driver.menu->menu_stack, "",
|
||||
"video_shader_parameters", MENU_FILE_SWITCH, driver.menu->selection_ptr);
|
||||
else if (id >= MENU_SETTINGS_SHADER_PARAMETER_0
|
||||
&& id <= MENU_SETTINGS_SHADER_PARAMETER_LAST)
|
||||
{
|
||||
@ -371,6 +366,11 @@ static int menu_common_shader_manager_setting_toggle(
|
||||
|
||||
param->current = min(max(param->minimum, param->current), param->maximum);
|
||||
}
|
||||
else if ((!strcmp(label, "video_shader_parameters") ||
|
||||
!strcmp(label, "video_shader_preset_parameters"))
|
||||
&& action == MENU_ACTION_OK)
|
||||
menu_entries_push(driver.menu->menu_stack, "",
|
||||
"video_shader_parameters", MENU_FILE_SWITCH, driver.menu->selection_ptr);
|
||||
else if (!strcmp(label, "shader_apply_changes") ||
|
||||
!strcmp(label, "video_shader_passes"))
|
||||
menu_setting_set(id, label, action);
|
||||
|
@ -35,7 +35,8 @@ static void entries_refresh(file_list_t *list)
|
||||
static inline struct gfx_shader *shader_manager_get_current_shader(
|
||||
menu_handle_t *menu, const char *label, unsigned type)
|
||||
{
|
||||
if (!strcmp(label, "video_shader_preset_parameters"))
|
||||
if (!strcmp(label, "video_shader_preset_parameters") ||
|
||||
!strcmp(label, "video_shader_parameters"))
|
||||
return menu->shader;
|
||||
else if (driver.video_poke && driver.video_data &&
|
||||
driver.video_poke->get_current_shader)
|
||||
@ -538,7 +539,7 @@ int menu_entries_push_list(menu_handle_t *menu,
|
||||
if (shader)
|
||||
for (i = 0; i < shader->num_parameters; i++)
|
||||
file_list_push(list,
|
||||
shader->parameters[i].desc, "",
|
||||
shader->parameters[i].desc, label,
|
||||
MENU_SETTINGS_SHADER_PARAMETER_0 + i, 0);
|
||||
menu->parameter_shader = shader;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user