From be21034ae4a235f9a9dbc311fc2fd2f9e91367fe Mon Sep 17 00:00:00 2001 From: Thomas Dinges Date: Wed, 23 Jan 2013 11:40:35 +0000 Subject: UI / Layout scripts: * Code cleanup for new Rigid Body panels. * Removed some unneeded split() calls. * Remove redundant check for "ob.rigid_body_constraint" in the draw() function of the "Rigid Body Constraint" panel. The check is already made in the poll. --- .../properties_physics_rigidbody_constraint.py | 303 ++++++++++----------- 1 file changed, 148 insertions(+), 155 deletions(-) (limited to 'release/scripts/startup/bl_ui/properties_physics_rigidbody_constraint.py') diff --git a/release/scripts/startup/bl_ui/properties_physics_rigidbody_constraint.py b/release/scripts/startup/bl_ui/properties_physics_rigidbody_constraint.py index 8bd64d0324a..49b760ef546 100644 --- a/release/scripts/startup/bl_ui/properties_physics_rigidbody_constraint.py +++ b/release/scripts/startup/bl_ui/properties_physics_rigidbody_constraint.py @@ -42,174 +42,167 @@ class PHYSICS_PT_rigid_body_constraint(PHYSICS_PT_rigidbody_constraint_panel, Pa ob = context.object rbc = ob.rigid_body_constraint - if rbc: - layout.prop(rbc, "type") - - split = layout.split() - - row = split.row() - row.prop(rbc, "enabled") - row.prop(rbc, "disable_collisions") - - split = layout.split() - split.prop(rbc, "object1") - split = layout.split() - split.prop(rbc, "object2") - - split = layout.split() - col = split.row() - col.prop(rbc, "use_breaking") - sub = col.column() - sub.active = rbc.use_breaking - sub.prop(rbc, "breaking_threshold", text="Threshold") - - split = layout.split() - col = split.row() - col.prop(rbc, "override_solver_iterations", text="Override Iterations") - sub = col.split() - sub.active = rbc.override_solver_iterations - sub.prop(rbc, "num_solver_iterations", text="Iterations") - - if rbc.type == 'HINGE': + layout.prop(rbc, "type") + + row = layout.row() + row.prop(rbc, "enabled") + row.prop(rbc, "disable_collisions") + + layout.prop(rbc, "object1") + layout.prop(rbc, "object2") + + row = layout.row() + row.prop(rbc, "use_breaking") + sub = row.row() + sub.active = rbc.use_breaking + sub.prop(rbc, "breaking_threshold", text="Threshold") + + row = layout.row() + row.prop(rbc, "override_solver_iterations", text="Override Iterations") + sub = row.row() + sub.active = rbc.override_solver_iterations + sub.prop(rbc, "num_solver_iterations", text="Iterations") + + if rbc.type == 'HINGE': + col = layout.column(align=True) + col.label("Limits:") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_ang_z", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_ang_z + sub.prop(rbc, "limit_ang_z_lower", text="Lower") + sub.prop(rbc, "limit_ang_z_upper", text="Upper") + + elif rbc.type == 'SLIDER': + col = layout.column(align=True) + col.label("Limits:") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_lin_x", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_lin_x + sub.prop(rbc, "limit_lin_x_lower", text="Lower") + sub.prop(rbc, "limit_lin_x_upper", text="Upper") + + elif rbc.type == 'PISTON': + col = layout.column(align=True) + col.label("Limits:") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_lin_x", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_lin_x + sub.prop(rbc, "limit_lin_x_lower", text="Lower") + sub.prop(rbc, "limit_lin_x_upper", text="Upper") + + col = layout.column(align=True) + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_ang_x", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_ang_x + sub.prop(rbc, "limit_ang_x_lower", text="Lower") + sub.prop(rbc, "limit_ang_x_upper", text="Upper") + + elif rbc.type in {'GENERIC', 'GENERIC_SPRING'}: + col = layout.column(align=True) + col.label("Limits:") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_lin_x", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_lin_x + sub.prop(rbc, "limit_lin_x_lower", text="Lower") + sub.prop(rbc, "limit_lin_x_upper", text="Upper") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_lin_y", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_lin_y + sub.prop(rbc, "limit_lin_y_lower", text="Lower") + sub.prop(rbc, "limit_lin_y_upper", text="Upper") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_lin_z", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_lin_z + sub.prop(rbc, "limit_lin_z_lower", text="Lower") + sub.prop(rbc, "limit_lin_z_upper", text="Upper") + + col = layout.column(align=True) + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_ang_x", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_ang_x + sub.prop(rbc, "limit_ang_x_lower", text="Lower") + sub.prop(rbc, "limit_ang_x_upper", text="Upper") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_ang_y", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_ang_y + sub.prop(rbc, "limit_ang_y_lower", text="Lower") + sub.prop(rbc, "limit_ang_y_upper", text="Upper") + + row = col.row() + sub = row.row() + sub.scale_x = 0.5 + sub.prop(rbc, "use_limit_ang_z", toggle=True) + sub = row.row() + sub.active = rbc.use_limit_ang_z + sub.prop(rbc, "limit_ang_z_lower", text="Lower") + sub.prop(rbc, "limit_ang_z_upper", text="Upper") + + if rbc.type == 'GENERIC_SPRING': col = layout.column(align=True) - col.label("Limits:") + col.label("Springs:") row = col.row() sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_ang_z", toggle=True) + sub.scale_x = 0.1 + sub.prop(rbc, "use_spring_x", toggle=True, text="X") sub = row.row() - sub.active = rbc.use_limit_ang_z - sub.prop(rbc, "limit_ang_z_lower", text="Lower") - sub.prop(rbc, "limit_ang_z_upper", text="Upper") - - elif rbc.type == 'SLIDER': - col = layout.column(align=True) - col.label("Limits:") - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_lin_x", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_lin_x - sub.prop(rbc, "limit_lin_x_lower", text="Lower") - sub.prop(rbc, "limit_lin_x_upper", text="Upper") - - elif rbc.type == 'PISTON': - col = layout.column(align=True) - col.label("Limits:") - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_lin_x", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_lin_x - sub.prop(rbc, "limit_lin_x_lower", text="Lower") - sub.prop(rbc, "limit_lin_x_upper", text="Upper") - - col = layout.column(align=True) - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_ang_x", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_ang_x - sub.prop(rbc, "limit_ang_x_lower", text="Lower") - sub.prop(rbc, "limit_ang_x_upper", text="Upper") - - elif rbc.type in {'GENERIC', 'GENERIC_SPRING'}: - col = layout.column(align=True) - col.label("Limits:") - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_lin_x", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_lin_x - sub.prop(rbc, "limit_lin_x_lower", text="Lower") - sub.prop(rbc, "limit_lin_x_upper", text="Upper") - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_lin_y", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_lin_y - sub.prop(rbc, "limit_lin_y_lower", text="Lower") - sub.prop(rbc, "limit_lin_y_upper", text="Upper") - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_lin_z", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_lin_z - sub.prop(rbc, "limit_lin_z_lower", text="Lower") - sub.prop(rbc, "limit_lin_z_upper", text="Upper") - - col = layout.column(align=True) - - row = col.row() - sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_ang_x", toggle=True) - sub = row.row() - sub.active = rbc.use_limit_ang_x - sub.prop(rbc, "limit_ang_x_lower", text="Lower") - sub.prop(rbc, "limit_ang_x_upper", text="Upper") + sub.active = rbc.use_spring_x + sub.prop(rbc, "spring_stiffness_x", text="Stiffness") + sub.prop(rbc, "spring_damping_x") row = col.row() sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_ang_y", toggle=True) + sub.scale_x = 0.1 + sub.prop(rbc, "use_spring_y", toggle=True, text="Y") sub = row.row() - sub.active = rbc.use_limit_ang_y - sub.prop(rbc, "limit_ang_y_lower", text="Lower") - sub.prop(rbc, "limit_ang_y_upper", text="Upper") + sub.active = rbc.use_spring_y + sub.prop(rbc, "spring_stiffness_y", text="Stiffness") + sub.prop(rbc, "spring_damping_y") row = col.row() sub = row.row() - sub.scale_x = 0.5 - sub.prop(rbc, "use_limit_ang_z", toggle=True) + sub.scale_x = 0.1 + sub.prop(rbc, "use_spring_z", toggle=True, text="Z") sub = row.row() - sub.active = rbc.use_limit_ang_z - sub.prop(rbc, "limit_ang_z_lower", text="Lower") - sub.prop(rbc, "limit_ang_z_upper", text="Upper") - - if rbc.type == 'GENERIC_SPRING': - col = layout.column(align=True) - col.label("Springs:") - - row = col.row() - sub = row.row() - sub.scale_x = 0.1 - sub.prop(rbc, "use_spring_x", toggle=True, text="X") - sub = row.row() - sub.active = rbc.use_spring_x - sub.prop(rbc, "spring_stiffness_x", text="Stiffness") - sub.prop(rbc, "spring_damping_x") - - row = col.row() - sub = row.row() - sub.scale_x = 0.1 - sub.prop(rbc, "use_spring_y", toggle=True, text="Y") - sub = row.row() - sub.active = rbc.use_spring_y - sub.prop(rbc, "spring_stiffness_y", text="Stiffness") - sub.prop(rbc, "spring_damping_y") - - row = col.row() - sub = row.row() - sub.scale_x = 0.1 - sub.prop(rbc, "use_spring_z", toggle=True, text="Z") - sub = row.row() - sub.active = rbc.use_spring_z - sub.prop(rbc, "spring_stiffness_z", text="Stiffness") - sub.prop(rbc, "spring_damping_z") + sub.active = rbc.use_spring_z + sub.prop(rbc, "spring_stiffness_z", text="Stiffness") + sub.prop(rbc, "spring_damping_z") if __name__ == "__main__": # only for live edit. bpy.utils.register_module(__name__) -- cgit v1.2.3