patch [#36296] object->display-properties subpanel layout cleanup

from David Jeske (jeske), with minor edits of my own.
This commit is contained in:
Campbell Barton 2013-07-28 11:43:11 +00:00
parent 6864f2c285
commit 46aea9c0c8

@ -203,42 +203,55 @@ class OBJECT_PT_display(ObjectButtonsPanel, Panel):
def draw(self, context): def draw(self, context):
layout = self.layout layout = self.layout
obj = context.object obj = context.object
obj_type = obj.type
is_geometry = (obj_type in {'MESH', 'CURVE', 'SURFACE', 'META', 'FONT'})
is_empty_image = (obj_type == 'EMPTY' and obj.empty_draw_type == 'IMAGE')
split = layout.split() # start top half
col = split.column()
col.prop(obj, "draw_type", text="Type")
col = split.column()
row = col.row()
row.prop(obj, "show_bounds", text="Bounds")
sub = row.row()
sub.active = obj.show_bounds
sub.prop(obj, "draw_bounds_type", text="")
split = layout.split() split = layout.split()
# left column checkboxes
col = split.column() col = split.column()
col.prop(obj, "show_name", text="Name") col.prop(obj, "show_name", text="Name")
col.prop(obj, "show_axis", text="Axis") col.prop(obj, "show_axis", text="Axis")
if is_geometry:
obj_type = obj.type
if obj_type in {'MESH', 'CURVE', 'SURFACE', 'META', 'FONT'}:
# Makes no sense for cameras, armtures, etc.! # Makes no sense for cameras, armtures, etc.!
col.prop(obj, "show_wire", text="Wire") col.prop(obj, "show_wire", text="Wire")
# Only useful with object having faces/materials...
col.prop(obj, "color", text="Object Color")
col = split.column()
col.prop(obj, "show_texture_space", text="Texture Space")
col.prop(obj, "show_x_ray", text="X-Ray")
if obj_type == 'MESH' or (obj_type == 'EMPTY' and obj.empty_draw_type == 'IMAGE'):
col.prop(obj, "show_transparent", text="Transparency")
if obj_type == 'MESH': if obj_type == 'MESH':
col.prop(obj, "show_all_edges") col.prop(obj, "show_all_edges")
# right column checkboxes
col = split.column()
if 1: # for code nesting clarity
row = col.row()
row.prop(obj, "show_bounds", text="Bounds")
sub = row.row()
sub.active = obj.show_bounds
sub.prop(obj, "draw_bounds_type", text="")
if is_geometry:
col.prop(obj, "show_texture_space", text="Texture Space")
col.prop(obj, "show_x_ray", text="X-Ray")
if obj_type == 'MESH' or is_empty_image:
col.prop(obj, "show_transparent", text="Transparency")
# start bottom half
split = layout.split()
# left
col = split.column()
if obj_type not in {'CAMERA', 'EMPTY'}:
col.label(text="Maximum draw type:")
col.prop(obj, "draw_type", text="")
# right
col = split.column()
if is_geometry or is_empty_image:
# Only useful with object having faces/materials...
col.label(text="Object Color:")
col.prop(obj, "color", text="")
class OBJECT_PT_duplication(ObjectButtonsPanel, Panel): class OBJECT_PT_duplication(ObjectButtonsPanel, Panel):
bl_label = "Duplication" bl_label = "Duplication"