From 5e8c09921e58e1f86d61e825bc8f446bb134ed0d Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 16 Aug 2016 13:30:47 +0200 Subject: 2D stabilization: Modify interface so dependency goes strictly from top to bottom --- release/scripts/startup/bl_ui/space_clip.py | 89 ++++++++++++----------------- 1 file changed, 37 insertions(+), 52 deletions(-) (limited to 'release') diff --git a/release/scripts/startup/bl_ui/space_clip.py b/release/scripts/startup/bl_ui/space_clip.py index 9b1c0a16603..b2263618719 100644 --- a/release/scripts/startup/bl_ui/space_clip.py +++ b/release/scripts/startup/bl_ui/space_clip.py @@ -916,73 +916,58 @@ class CLIP_PT_stabilization(CLIP_PT_reconstruction_panel, Panel): layout.prop(stab, "anchor_frame") - box = layout.box() - row = box.row(align=True) - row.prop(stab, "show_tracks_expanded", text="", emboss=False) + col = layout.column() + col.label(text="Location") + row = col.row() + row.template_list("UI_UL_list", "stabilization_tracks", stab, "tracks", + stab, "active_track_index", rows=2) - if not stab.show_tracks_expanded: - row.label(text="Tracks For Stabilization") - else: - row.label(text="Tracks For Location") - row = box.row() - row.template_list("UI_UL_list", "stabilization_tracks", stab, "tracks", - stab, "active_track_index", rows=2) + sub = row.column(align=True) - sub = row.column(align=True) + sub.operator("clip.stabilize_2d_add", icon='ZOOMIN', text="") + sub.operator("clip.stabilize_2d_remove", icon='ZOOMOUT', text="") - sub.operator("clip.stabilize_2d_add", icon='ZOOMIN', text="") - sub.operator("clip.stabilize_2d_remove", icon='ZOOMOUT', text="") + sub.menu('CLIP_MT_stabilize_2d_specials', text="", + icon='DOWNARROW_HLT') - sub.menu('CLIP_MT_stabilize_2d_specials', text="", - icon='DOWNARROW_HLT') + col.label(text="Expected Position") + row = col.row() + row.prop(stab, "target_pos", text="") + col.prop(stab, "influence_location") - row = box.row() - row.label(text="Tracks For Rotation / Scale") - row = box.row() - row.active = stab.use_stabilize_rotation - row.template_list("UI_UL_list", "stabilization_rotation_tracks", stab, "rotation_tracks", - stab, "active_rotation_track_index", rows=2) + layout.separator() + layout.prop(stab, "use_stabilize_rotation") + col = layout.column() + col.active = stab.use_stabilize_rotation + row = col.row() + row.template_list("UI_UL_list", "stabilization_rotation_tracks", stab, "rotation_tracks", + stab, "active_rotation_track_index", rows=2) - sub = row.column(align=True) + sub = row.column(align=True) - sub.operator("clip.stabilize_2d_rotation_add", icon='ZOOMIN', text="") - sub.operator("clip.stabilize_2d_rotation_remove", icon='ZOOMOUT', text="") + sub.operator("clip.stabilize_2d_rotation_add", icon='ZOOMIN', text="") + sub.operator("clip.stabilize_2d_rotation_remove", icon='ZOOMOUT', text="") - sub.menu('CLIP_MT_stabilize_2d_rotation_specials', text="", - icon='DOWNARROW_HLT') + sub.menu('CLIP_MT_stabilize_2d_rotation_specials', text="", + icon='DOWNARROW_HLT') - layout.prop(stab, "use_stabilize_rotation") - row = layout.row() - row.active = stab.use_stabilize_rotation - row.prop(stab, "use_stabilize_scale") - if stab.use_autoscale: - row = layout.row(align=True) - row.prop(stab, "use_autoscale") - row.prop(stab, "scale_max", text="Max") - else: - layout.prop(stab, "use_autoscale") + col.prop(stab, "target_rot") + col.prop(stab, "influence_rotation") layout.separator() - layout.label(text="Expected Position") - layout.prop(stab, "target_pos", text="") - layout.prop(stab, "target_rot") + col = layout.column() + col.active = stab.use_stabilize_rotation + col.prop(stab, "use_stabilize_scale") + col.prop(stab, "use_autoscale") if stab.use_autoscale: - layout.label(text="Auto Scale Factor: %5.3f" % (1.0 / stab.target_zoom)) + col.prop(stab, "scale_max", text="Max") + col.label(text="Auto Scale Factor: %5.3f" % (1.0 / stab.target_zoom)) else: - layout.prop(stab, "target_zoom") - - layout.separator() - row = layout.row() - row.active = 0 < len(stab.tracks.values()) - row.prop(stab, "influence_location") + col.prop(stab, "target_zoom") - col = layout.column() - col.active = stab.use_stabilize_rotation and 0 < len(stab.rotation_tracks.values()) - row = col.row() - row.prop(stab, "influence_rotation") - row = col.row() - row.prop(stab, "influence_scale") + col.prop(stab, "influence_scale") + layout.separator() layout.prop(stab, "filter_type") -- cgit v1.2.3