From ef149605cd7a18916efb406ac9fe1188172f547b Mon Sep 17 00:00:00 2001 From: twinaphex Date: Tue, 24 Dec 2019 17:18:29 +0100 Subject: [PATCH] (Menu) Reimplement Quick Menu - > Shaders -> Watch shader files for changes - can now be turned on/off through touch --- menu/cbs/menu_cbs_left.c | 13 ------------- menu/cbs/menu_cbs_right.c | 15 --------------- menu/menu_setting.c | 16 ++++++++++++++++ 3 files changed, 16 insertions(+), 28 deletions(-) diff --git a/menu/cbs/menu_cbs_left.c b/menu/cbs/menu_cbs_left.c index 16edf346ae..3bcaaecc32 100644 --- a/menu/cbs/menu_cbs_left.c +++ b/menu/cbs/menu_cbs_left.c @@ -378,14 +378,6 @@ static int action_left_shader_num_passes(unsigned type, const char *label, return 0; } - -static int action_left_shader_watch_for_changes(unsigned type, const char *label, - bool wraparound) -{ - settings_t *settings = config_get_ptr(); - settings->bools.video_shader_watch_files = !settings->bools.video_shader_watch_files; - return 0; -} #endif static int action_left_video_resolution(unsigned type, const char *label, @@ -812,11 +804,6 @@ static int menu_cbs_init_bind_left_compare_label(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_VIDEO_SHADER_DEFAULT_FILTER: #if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) BIND_ACTION_LEFT(cbs, action_left_shader_filter_default); -#endif - break; - case MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES: -#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) - BIND_ACTION_LEFT(cbs, action_left_shader_watch_for_changes); #endif break; case MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES: diff --git a/menu/cbs/menu_cbs_right.c b/menu/cbs/menu_cbs_right.c index 70f20b2602..192479cc06 100644 --- a/menu/cbs/menu_cbs_right.c +++ b/menu/cbs/menu_cbs_right.c @@ -460,16 +460,6 @@ static int action_right_video_gpu_index(unsigned type, const char *label, return 0; } -#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) -static int action_right_shader_watch_for_changes(unsigned type, const char *label, - bool wraparound) -{ - settings_t *settings = config_get_ptr(); - settings->bools.video_shader_watch_files = !settings->bools.video_shader_watch_files; - return 0; -} -#endif - static int action_right_video_resolution(unsigned type, const char *label, bool wraparound) { @@ -954,11 +944,6 @@ static int menu_cbs_init_bind_right_compare_label(menu_file_list_cbs_t *cbs, case MENU_ENUM_LABEL_VIDEO_SHADER_DEFAULT_FILTER: #if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) BIND_ACTION_RIGHT(cbs, action_right_shader_filter_default); -#endif - break; - case MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES: -#if defined(HAVE_CG) || defined(HAVE_GLSL) || defined(HAVE_SLANG) || defined(HAVE_HLSL) - BIND_ACTION_RIGHT(cbs, action_right_shader_watch_for_changes); #endif break; case MENU_ENUM_LABEL_VIDEO_SHADER_NUM_PASSES: diff --git a/menu/menu_setting.c b/menu/menu_setting.c index 91464abcd7..6b479b053f 100644 --- a/menu/menu_setting.c +++ b/menu/menu_setting.c @@ -10149,6 +10149,22 @@ static bool setting_append_list( menu_settings_list_current_add_range(list, list_info, 0, 0, 1, true, false); SETTINGS_DATA_LIST_CURRENT_ADD_FLAGS(list, list_info, SD_FLAG_ADVANCED); + CONFIG_BOOL( + list, list_info, + &settings->bools.video_shader_watch_files, + MENU_ENUM_LABEL_SHADER_WATCH_FOR_CHANGES, + MENU_ENUM_LABEL_VALUE_SHADER_WATCH_FOR_CHANGES, + DEFAULT_VIDEO_SHADER_WATCH_FILES, + MENU_ENUM_LABEL_VALUE_OFF, + MENU_ENUM_LABEL_VALUE_ON, + &group_info, + &subgroup_info, + parent_group, + general_write_handler, + general_read_handler, + SD_FLAG_NONE + ); + #if !defined(RARCH_MOBILE) if (video_driver_test_all_flags(GFX_CTX_FLAGS_BLACK_FRAME_INSERTION)) {