diff --git a/menu/cbs/menu_cbs_start.c b/menu/cbs/menu_cbs_start.c index 2c1fe31285..c517d94716 100644 --- a/menu/cbs/menu_cbs_start.c +++ b/menu/cbs/menu_cbs_start.c @@ -141,64 +141,38 @@ static int action_start_shader_action_parameter(unsigned type, const char *label static int action_start_shader_action_preset_parameter(unsigned type, const char *label) { -#ifdef HAVE_SHADER_MANAGER unsigned parameter = type - MENU_SETTINGS_SHADER_PRESET_PARAMETER_0; return menu_shader_manager_clear_parameter(parameter); -#else - return 0; -#endif } static int action_start_shader_pass(unsigned type, const char *label) { -#ifdef HAVE_SHADER_MANAGER hack_shader_pass = type - MENU_SETTINGS_SHADER_PASS_0; menu_shader_manager_clear_pass_path(hack_shader_pass); -#endif + return 0; } static int action_start_shader_scale_pass(unsigned type, const char *label) { -#ifdef HAVE_SHADER_MANAGER unsigned pass = type - MENU_SETTINGS_SHADER_PASS_SCALE_0; menu_shader_manager_clear_pass_scale(pass); -#endif return 0; } static int action_start_shader_filter_pass(unsigned type, const char *label) { -#ifdef HAVE_SHADER_MANAGER unsigned pass = type - MENU_SETTINGS_SHADER_PASS_FILTER_0; return menu_shader_manager_clear_pass_filter(pass); -#endif - - return 0; } static int action_start_shader_num_passes(unsigned type, const char *label) { -#ifdef HAVE_SHADER_MANAGER - bool refresh = false; - struct video_shader *shader = NULL; - - menu_driver_ctl(RARCH_MENU_CTL_SHADER_GET, - &shader); - - if (!shader) - return -1; - if (shader->passes) - shader->passes = 0; - - menu_entries_ctl(MENU_ENTRIES_CTL_SET_REFRESH, &refresh); - video_shader_resolve_parameters(NULL, shader); -#endif - return 0; + return menu_shader_manager_clear_num_passes(); } static int action_start_cheat_num_passes(unsigned type, const char *label) diff --git a/menu/menu_shader.c b/menu/menu_shader.c index 9e8e03535e..cf7b3b80a6 100644 --- a/menu/menu_shader.c +++ b/menu/menu_shader.c @@ -361,8 +361,30 @@ bool menu_shader_manager_save_preset( return false; } +int menu_shader_manager_clear_num_passes(void) +{ +#ifdef HAVE_SHADER_MANAGER + bool refresh = false; + struct video_shader *shader = NULL; + + menu_driver_ctl(RARCH_MENU_CTL_SHADER_GET, + &shader); + + if (!shader) + return -1; + if (shader->passes) + shader->passes = 0; + + menu_entries_ctl(MENU_ENTRIES_CTL_SET_REFRESH, &refresh); + video_shader_resolve_parameters(NULL, shader); +#endif + + return 0; +} + int menu_shader_manager_clear_parameter(unsigned i) { +#ifdef HAVE_SHADER_MANAGER struct video_shader *shader = NULL; struct video_shader_parameter *param = NULL; @@ -375,6 +397,7 @@ int menu_shader_manager_clear_parameter(unsigned i) param = &shader->parameters[i]; param->current = param->initial; param->current = MIN(MAX(param->minimum, param->current), param->maximum); +#endif return 0; } diff --git a/menu/menu_shader.h b/menu/menu_shader.h index 0e30b5aeb4..5110b62d5c 100644 --- a/menu/menu_shader.h +++ b/menu/menu_shader.h @@ -66,6 +66,8 @@ unsigned menu_shader_manager_get_type(const void *data); **/ void menu_shader_manager_apply_changes(void); +int menu_shader_manager_clear_num_passes(void); + int menu_shader_manager_clear_parameter(unsigned i); int menu_shader_manager_clear_pass_filter(unsigned i);