From bf5c97a6c38352d492020cd5d6c7563c709bca9d Mon Sep 17 00:00:00 2001 From: wm4 Date: Mon, 19 Sep 2016 20:16:44 +0200 Subject: options, command: simplify some option updates Remove wrapper properties for OSD and video position updates, use the new mechanism for them. We can mark the options directly. Update behavior will work for more options (since I've casually marked more affected options than the old less direct mechanism covered). --- options/options.c | 76 +++++++++++++++++++++++++++---------------------------- 1 file changed, 38 insertions(+), 38 deletions(-) (limited to 'options/options.c') diff --git a/options/options.c b/options/options.c index 5c1cf59919..df2888f5f9 100644 --- a/options/options.c +++ b/options/options.c @@ -164,13 +164,13 @@ static const m_option_t mp_vo_opt_list[] = { OPT_FLAG("fullscreen", fullscreen, 0), OPT_ALIAS("fs", "fullscreen"), OPT_FLAG("native-keyrepeat", native_keyrepeat, 0), - OPT_FLOATRANGE("panscan", panscan, 0, 0.0, 1.0), - OPT_FLOATRANGE("video-zoom", zoom, 0, -20.0, 20.0), - OPT_FLOATRANGE("video-pan-x", pan_x, 0, -3.0, 3.0), - OPT_FLOATRANGE("video-pan-y", pan_y, 0, -3.0, 3.0), - OPT_FLOATRANGE("video-align-x", align_x, 0, -1.0, 1.0), - OPT_FLOATRANGE("video-align-y", align_y, 0, -1.0, 1.0), - OPT_CHOICE("video-unscaled", unscaled, 0, + OPT_FLOATRANGE("panscan", panscan, UPDATE_VIDEOPOS, 0.0, 1.0), + OPT_FLOATRANGE("video-zoom", zoom, UPDATE_VIDEOPOS, -20.0, 20.0), + OPT_FLOATRANGE("video-pan-x", pan_x, UPDATE_VIDEOPOS, -3.0, 3.0), + OPT_FLOATRANGE("video-pan-y", pan_y, UPDATE_VIDEOPOS, -3.0, 3.0), + OPT_FLOATRANGE("video-align-x", align_x, UPDATE_VIDEOPOS, -1.0, 1.0), + OPT_FLOATRANGE("video-align-y", align_y, UPDATE_VIDEOPOS, -1.0, 1.0), + OPT_CHOICE("video-unscaled", unscaled, UPDATE_VIDEOPOS, ({"no", 0}, {"yes", 1}, {"downscale-big", 2})), OPT_INT64("wid", WinID, 0), OPT_CHOICE_OR_INT("screen", screen_id, 0, 0, 32, @@ -178,7 +178,7 @@ static const m_option_t mp_vo_opt_list[] = { OPT_CHOICE_OR_INT("fs-screen", fsscreen_id, 0, 0, 32, ({"all", -2}, {"current", -1})), OPT_FLAG("fs-black-out-screens", fs_black_out_screens, 0), - OPT_FLAG("keepaspect", keepaspect, 0), + OPT_FLAG("keepaspect", keepaspect, UPDATE_VIDEOPOS), OPT_FLAG("keepaspect-window", keepaspect_window, 0), #if HAVE_X11 OPT_CHOICE("x11-netwm", x11_netwm, 0, @@ -446,47 +446,47 @@ const m_option_t mp_opts[] = { OPT_PATHLIST("audio-file-paths", audiofile_paths, 0), OPT_STRING_APPEND_LIST("external-file", external_files, M_OPT_FILE), OPT_FLAG("autoload-files", autoload_files, 0), - OPT_FLOAT("sub-delay", sub_delay, 0), - OPT_FLOAT("sub-fps", sub_fps, 0), - OPT_FLOAT("sub-speed", sub_speed, 0), - OPT_FLAG("sub-visibility", sub_visibility, 0), - OPT_FLAG("sub-forced-only", forced_subs_only, 0), - OPT_FLAG("stretch-dvd-subs", stretch_dvd_subs, 0), - OPT_FLAG("stretch-image-subs-to-screen", stretch_image_subs, 0), + OPT_FLOAT("sub-delay", sub_delay, UPDATE_OSD), + OPT_FLOAT("sub-fps", sub_fps, UPDATE_OSD), + OPT_FLOAT("sub-speed", sub_speed, UPDATE_OSD), + OPT_FLAG("sub-visibility", sub_visibility, UPDATE_OSD), + OPT_FLAG("sub-forced-only", forced_subs_only, UPDATE_OSD), + OPT_FLAG("stretch-dvd-subs", stretch_dvd_subs, UPDATE_OSD), + OPT_FLAG("stretch-image-subs-to-screen", stretch_image_subs, UPDATE_OSD), OPT_FLAG("sub-fix-timing", sub_fix_timing, 0), OPT_CHOICE("sub-auto", sub_auto, 0, ({"no", -1}, {"exact", 0}, {"fuzzy", 1}, {"all", 2})), OPT_CHOICE("audio-file-auto", audiofile_auto, 0, ({"no", -1}, {"exact", 0}, {"fuzzy", 1}, {"all", 2})), - OPT_INTRANGE("sub-pos", sub_pos, 0, 0, 100), - OPT_FLOATRANGE("sub-gauss", sub_gauss, 0, 0.0, 3.0), - OPT_FLAG("sub-gray", sub_gray, 0), + OPT_INTRANGE("sub-pos", sub_pos, UPDATE_OSD, 0, 100), + OPT_FLOATRANGE("sub-gauss", sub_gauss, UPDATE_OSD, 0.0, 3.0), + OPT_FLAG("sub-gray", sub_gray, UPDATE_OSD), OPT_FLAG("sub-ass", ass_enabled, 0), - OPT_FLOATRANGE("sub-scale", sub_scale, 0, 0, 100), - OPT_FLOATRANGE("ass-line-spacing", ass_line_spacing, 0, -1000, 1000), - OPT_FLAG("sub-use-margins", sub_use_margins, 0), - OPT_FLAG("ass-force-margins", ass_use_margins, 0), - OPT_FLAG("ass-vsfilter-aspect-compat", ass_vsfilter_aspect_compat, 0), - OPT_CHOICE("ass-vsfilter-color-compat", ass_vsfilter_color_compat, 0, + OPT_FLOATRANGE("sub-scale", sub_scale, UPDATE_OSD, 0, 100), + OPT_FLOATRANGE("ass-line-spacing", ass_line_spacing, UPDATE_OSD, -1000, 1000), + OPT_FLAG("sub-use-margins", sub_use_margins, UPDATE_OSD), + OPT_FLAG("ass-force-margins", ass_use_margins, UPDATE_OSD), + OPT_FLAG("ass-vsfilter-aspect-compat", ass_vsfilter_aspect_compat, UPDATE_OSD), + OPT_CHOICE("ass-vsfilter-color-compat", ass_vsfilter_color_compat, UPDATE_OSD, ({"no", 0}, {"basic", 1}, {"full", 2}, {"force-601", 3})), - OPT_FLAG("ass-vsfilter-blur-compat", ass_vsfilter_blur_compat, 0), + OPT_FLAG("ass-vsfilter-blur-compat", ass_vsfilter_blur_compat, UPDATE_OSD), OPT_FLAG("embeddedfonts", use_embedded_fonts, 0), - OPT_STRINGLIST("ass-force-style", ass_force_style_list, 0), + OPT_STRINGLIST("ass-force-style", ass_force_style_list, UPDATE_OSD), OPT_STRING("ass-styles", ass_styles_file, M_OPT_FILE), - OPT_CHOICE("ass-hinting", ass_hinting, 0, + OPT_CHOICE("ass-hinting", ass_hinting, UPDATE_OSD, ({"none", 0}, {"light", 1}, {"normal", 2}, {"native", 3})), - OPT_CHOICE("ass-shaper", ass_shaper, 0, + OPT_CHOICE("ass-shaper", ass_shaper, UPDATE_OSD, ({"simple", 0}, {"complex", 1})), - OPT_CHOICE("ass-style-override", ass_style_override, 0, + OPT_CHOICE("ass-style-override", ass_style_override, UPDATE_OSD, ({"no", 0}, {"yes", 1}, {"force", 3}, {"signfs", 4}, {"strip", 5})), - OPT_FLAG("sub-scale-by-window", sub_scale_by_window, 0), - OPT_FLAG("sub-scale-with-window", sub_scale_with_window, 0), - OPT_FLAG("ass-scale-with-window", ass_scale_with_window, 0), - OPT_FLAG("osd-bar", osd_bar_visible, 0), - OPT_FLOATRANGE("osd-bar-align-x", osd_bar_align_x, 0, -1.0, +1.0), - OPT_FLOATRANGE("osd-bar-align-y", osd_bar_align_y, 0, -1.0, +1.0), - OPT_FLOATRANGE("osd-bar-w", osd_bar_w, 0, 1, 100), - OPT_FLOATRANGE("osd-bar-h", osd_bar_h, 0, 0.1, 50), + OPT_FLAG("sub-scale-by-window", sub_scale_by_window, UPDATE_OSD), + OPT_FLAG("sub-scale-with-window", sub_scale_with_window, UPDATE_OSD), + OPT_FLAG("ass-scale-with-window", ass_scale_with_window, UPDATE_OSD), + OPT_FLAG("osd-bar", osd_bar_visible, UPDATE_OSD), + OPT_FLOATRANGE("osd-bar-align-x", osd_bar_align_x, UPDATE_OSD, -1.0, +1.0), + OPT_FLOATRANGE("osd-bar-align-y", osd_bar_align_y, UPDATE_OSD, -1.0, +1.0), + OPT_FLOATRANGE("osd-bar-w", osd_bar_w, UPDATE_OSD, 1, 100), + OPT_FLOATRANGE("osd-bar-h", osd_bar_h, UPDATE_OSD, 0.1, 50), OPT_SUBSTRUCT("osd", osd_style, osd_style_conf, 0), OPT_SUBSTRUCT("sub-text", sub_text_style, sub_style_conf, 0), OPT_FLAG("sub-clear-on-seek", sub_clear_on_seek, 0), @@ -557,7 +557,7 @@ const m_option_t mp_opts[] = { ({"0", 0}, {"1", 1}, {"2", 2}, {"3", 3})), OPT_INTRANGE("osd-duration", osd_duration, 0, 0, 3600000), OPT_FLAG("osd-fractions", osd_fractions, 0), - OPT_FLOATRANGE("osd-scale", osd_scale, 0, 0, 100), + OPT_FLOATRANGE("osd-scale", osd_scale, UPDATE_OSD, 0, 100), OPT_FLAG("osd-scale-by-window", osd_scale_by_window, 0), OPT_DOUBLE("sstep", step_sec, CONF_MIN, 0), -- cgit v1.2.3