[Bf-blender-cvs] [d18cd768bb0] blender2.8: UI: use single column properties for object data
Campbell Barton
noreply at git.blender.org
Fri Jun 1 19:28:31 CEST 2018
Commit: d18cd768bb0cc7dd9eba36e3f0c4e2189853c08f
Author: Campbell Barton
Date: Fri Jun 1 18:44:06 2018 +0200
Branches: blender2.8
https://developer.blender.org/rBd18cd768bb0cc7dd9eba36e3f0c4e2189853c08f
UI: use single column properties for object data
patch by @billreynish w/ minor edits
===================================================================
M release/scripts/startup/bl_ui/properties_data_armature.py
M release/scripts/startup/bl_ui/properties_data_bone.py
M release/scripts/startup/bl_ui/properties_data_camera.py
M release/scripts/startup/bl_ui/properties_data_curve.py
M release/scripts/startup/bl_ui/properties_data_empty.py
M release/scripts/startup/bl_ui/properties_data_lamp.py
M release/scripts/startup/bl_ui/properties_data_lattice.py
M release/scripts/startup/bl_ui/properties_data_lightprobe.py
M release/scripts/startup/bl_ui/properties_data_mesh.py
M release/scripts/startup/bl_ui/properties_data_metaball.py
M release/scripts/startup/bl_ui/properties_data_modifier.py
M release/scripts/startup/bl_ui/properties_data_speaker.py
M release/scripts/startup/bl_ui/properties_data_workspace.py
M release/scripts/startup/bl_ui/properties_render.py
===================================================================
diff --git a/release/scripts/startup/bl_ui/properties_data_armature.py b/release/scripts/startup/bl_ui/properties_data_armature.py
index 12f862d92a1..e58b4f56ffe 100644
--- a/release/scripts/startup/bl_ui/properties_data_armature.py
+++ b/release/scripts/startup/bl_ui/properties_data_armature.py
@@ -77,15 +77,13 @@ class DATA_PT_display(ArmatureButtonsPanel, Panel):
layout.row().prop(arm, "draw_type", expand=True)
- split = layout.split()
+ layout.use_property_split = True
- col = split.column()
+ col = layout.column()
col.prop(arm, "show_names", text="Names")
col.prop(arm, "show_axes", text="Axes")
col.prop(arm, "show_bone_custom_shapes", text="Shapes")
-
- col = split.column()
- col.prop(arm, "show_group_colors", text="Colors")
+ col.prop(arm, "show_group_colors", text="Group Colors")
if ob:
col.prop(ob, "show_x_ray", text="X-Ray")
col.prop(arm, "use_deform_delay", text="Delay Refresh")
@@ -149,7 +147,8 @@ class DATA_PT_bone_groups(ArmatureButtonsPanel, Panel):
sub = row.row(align=True)
sub.operator("pose.group_assign", text="Assign")
- sub.operator("pose.group_unassign", text="Remove") # row.operator("pose.bone_group_remove_from", text="Remove")
+ # row.operator("pose.bone_group_remove_from", text="Remove")
+ sub.operator("pose.group_unassign", text="Remove")
sub = row.row(align=True)
sub.operator("pose.group_select", text="Select")
@@ -196,7 +195,11 @@ class DATA_PT_pose_library(ArmatureButtonsPanel, Panel):
if pose_marker_active is not None:
col.operator("poselib.pose_remove", icon='ZOOMOUT', text="")
- col.operator("poselib.apply_pose", icon='ZOOM_SELECTED', text="").pose_index = poselib.pose_markers.active_index
+ col.operator(
+ "poselib.apply_pose",
+ icon='ZOOM_SELECTED',
+ text="",
+ ).pose_index = poselib.pose_markers.active_index
col.operator("poselib.action_sanitize", icon='HELP', text="") # XXX: put in menu?
@@ -216,21 +219,19 @@ class DATA_PT_ghost(ArmatureButtonsPanel, Panel):
layout.row().prop(arm, "ghost_type", expand=True)
- split = layout.split()
+ layout.use_property_split = True
- col = split.column(align=True)
+ col = layout.column(align=True)
if arm.ghost_type == 'RANGE':
- col.prop(arm, "ghost_frame_start", text="Start")
+ col.prop(arm, "ghost_frame_start", text="Frame Start")
col.prop(arm, "ghost_frame_end", text="End")
col.prop(arm, "ghost_size", text="Step")
elif arm.ghost_type == 'CURRENT_FRAME':
- col.prop(arm, "ghost_step", text="Range")
+ col.prop(arm, "ghost_step", text="Frame Range")
col.prop(arm, "ghost_size", text="Step")
- col = split.column()
- col.label(text="Display:")
- col.prop(arm, "show_only_ghost_selected", text="Selected Only")
+ col.prop(arm, "show_only_ghost_selected", text="Display Selected Only")
class DATA_PT_iksolver_itasc(ArmatureButtonsPanel, Panel):
@@ -244,6 +245,7 @@ class DATA_PT_iksolver_itasc(ArmatureButtonsPanel, Panel):
def draw(self, context):
layout = self.layout
+ layout.use_property_split = True
ob = context.object
itasc = ob.pose.ik_param
@@ -251,34 +253,37 @@ class DATA_PT_iksolver_itasc(ArmatureButtonsPanel, Panel):
layout.prop(ob.pose, "ik_solver")
if itasc:
+ layout.use_property_split = False
layout.row().prop(itasc, "mode", expand=True)
+ layout.use_property_split = True
simulation = (itasc.mode == 'SIMULATION')
if simulation:
- layout.label(text="Reiteration:")
- layout.row().prop(itasc, "reiteration_method", expand=True)
+ layout.prop(itasc, "reiteration_method", expand=False)
- row = layout.row()
- row.active = not simulation or itasc.reiteration_method != 'NEVER'
- row.prop(itasc, "precision")
- row.prop(itasc, "iterations")
+ col = layout.column()
+ col.active = not simulation or itasc.reiteration_method != 'NEVER'
+ col.prop(itasc, "precision")
+ col.prop(itasc, "iterations")
if simulation:
layout.prop(itasc, "use_auto_step")
- row = layout.row()
+ col = layout.column(align=True)
if itasc.use_auto_step:
- row.prop(itasc, "step_min", text="Min")
- row.prop(itasc, "step_max", text="Max")
+ col.prop(itasc, "step_min", text="Steps Min")
+ col.prop(itasc, "step_max", text="Max")
else:
- row.prop(itasc, "step_count")
+ col.prop(itasc, "step_count", text="Steps")
layout.prop(itasc, "solver")
if simulation:
layout.prop(itasc, "feedback")
layout.prop(itasc, "velocity_max")
if itasc.solver == 'DLS':
- row = layout.row()
- row.prop(itasc, "damping_max", text="Damp", slider=True)
- row.prop(itasc, "damping_epsilon", text="Eps", slider=True)
+ col = layout.column()
+ col.separator()
+ col.prop(itasc, "damping_max", text="Damping Max", slider=True)
+ col.prop(itasc, "damping_epsilon", text="Damping Epsilon", slider=True)
+
from .properties_animviz import (
MotionPathButtonsPanel,
diff --git a/release/scripts/startup/bl_ui/properties_data_bone.py b/release/scripts/startup/bl_ui/properties_data_bone.py
index e1763e363ae..079669dbd02 100644
--- a/release/scripts/startup/bl_ui/properties_data_bone.py
+++ b/release/scripts/startup/bl_ui/properties_data_bone.py
@@ -62,88 +62,63 @@ class BONE_PT_transform(BoneButtonsPanel, Panel):
def draw(self, context):
layout = self.layout
+ layout.use_property_split = True
ob = context.object
bone = context.bone
+ col = layout.column()
+
if bone and ob:
pchan = ob.pose.bones[bone.name]
-
- row = layout.row()
- col = row.column()
- col.prop(pchan, "location")
col.active = not (bone.parent and bone.use_connect)
- col = row.column()
+ sub = col.row(align=True)
+ sub.prop(pchan, "location")
+ sub.prop(pchan, "lock_location", text="")
+
+ col = layout.column()
if pchan.rotation_mode == 'QUATERNION':
- col.prop(pchan, "rotation_quaternion", text="Rotation")
+ sub = col.row(align=True)
+ sub.prop(pchan, "rotation_quaternion", text="Rotation")
+ subsub = sub.column(align=True)
+ subsub.prop(pchan, "lock_rotation_w", text="")
+ subsub.prop(pchan, "lock_rotation", text="")
elif pchan.rotation_mode == 'AXIS_ANGLE':
- #col.label(text="Rotation")
+ # col.label(text="Rotation")
#col.prop(pchan, "rotation_angle", text="Angle")
#col.prop(pchan, "rotation_axis", text="Axis")
- col.prop(pchan, "rotation_axis_angle", text="Rotation")
+ sub = col.row(align=True)
+ sub.prop(pchan, "rotation_axis_angle", text="Rotation")
+ subsub = sub.column(align=True)
+ subsub.prop(pchan, "lock_rotation_w", text="")
+ subsub.prop(pchan, "lock_rotation", text="")
else:
- col.prop(pchan, "rotation_euler", text="Rotation")
+ sub = col.row(align=True)
+ sub.prop(pchan, "rotation_euler", text="Rotation")
+ sub.prop(pchan, "lock_rotation", text="")
- row.column().prop(pchan, "scale")
+ col = layout.column()
+ sub = col.row(align=True)
+ sub.prop(pchan, "scale")
+ sub.prop(pchan, "lock_scale", text="")
- layout.prop(pchan, "rotation_mode")
+ col = layout.column()
+ col.prop(pchan, "rotation_mode")
elif context.edit_bone:
bone = context.edit_bone
- row = layout.row()
- row.column().prop(bone, "head")
- row.column().prop(bone, "tail")
-
- col = row.column()
- sub = col.column(align=True)
- sub.label(text="Roll:")
- sub.prop(bone, "roll", text="")
- sub.label()
- sub.prop(bone, "lock")
-
-
-class BONE_PT_transform_locks(BoneButtonsPanel, Panel):
- bl_label = "Transform Locks"
- bl_options = {'DEFAULT_CLOSED'}
-
- @classmethod
- def poll(cls, context):
- ob = context.object
- return ob and ob.mode == 'POSE' and context.bone
-
- def draw(self, context):
- layout = self.layout
-
- ob = context.object
- bone = context.bone
- pchan = ob.pose.bones[bone.name]
-
- split = layout.split(percentage=0.1)
-
- col = split.column(align=True)
- col.label(text="")
- col.label(text="X:")
- col.label(text="Y:")
- col.label(text="Z:")
-
- col = split.column()
- col.active = not (bone.parent and bone.use_connect)
- col.prop(pchan, "lock_location", text="Location")
-
- col = split.column()
- col.prop(pchan, "lock_rotation", text="Rotation")
-
- col = split.column()
- col.prop(pchan, "lock_scale", text="Scale")
+ col = layout.column()
+ col.prop(bone, "head")
+ col.prop(bone, "tail")
- if pchan.rotation_mode in {'QUATERNION', 'AXIS_ANGLE'}:
- row = layout.row()
- row.prop(pchan, "lock_rotations_4d", text="Lock Rotation")
+ col = layout.column()
+ col.prop(bone, "roll")
+ col.prop(bone, "lock")
-
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list