From b1f40955d9a9c205581bd8fff3ed04320dbe95da Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Sat, 15 Feb 2020 09:49:22 +1100 Subject: Cleanup: incorrect __contains__ comparison, long line --- release/scripts/startup/bl_ui/space_sequencer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index af0c23e7892..f05a0e18eed 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -842,7 +842,7 @@ class SEQUENCER_MT_context_menu(Menu): }: layout.separator() layout.menu("SEQUENCER_MT_strip_effect") - elif strip_type in 'MOVIE': + elif strip_type == 'MOVIE': layout.separator() layout.menu("SEQUENCER_MT_strip_movie") elif strip_type == 'IMAGE': -- cgit v1.2.3 From 819af2094b21a78d57c7480a649f97502c09ec1f Mon Sep 17 00:00:00 2001 From: William Reynish Date: Sun, 16 Feb 2020 21:39:12 +0100 Subject: Rename Sequencer 'Cut' to 'Split' This avoids the ambiguity with the Cut operator in the Sequencer, which could be confused with Cut/Copy/Paste. Use 'Split' for the operator and 'Blade' for the active tool. Patch by Nathan Lovato, with edits Differential Revision: https://developer.blender.org/D5542 --- release/scripts/startup/bl_ui/space_sequencer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index f05a0e18eed..903416b78e6 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -716,8 +716,8 @@ class SEQUENCER_MT_strip(Menu): layout.menu("SEQUENCER_MT_strip_transform") layout.separator() - layout.operator("sequencer.cut", text="Cut").type = 'SOFT' - layout.operator("sequencer.cut", text="Hold Cut").type = 'HARD' + layout.operator("sequencer.split", text="Split").type = 'SOFT' + layout.operator("sequencer.split", text="Hold Split").type = 'HARD' layout.separator() layout.operator("sequencer.copy", text="Copy") -- cgit v1.2.3 From c0423c871d1dde5a6bb094768c3310c66b795586 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 17 Feb 2020 20:44:18 +1100 Subject: Keymap: add sequencer box select with handles Use Ctrl-B, include in menu, rename property to match graph editor. --- release/scripts/startup/bl_ui/space_sequencer.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 903416b78e6..72583519800 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -404,6 +404,8 @@ class SEQUENCER_MT_select(Menu): layout.separator() layout.operator("sequencer.select_box", text="Box Select") + props = layout.operator("sequencer.select_box", text="Box Select (Handles)") + props.include_handles = True layout.separator() -- cgit v1.2.3 From c64cea14edddd50d33a6c43c0327edd8ce186e30 Mon Sep 17 00:00:00 2001 From: Campbell Barton Date: Mon, 17 Feb 2020 20:55:23 +1100 Subject: Keymap: minor tweaks so box-select shortcuts show in the menu --- release/scripts/startup/bl_ui/space_sequencer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 72583519800..1cb3829708a 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -404,7 +404,7 @@ class SEQUENCER_MT_select(Menu): layout.separator() layout.operator("sequencer.select_box", text="Box Select") - props = layout.operator("sequencer.select_box", text="Box Select (Handles)") + props = layout.operator("sequencer.select_box", text="Box Select (Include Handles)") props.include_handles = True layout.separator() -- cgit v1.2.3 From d119e163d0a867fe0263d751231b838c57b95b31 Mon Sep 17 00:00:00 2001 From: Bastien Montagne Date: Mon, 17 Feb 2020 13:00:01 +0100 Subject: Fix many typos and other issues in UI messages. --- release/scripts/startup/bl_ui/space_sequencer.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 1cb3829708a..788350025b9 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -1115,11 +1115,11 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel): if i == strip.multicam_source: sub = row.row(align=True) sub.enabled = False - sub.operator("sequencer.cut_multicam", text=f"{i:d}").camera = i + sub.operator("sequencer.cut_multicam", text="%d" % i).camera = i else: sub_1 = row.row(align=True) sub_1.enabled = True - sub_1.operator("sequencer.cut_multicam", text=f"{i:d}").camera = i + sub_1.operator("sequencer.cut_multicam", text="%d" % i).camera = i if strip.channel > BT_ROW and (strip_channel - 1) % BT_ROW: for i in range(strip.channel, strip_channel + ((BT_ROW + 1 - strip_channel) % BT_ROW)): -- cgit v1.2.3 From 4353bc919030a6eea5e0dc41247f452bea226d16 Mon Sep 17 00:00:00 2001 From: Richard Antalik Date: Mon, 17 Feb 2020 16:38:53 +0100 Subject: VSE: Fix missed renaming of cut operator Fix errors introduced by commit rB819af2094b21. Reviewed By: ISS Differential Revision: https://developer.blender.org/D6870y --- release/scripts/startup/bl_ui/space_sequencer.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 788350025b9..f1a349d49b4 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -783,7 +783,7 @@ class SEQUENCER_MT_context_menu(Menu): layout.operator_context = 'INVOKE_REGION_WIN' - layout.operator("sequencer.cut", text="Cut").type = 'SOFT' + layout.operator("sequencer.split", text="Split").type = 'SOFT' layout.separator() @@ -1115,11 +1115,11 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel): if i == strip.multicam_source: sub = row.row(align=True) sub.enabled = False - sub.operator("sequencer.cut_multicam", text="%d" % i).camera = i + sub.operator("sequencer.split_multicam", text="%d" % i).camera = i else: sub_1 = row.row(align=True) sub_1.enabled = True - sub_1.operator("sequencer.cut_multicam", text="%d" % i).camera = i + sub_1.operator("sequencer.split_multicam", text="%d" % i).camera = i if strip.channel > BT_ROW and (strip_channel - 1) % BT_ROW: for i in range(strip.channel, strip_channel + ((BT_ROW + 1 - strip_channel) % BT_ROW)): -- cgit v1.2.3 From d0d20de183f1afc77a97a119afb66e64799ebc6f Mon Sep 17 00:00:00 2001 From: Richard Antalik Date: Mon, 6 Apr 2020 00:38:48 +0200 Subject: VSE: Draw f-curves for opacity and volume values on the strips Feature can be enabled or disabled in timeline view menu item "Show F-Curves". Author a.monti Reviewed By: ISS Differential Revision: https://developer.blender.org/D7205 --- release/scripts/startup/bl_ui/space_sequencer.py | 1 + 1 file changed, 1 insertion(+) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index f1a349d49b4..c0a2b8a1230 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -309,6 +309,7 @@ class SEQUENCER_MT_view(Menu): layout.prop(st, "show_seconds") layout.prop(st, "show_locked_time") layout.prop(st, "show_strip_offset") + layout.prop(st, "show_fcurves") layout.separator() layout.prop(st, "show_markers") -- cgit v1.2.3 From 7fc60bff14a6241c4a51cbc57b93774a90a0ea13 Mon Sep 17 00:00:00 2001 From: William Reynish Date: Fri, 17 Apr 2020 16:54:03 +0200 Subject: UI: Layout changes for new checkbox layout possibilities Follow-up to previous commit. Some examples: {F8473507} {F8473508} {F8473509} {F8473510} For more screenshots, please see D7430. We use column or row headings here to bring more structure, and to give the eye visual anchors which aid eye-scanning. The left-aligned checkboxes likewise help with this. And we keep the adherence to the center line, so the alignment matches up between the various buttons and controls. * Changes the property split percentage from 50/50% to 40/60%. This is needed to give enough space for the checkboxes. But in most cases this looks better anyway - see Transform panel. In some cases it simply fills out the available space more efficently. * Fix various hacks where we previously used manually defined splits. When we did this, the alignment was never quite right, and the layout code was a mess. * Adds column headings to many places where a list of checkboxes all share a common purpose or leading text. * Add checkbox + value configurations various places where a checkbox only serves to enable the value slider * Removes most uses of grid flow layout. The grid flow layouts combine poorly with column headings, and also they would mess alignment up badly. The grid flow layouts also often made buttons and controls jump around on the screen if you would just resize editors slightly, causing visual confusion, making users lose their place. The logic for at what time the list of items would re-flow was often flawed, jumping to multiple columns too fast or too late - and frankly, the grid flow layouts would often just look bad. Maniphest Task: https://developer.blender.org/T65965 Differential Revision: https://developer.blender.org/D7430 Reviewed by: Brecht Van Lommel, Pablo Vazquez. Most work here by William Reynish, few changes by Julian Eisel. --- release/scripts/startup/bl_ui/space_sequencer.py | 57 +++++++++++------------- 1 file changed, 26 insertions(+), 31 deletions(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index c0a2b8a1230..f0190e9ee13 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -1687,18 +1687,15 @@ class SEQUENCER_PT_adjust_transform(SequencerButtonsPanel, Panel): layout = self.layout strip = act_strip(context) - layout.active = not strip.mute - - split = layout.split() + layout.use_property_split = True + layout.use_property_decorate = False - col = split.column() - col.alignment = 'RIGHT' - col.label(text="Mirror") + layout.active = not strip.mute - col = split.column() - row = col.row(align=True) - row.prop(strip, "use_flip_x", text="X", toggle=True) - row.prop(strip, "use_flip_y", text="Y", toggle=True) + row = layout.row(heading="Mirror") + sub = row.row(align=True) + sub.prop(strip, "use_flip_x", text="X", toggle=True) + sub.prop(strip, "use_flip_y", text="Y", toggle=True) class SEQUENCER_PT_adjust_video(SequencerButtonsPanel, Panel): @@ -1802,12 +1799,12 @@ class SEQUENCER_PT_cache_settings(SequencerButtonsPanel, Panel): ed = context.scene.sequence_editor - col = layout.column() + col = layout.column(heading="Cache", align=True) - col.prop(ed, "use_cache_raw") - col.prop(ed, "use_cache_preprocessed") - col.prop(ed, "use_cache_composite") - col.prop(ed, "use_cache_final") + col.prop(ed, "use_cache_raw", text="Raw") + col.prop(ed, "use_cache_preprocessed", text="Pre-Processed") + col.prop(ed, "use_cache_composite", text="Composite") + col.prop(ed, "use_cache_final", text="Final") col.separator() col.prop(ed, "recycle_max_cost") @@ -1871,21 +1868,19 @@ class SEQUENCER_PT_strip_proxy(SequencerButtonsPanel, Panel): flow = layout.column_flow() if ed.proxy_storage == 'PER_STRIP': - flow.prop(proxy, "use_proxy_custom_directory") - flow.prop(proxy, "use_proxy_custom_file") - + col = layout.column(heading="Custom Proxy") + col.prop(proxy, "use_proxy_custom_directory", text="Directory") if proxy.use_proxy_custom_directory and not proxy.use_proxy_custom_file: - flow.prop(proxy, "directory") + col.prop(proxy, "directory") + col.prop(proxy, "use_proxy_custom_file", text="File") if proxy.use_proxy_custom_file: - flow.prop(proxy, "filepath") + col.prop(proxy, "filepath") - box = layout.box() - row = box.row(align=True) - row.prop(strip.proxy, "build_25") - row.prop(strip.proxy, "build_75") - row = box.row(align=True) - row.prop(strip.proxy, "build_50") - row.prop(strip.proxy, "build_100") + row = layout.row(heading="Resolutions", align=True) + row.prop(strip.proxy, "build_25", toggle=True) + row.prop(strip.proxy, "build_75", toggle=True) + row.prop(strip.proxy, "build_50", toggle=True) + row.prop(strip.proxy, "build_100", toggle=True) layout.use_property_split = True layout.use_property_decorate = False @@ -1926,10 +1921,10 @@ class SEQUENCER_PT_strip_cache(SequencerButtonsPanel, Panel): strip = act_strip(context) layout.active = strip.override_cache_settings - col = layout.column() - col.prop(strip, "use_cache_raw") - col.prop(strip, "use_cache_preprocessed") - col.prop(strip, "use_cache_composite") + col = layout.column(heading="Cache") + col.prop(strip, "use_cache_raw", text="Raw") + col.prop(strip, "use_cache_preprocessed", text="Pre-Processed") + col.prop(strip, "use_cache_composite", text="Composite") class SEQUENCER_PT_preview(SequencerButtonsPanel_Output, Panel): -- cgit v1.2.3 From fda754145ae5a63c95942ded70e9713f06a48818 Mon Sep 17 00:00:00 2001 From: Antonio Vazquez Date: Sat, 18 Apr 2020 10:47:25 +0200 Subject: Annotations: Add Onion Skin support in VSE This was removed in previous versions, but can be useful in some situations. --- release/scripts/startup/bl_ui/space_sequencer.py | 29 ++++++++++++++++++++++++ 1 file changed, 29 insertions(+) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index f0190e9ee13..0e2af8f8f2f 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -29,6 +29,7 @@ from bpy.app.translations import ( ) from bl_ui.properties_grease_pencil_common import ( AnnotationDataPanel, + AnnotationOnionSkin, ) from bl_ui.space_toolsystem_common import ( ToolActivePanelHelper, @@ -2157,6 +2158,33 @@ class SEQUENCER_PT_annotation(AnnotationDataPanel, SequencerButtonsPanel_Output, # But, it should only show up when there are images in the preview region +class SEQUENCER_PT_annotation_onion(AnnotationOnionSkin, SequencerButtonsPanel_Output, Panel): + bl_space_type = 'SEQUENCE_EDITOR' + bl_region_type = 'UI' + bl_category = "View" + + @staticmethod + def has_preview(context): + st = context.space_data + return st.view_type in {'PREVIEW', 'SEQUENCER_PREVIEW'} + + @classmethod + def poll(cls, context): + if context.annotation_data_owner is None: + return False + elif type(context.annotation_data_owner) is bpy.types.Object: + return False + else: + gpl = context.active_annotation_layer + if gpl is None: + return False + + return cls.has_preview(context) + + # NOTE: this is just a wrapper around the generic GP Panel + # But, it should only show up when there are images in the preview region + + class SEQUENCER_PT_custom_props(SequencerButtonsPanel, PropertyPanel, Panel): COMPAT_ENGINES = {'BLENDER_RENDER', 'BLENDER_EEVEE', 'BLENDER_WORKBENCH'} _context_path = "scene.sequence_editor.active_strip" @@ -2230,6 +2258,7 @@ classes = ( SEQUENCER_PT_view_safe_areas_center_cut, SEQUENCER_PT_annotation, + SEQUENCER_PT_annotation_onion, ) if __name__ == "__main__": # only for live edit. -- cgit v1.2.3 From 8a94903c090e6541c5d11d60c6cf23b8964f1dd4 Mon Sep 17 00:00:00 2001 From: Peter Fog Date: Mon, 27 Apr 2020 00:12:35 +0200 Subject: VSE: Remove decorate from Expand and Mute in Modifiers Remove decorate from Expand and Mute in VSE Modifiers, since these elements aren't using decorate elsewhere. Reviewed By: billreynish Differential Revision: https://developer.blender.org/D7420 --- release/scripts/startup/bl_ui/space_sequencer.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 0e2af8f8f2f..e4539ec7ca7 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -2083,10 +2083,12 @@ class SEQUENCER_PT_modifiers(SequencerButtonsPanel, Panel): box = layout.box() row = box.row() + row.use_property_decorate = False row.prop(mod, "show_expanded", text="", emboss=False) row.prop(mod, "name", text="") row.prop(mod, "mute", text="") + row.use_property_decorate = True sub = row.row(align=True) props = sub.operator("sequencer.strip_modifier_move", text="", icon='TRIA_UP') -- cgit v1.2.3 From 99cb6dbe652511eda388763c8b147a979efbd3ff Mon Sep 17 00:00:00 2001 From: Israel Medina Date: Thu, 30 Apr 2020 20:45:41 +0200 Subject: VSE: Add frame interpolation option to speed effect Do cross transition from current to next frame instead of displaying one image for n frames. Reviewed By: ISS, sergey, campbellbarton Differential Revision: https://developer.blender.org/D7417 --- release/scripts/startup/bl_ui/space_sequencer.py | 2 ++ 1 file changed, 2 insertions(+) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index e4539ec7ca7..e1f675871ef 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -1139,6 +1139,8 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel): col = layout.column(align=True) if strip_type == 'SPEED': col.prop(strip, "multiply_speed") + col.prop(strip, "frame_interpolation_mode") + elif strip_type in {'CROSS', 'GAMMA_CROSS', 'WIPE', 'ALPHA_OVER', 'ALPHA_UNDER', 'OVER_DROP'}: col.prop(strip, "use_default_fade", text="Default fade") if not strip.use_default_fade: -- cgit v1.2.3 From 9605c26166962ef1410003eb9704a7d0c3038c62 Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Wed, 6 May 2020 18:10:42 +0200 Subject: Fix Python error in scene without sequencer --- release/scripts/startup/bl_ui/space_sequencer.py | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index c0a2b8a1230..4784d0cb08b 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -1975,7 +1975,9 @@ class SEQUENCER_PT_view(SequencerButtonsPanel_Output, Panel): col.prop(st, "show_separate_color") col.prop(st, "proxy_render_size") - col.prop(ed, "use_prefetch") + + if ed: + col.prop(ed, "use_prefetch") class SEQUENCER_PT_frame_overlay(SequencerButtonsPanel_Output, Panel): @@ -1983,6 +1985,12 @@ class SEQUENCER_PT_frame_overlay(SequencerButtonsPanel_Output, Panel): bl_category = "View" bl_options = {'DEFAULT_CLOSED'} + @classmethod + def poll(cls, context): + if not context.scene.sequence_editor: + return False + return SequencerButtonsPanel_Output.poll(context) + def draw_header(self, context): scene = context.scene ed = scene.sequence_editor -- cgit v1.2.3 From 82e8df01ac13609c5bbdb438f0033d076d844668 Mon Sep 17 00:00:00 2001 From: Pablo Vazquez Date: Tue, 12 May 2020 15:44:59 +0200 Subject: UI: Rename 'View All' operator to 'Frame All' This change was done time ago but it was still missing in some operators. --- release/scripts/startup/bl_ui/space_sequencer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index 272e67752f2..b908e61b9e1 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -276,7 +276,7 @@ class SEQUENCER_MT_view(Menu): if is_sequencer_view: layout.operator_context = 'INVOKE_REGION_WIN' layout.operator("sequencer.view_selected", text="Frame Selected") - layout.operator("sequencer.view_all", text="Frame All") + layout.operator("sequencer.view_all") layout.operator("view2d.zoom_border", text="Zoom") if is_preview: -- cgit v1.2.3 From 879032d2ab95fb6124eb95b131a0bbc315a05dfe Mon Sep 17 00:00:00 2001 From: Richard Antalik Date: Thu, 14 May 2020 02:53:10 +0200 Subject: Cleanup: Correct order of proxy resolutions Wrong order introduced by rB7fc60bff14a6: UI: Layout changes for new checkbox layout possibilities --- release/scripts/startup/bl_ui/space_sequencer.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'release/scripts/startup/bl_ui/space_sequencer.py') diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py index b908e61b9e1..ca25c29960c 100644 --- a/release/scripts/startup/bl_ui/space_sequencer.py +++ b/release/scripts/startup/bl_ui/space_sequencer.py @@ -1881,8 +1881,8 @@ class SEQUENCER_PT_strip_proxy(SequencerButtonsPanel, Panel): row = layout.row(heading="Resolutions", align=True) row.prop(strip.proxy, "build_25", toggle=True) - row.prop(strip.proxy, "build_75", toggle=True) row.prop(strip.proxy, "build_50", toggle=True) + row.prop(strip.proxy, "build_75", toggle=True) row.prop(strip.proxy, "build_100", toggle=True) layout.use_property_split = True -- cgit v1.2.3