RNA: UILayout.split(..) 'percentage' to 'factor'
Misleading name since it's between 0..1. Use as a keyword argument to prepare for keyword only args. Also document that leaving unset has special behavior.
This commit is contained in:
parent
e9fb2feb2e
commit
d3a72033f6
|
@ -802,28 +802,28 @@ class CYCLES_RENDER_PT_denoising(CyclesButtonsPanel, Panel):
|
|||
|
||||
layout.use_property_split = False
|
||||
|
||||
split = layout.split(percentage=0.5)
|
||||
split = layout.split(factor=0.5)
|
||||
split.label(text="Diffuse")
|
||||
col = split.column()
|
||||
row = col.row(align=True)
|
||||
row.prop(cycles_view_layer, "denoising_diffuse_direct", text="Direct", toggle=True)
|
||||
row.prop(cycles_view_layer, "denoising_diffuse_indirect", text="Indirect", toggle=True)
|
||||
|
||||
split = layout.split(percentage=0.5)
|
||||
split = layout.split(factor=0.5)
|
||||
split.label(text="Glossy")
|
||||
col = split.column()
|
||||
row = col.row(align=True)
|
||||
row.prop(cycles_view_layer, "denoising_glossy_direct", text="Direct", toggle=True)
|
||||
row.prop(cycles_view_layer, "denoising_glossy_indirect", text="Indirect", toggle=True)
|
||||
|
||||
split = layout.split(percentage=0.5)
|
||||
split = layout.split(factor=0.5)
|
||||
split.label(text="Transmission")
|
||||
col = split.column()
|
||||
row = col.row(align=True)
|
||||
row.prop(cycles_view_layer, "denoising_transmission_direct", text="Direct", toggle=True)
|
||||
row.prop(cycles_view_layer, "denoising_transmission_indirect", text="Indirect", toggle=True)
|
||||
|
||||
split = layout.split(percentage=0.5)
|
||||
split = layout.split(factor=0.5)
|
||||
split.label(text="Subsurface")
|
||||
col = split.column()
|
||||
row = col.row(align=True)
|
||||
|
@ -974,7 +974,7 @@ class CYCLES_PT_context_material(CyclesButtonsPanel, Panel):
|
|||
row.operator("object.material_slot_select", text="Select")
|
||||
row.operator("object.material_slot_deselect", text="Deselect")
|
||||
|
||||
split = layout.split(percentage=0.65)
|
||||
split = layout.split(factor=0.65)
|
||||
|
||||
if ob:
|
||||
split.template_ID(ob, "active_material", new="material.new")
|
||||
|
|
|
@ -182,7 +182,7 @@ if __name__ == "__main__":
|
|||
prop(data='context.scene.render', property='stamp_font_size', text='Font Size')
|
||||
]
|
||||
],
|
||||
split(percentage=0.2)[
|
||||
split(factor=0.2)[
|
||||
prop(data='context.scene.render', property='use_stamp_note', text='Note'),
|
||||
row()[
|
||||
active(expr='context.scene.render.use_stamp_note'),
|
||||
|
|
|
@ -39,7 +39,7 @@ def _indented_layout(layout, level):
|
|||
level = 0.0001 # Tweak so that a percentage of 0 won't split by half
|
||||
indent = level * indentpx / bpy.context.region.width
|
||||
|
||||
split = layout.split(percentage=indent)
|
||||
split = layout.split(factor=indent)
|
||||
col = split.column()
|
||||
col = split.column()
|
||||
return col
|
||||
|
@ -103,7 +103,7 @@ def draw_km(display_keymaps, kc, km, children, layout, level):
|
|||
|
||||
# "Add New" at end of keymap item list
|
||||
subcol = _indented_layout(col, kmi_level)
|
||||
subcol = subcol.split(percentage=0.2).column()
|
||||
subcol = subcol.split(factor=0.2).column()
|
||||
subcol.operator("wm.keyitem_add", text="Add New", text_ctxt=i18n_contexts.id_windowmanager,
|
||||
icon='ZOOMIN')
|
||||
|
||||
|
@ -167,7 +167,7 @@ def draw_kmi(display_keymaps, kc, km, kmi, layout, level):
|
|||
if kmi.show_expanded:
|
||||
box = col.box()
|
||||
|
||||
split = box.split(percentage=0.4)
|
||||
split = box.split(factor=0.4)
|
||||
sub = split.row()
|
||||
|
||||
if km.is_modal:
|
||||
|
@ -349,7 +349,7 @@ def draw_filtered(display_keymaps, filter_type, filter_text, layout):
|
|||
|
||||
# "Add New" at end of keymap item list
|
||||
col = _indented_layout(layout, 1)
|
||||
subcol = col.split(percentage=0.2).column()
|
||||
subcol = col.split(factor=0.2).column()
|
||||
subcol.operator("wm.keyitem_add", text="Add New", icon='ZOOMIN')
|
||||
return True
|
||||
|
||||
|
@ -386,7 +386,7 @@ def draw_keymaps(context, layout):
|
|||
# layout.context_pointer_set("keyconfig", wm.keyconfigs.active)
|
||||
# row.operator("wm.keyconfig_remove", text="", icon='X')
|
||||
row.separator()
|
||||
rowsub = row.split(align=True, percentage=0.33)
|
||||
rowsub = row.split(factor=0.33, align=True)
|
||||
# postpone drawing into rowsub, so we can set alert!
|
||||
|
||||
col.separator()
|
||||
|
|
|
@ -165,7 +165,7 @@ def draw(layout, context, context_member, property_type, use_edit=True):
|
|||
box = row.box()
|
||||
|
||||
if use_edit:
|
||||
split = box.split(percentage=0.75)
|
||||
split = box.split(factor=0.75)
|
||||
row = split.row(align=True)
|
||||
else:
|
||||
row = box.row(align=True)
|
||||
|
|
|
@ -42,7 +42,7 @@ class ConstraintButtonsPanel:
|
|||
def space_template(layout, con, target=True, owner=True):
|
||||
if target or owner:
|
||||
|
||||
split = layout.split(percentage=0.2)
|
||||
split = layout.split(factor=0.2)
|
||||
|
||||
split.label(text="Space:")
|
||||
row = split.row()
|
||||
|
@ -85,7 +85,7 @@ class ConstraintButtonsPanel:
|
|||
row.label()
|
||||
row.prop(con, "pole_angle")
|
||||
|
||||
split = layout.split(percentage=0.33)
|
||||
split = layout.split(factor=0.33)
|
||||
col = split.column()
|
||||
col.prop(con, "use_tail")
|
||||
col.prop(con, "use_stretch")
|
||||
|
@ -183,12 +183,12 @@ class ConstraintButtonsPanel:
|
|||
row = layout.row()
|
||||
row.label(text="Axis Ref:")
|
||||
row.prop(con, "reference_axis", expand=True)
|
||||
split = layout.split(percentage=0.33)
|
||||
split = layout.split(factor=0.33)
|
||||
split.row().prop(con, "use_location")
|
||||
row = split.row()
|
||||
row.prop(con, "weight", text="Weight", slider=True)
|
||||
row.active = con.use_location
|
||||
split = layout.split(percentage=0.33)
|
||||
split = layout.split(factor=0.33)
|
||||
row = split.row()
|
||||
row.label(text="Lock:")
|
||||
row = split.row()
|
||||
|
@ -197,12 +197,12 @@ class ConstraintButtonsPanel:
|
|||
row.prop(con, "lock_location_z", text="Z")
|
||||
split.active = con.use_location
|
||||
|
||||
split = layout.split(percentage=0.33)
|
||||
split = layout.split(factor=0.33)
|
||||
split.row().prop(con, "use_rotation")
|
||||
row = split.row()
|
||||
row.prop(con, "orient_weight", text="Weight", slider=True)
|
||||
row.active = con.use_rotation
|
||||
split = layout.split(percentage=0.33)
|
||||
split = layout.split(factor=0.33)
|
||||
row = split.row()
|
||||
row.label(text="Lock:")
|
||||
row = split.row()
|
||||
|
@ -751,7 +751,7 @@ class ConstraintButtonsPanel:
|
|||
if con.shrinkwrap_type == 'PROJECT':
|
||||
row = layout.row(align=True)
|
||||
row.prop(con, "project_axis", expand=True)
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Axis Space:")
|
||||
rowsub = split.row()
|
||||
rowsub.prop(con, "project_axis_space", text="")
|
||||
|
|
|
@ -328,16 +328,16 @@ class DATA_PT_font(CurveButtonsPanelText, Panel):
|
|||
text = context.curve
|
||||
char = context.curve.edit_format
|
||||
|
||||
row = layout.split(percentage=0.25)
|
||||
row = layout.split(factor=0.25)
|
||||
row.label(text="Regular")
|
||||
row.template_ID(text, "font", open="font.open", unlink="font.unlink")
|
||||
row = layout.split(percentage=0.25)
|
||||
row = layout.split(factor=0.25)
|
||||
row.label(text="Bold")
|
||||
row.template_ID(text, "font_bold", open="font.open", unlink="font.unlink")
|
||||
row = layout.split(percentage=0.25)
|
||||
row = layout.split(factor=0.25)
|
||||
row.label(text="Italic")
|
||||
row.template_ID(text, "font_italic", open="font.open", unlink="font.unlink")
|
||||
row = layout.split(percentage=0.25)
|
||||
row = layout.split(factor=0.25)
|
||||
row.label(text="Bold & Italic")
|
||||
row.template_ID(text, "font_bold_italic", open="font.open", unlink="font.unlink")
|
||||
|
||||
|
|
|
@ -43,7 +43,7 @@ class DATA_PT_context_lattice(DataButtonsPanel, Panel):
|
|||
lat = context.lattice
|
||||
space = context.space_data
|
||||
|
||||
split = layout.split(percentage=0.65)
|
||||
split = layout.split(factor=0.65)
|
||||
if ob:
|
||||
split.template_ID(ob, "data")
|
||||
split.separator()
|
||||
|
|
|
@ -92,7 +92,7 @@ class MESH_UL_shape_keys(UIList):
|
|||
# key = data
|
||||
key_block = item
|
||||
if self.layout_type in {'DEFAULT', 'COMPACT'}:
|
||||
split = layout.split(0.66, False)
|
||||
split = layout.split(factor=0.66, align=False)
|
||||
split.prop(key_block, "name", text="", emboss=False, icon_value=icon)
|
||||
row = split.row(align=True)
|
||||
if key_block.mute or (obj.mode == 'EDIT' and not (obj.use_shape_key_edit_mode and obj.type == 'MESH')):
|
||||
|
@ -326,7 +326,7 @@ class DATA_PT_shape_keys(MeshButtonsPanel, Panel):
|
|||
sub.operator("object.shape_key_move", icon='TRIA_UP', text="").type = 'UP'
|
||||
sub.operator("object.shape_key_move", icon='TRIA_DOWN', text="").type = 'DOWN'
|
||||
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
row = split.row()
|
||||
row.enabled = enable_edit
|
||||
row.prop(key, "use_relative")
|
||||
|
|
|
@ -226,12 +226,12 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
layout.prop(md, "eval_factor")
|
||||
|
||||
layout.label(text="Axis Mapping:")
|
||||
split = layout.split(percentage=0.5, align=True)
|
||||
split = layout.split(factor=0.5, align=True)
|
||||
split.alert = (md.forward_axis[-1] == md.up_axis[-1])
|
||||
split.label(text="Forward/Up Axis:")
|
||||
split.prop(md, "forward_axis", text="")
|
||||
split.prop(md, "up_axis", text="")
|
||||
split = layout.split(percentage=0.5)
|
||||
split = layout.split(factor=0.5)
|
||||
split.label(text="Flip Axis:")
|
||||
row = split.row()
|
||||
row.prop(md, "flip_axis")
|
||||
|
@ -253,12 +253,12 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
box.row().prop(md, "read_data")
|
||||
|
||||
def CAST(self, layout, ob, md):
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
split.label(text="Cast Type:")
|
||||
split.prop(md, "cast_type", text="")
|
||||
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
col = split.column()
|
||||
col.prop(md, "use_x")
|
||||
|
@ -325,7 +325,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
row.prop(md, "vertex_group_factor")
|
||||
|
||||
col.prop(md, "use_collapse_triangulate")
|
||||
row = col.split(percentage=0.75)
|
||||
row = col.split(factor=0.75)
|
||||
row.prop(md, "use_symmetry")
|
||||
row.prop(md, "symmetry_axis", text="")
|
||||
|
||||
|
@ -481,7 +481,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
def LAPLACIANSMOOTH(self, layout, ob, md):
|
||||
layout.prop(md, "iterations")
|
||||
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
col = split.column()
|
||||
col.label(text="Axis:")
|
||||
|
@ -567,7 +567,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
layout.operator("object.meshdeform_bind", text="Bind")
|
||||
|
||||
def MIRROR(self, layout, ob, md):
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
col = split.column()
|
||||
col.label(text="Axis:")
|
||||
|
@ -833,7 +833,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
col = split.column()
|
||||
|
||||
col.prop(md, "project_limit", text="Limit")
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
col = split.column()
|
||||
col.label(text="Axis:")
|
||||
|
@ -898,7 +898,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
layout.label(text="Settings are inside the Physics tab")
|
||||
|
||||
def SMOOTH(self, layout, ob, md):
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
col = split.column()
|
||||
col.label(text="Axis:")
|
||||
|
@ -956,7 +956,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
col.label(text="Material Index Offset:")
|
||||
|
||||
sub = col.column()
|
||||
row = sub.split(align=True, percentage=0.4)
|
||||
row = sub.split(factor=0.4, align=True)
|
||||
row.prop(md, "material_offset", text="")
|
||||
row = row.row(align=True)
|
||||
row.active = md.use_rim
|
||||
|
@ -1129,7 +1129,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
|
||||
layout.prop(md, "start_position_object")
|
||||
layout.prop_search(md, "vertex_group", ob, "vertex_groups")
|
||||
split = layout.split(percentage=0.33)
|
||||
split = layout.split(factor=0.33)
|
||||
col = split.column()
|
||||
col.label(text="Texture")
|
||||
col = split.column()
|
||||
|
@ -1176,17 +1176,17 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
def vertex_weight_mask(layout, ob, md):
|
||||
layout.label(text="Influence/Mask Options:")
|
||||
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Global Influence:")
|
||||
split.prop(md, "mask_constant", text="")
|
||||
|
||||
if not md.mask_texture:
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Vertex Group Mask:")
|
||||
split.prop_search(md, "mask_vertex_group", ob, "vertex_groups", text="")
|
||||
|
||||
if not md.mask_vertex_group:
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Texture Mask:")
|
||||
split.template_ID(md, "mask_texture", new="texture.new")
|
||||
if md.mask_texture:
|
||||
|
@ -1415,7 +1415,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
|
||||
layout.separator()
|
||||
|
||||
split = layout.split(0.333)
|
||||
split = layout.split(factor=0.333)
|
||||
split.prop(md, "use_vert_data")
|
||||
use_vert = md.use_vert_data
|
||||
row = split.row()
|
||||
|
@ -1423,7 +1423,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
row.prop(md, "vert_mapping", text="")
|
||||
if use_vert:
|
||||
col = layout.column(align=True)
|
||||
split = col.split(0.333, align=True)
|
||||
split = col.split(factor=0.333, align=True)
|
||||
sub = split.column(align=True)
|
||||
sub.prop(md, "data_types_verts")
|
||||
sub = split.column(align=True)
|
||||
|
@ -1436,7 +1436,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
|
||||
layout.separator()
|
||||
|
||||
split = layout.split(0.333)
|
||||
split = layout.split(factor=0.333)
|
||||
split.prop(md, "use_edge_data")
|
||||
use_edge = md.use_edge_data
|
||||
row = split.row()
|
||||
|
@ -1444,13 +1444,13 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
row.prop(md, "edge_mapping", text="")
|
||||
if use_edge:
|
||||
col = layout.column(align=True)
|
||||
split = col.split(0.333, align=True)
|
||||
split = col.split(factor=0.333, align=True)
|
||||
sub = split.column(align=True)
|
||||
sub.prop(md, "data_types_edges")
|
||||
|
||||
layout.separator()
|
||||
|
||||
split = layout.split(0.333)
|
||||
split = layout.split(factor=0.333)
|
||||
split.prop(md, "use_loop_data")
|
||||
use_loop = md.use_loop_data
|
||||
row = split.row()
|
||||
|
@ -1458,7 +1458,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
row.prop(md, "loop_mapping", text="")
|
||||
if use_loop:
|
||||
col = layout.column(align=True)
|
||||
split = col.split(0.333, align=True)
|
||||
split = col.split(factor=0.333, align=True)
|
||||
sub = split.column(align=True)
|
||||
sub.prop(md, "data_types_loops")
|
||||
sub = split.column(align=True)
|
||||
|
@ -1476,7 +1476,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
|
||||
layout.separator()
|
||||
|
||||
split = layout.split(0.333)
|
||||
split = layout.split(factor=0.333)
|
||||
split.prop(md, "use_poly_data")
|
||||
use_poly = md.use_poly_data
|
||||
row = split.row()
|
||||
|
@ -1484,7 +1484,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
|
|||
row.prop(md, "poly_mapping", text="")
|
||||
if use_poly:
|
||||
col = layout.column(align=True)
|
||||
split = col.split(0.333, align=True)
|
||||
split = col.split(factor=0.333, align=True)
|
||||
sub = split.column(align=True)
|
||||
sub.prop(md, "data_types_polys")
|
||||
|
||||
|
|
|
@ -45,7 +45,7 @@ class DATA_PT_context_speaker(DataButtonsPanel, Panel):
|
|||
speaker = context.speaker
|
||||
space = context.space_data
|
||||
|
||||
split = layout.split(percentage=0.65)
|
||||
split = layout.split(factor=0.65)
|
||||
|
||||
if ob:
|
||||
split.template_ID(ob, "data")
|
||||
|
|
|
@ -637,7 +637,7 @@ class GPENCIL_UL_annotation_layer(UIList):
|
|||
if gpl.lock:
|
||||
layout.active = False
|
||||
|
||||
split = layout.split(percentage=0.2)
|
||||
split = layout.split(factor=0.2)
|
||||
split.prop(gpl, "color", text="", emboss=True)
|
||||
split.prop(gpl, "info", text="", emboss=False)
|
||||
|
||||
|
|
|
@ -174,7 +174,7 @@ class PARTICLE_PT_context_particles(ParticleButtonsPanel, Panel):
|
|||
layout.prop(part, "type", text="Type")
|
||||
|
||||
elif not psys.settings:
|
||||
split = layout.split(percentage=0.32)
|
||||
split = layout.split(factor=0.32)
|
||||
|
||||
col = split.column()
|
||||
col.label(text="Settings:")
|
||||
|
@ -184,7 +184,7 @@ class PARTICLE_PT_context_particles(ParticleButtonsPanel, Panel):
|
|||
else:
|
||||
part = psys.settings
|
||||
|
||||
split = layout.split(percentage=0.32)
|
||||
split = layout.split(factor=0.32)
|
||||
col = split.column()
|
||||
if part.is_fluid is False:
|
||||
col.label(text="Settings:")
|
||||
|
@ -206,7 +206,7 @@ class PARTICLE_PT_context_particles(ParticleButtonsPanel, Panel):
|
|||
row.prop(psys, "seed")
|
||||
|
||||
if part:
|
||||
split = layout.split(percentage=0.65)
|
||||
split = layout.split(factor=0.65)
|
||||
if part.type == 'HAIR':
|
||||
if psys is not None and psys.is_edited:
|
||||
split.operator("particle.edited_clear", text="Free Edit")
|
||||
|
|
|
@ -249,7 +249,7 @@ class RENDER_PT_stamp(RenderButtonsPanel, Panel):
|
|||
if rd.use_sequencer:
|
||||
col.prop(rd, "use_stamp_strip_meta", text="Use Strip Metadata")
|
||||
|
||||
row = layout.split(percentage=0.3)
|
||||
row = layout.split(factor=0.3)
|
||||
row.prop(rd, "use_stamp_note", text="Note")
|
||||
sub = row.row()
|
||||
sub.active = rd.use_stamp_note
|
||||
|
@ -749,7 +749,7 @@ class RENDER_PT_eevee_indirect_lighting(RenderButtonsPanel, Panel):
|
|||
col.prop(props, "gi_visibility_resolution", text="Diffuse Occlusion")
|
||||
|
||||
layout.use_property_split = False
|
||||
row = layout.split(percentage=0.5)
|
||||
row = layout.split(factor=0.5)
|
||||
row.alignment = 'RIGHT'
|
||||
row.label(text="Cubemap Display")
|
||||
|
||||
|
@ -760,7 +760,7 @@ class RENDER_PT_eevee_indirect_lighting(RenderButtonsPanel, Panel):
|
|||
else:
|
||||
sub.prop(props, "gi_show_cubemaps", text="", toggle=True, icon='HIDE_ON')
|
||||
|
||||
row = layout.split(percentage=0.5)
|
||||
row = layout.split(factor=0.5)
|
||||
row.alignment = 'RIGHT'
|
||||
row.label(text="Irradiance Display")
|
||||
|
||||
|
|
|
@ -145,7 +145,7 @@ class TEXTURE_PT_context(TextureButtonsPanel, Panel):
|
|||
if tex:
|
||||
col.separator()
|
||||
|
||||
split = col.split(percentage=0.2)
|
||||
split = col.split(factor=0.2)
|
||||
split.label(text="Type")
|
||||
split.prop(tex, "type", text="")
|
||||
|
||||
|
|
|
@ -756,7 +756,7 @@ class CLIP_PT_tracking_lens(Panel):
|
|||
clip = sc.clip
|
||||
|
||||
row = layout.row(align=True)
|
||||
sub = row.split(percentage=0.65, align=True)
|
||||
sub = row.split(factor=0.65, align=True)
|
||||
if clip.tracking.camera.units == 'MILLIMETERS':
|
||||
sub.prop(clip.tracking.camera, "focal_length")
|
||||
else:
|
||||
|
|
|
@ -1372,7 +1372,7 @@ class IMAGE_PT_view_waveform(ImageScopesPanel, Panel):
|
|||
sima = context.space_data
|
||||
|
||||
layout.template_waveform(sima, "scopes")
|
||||
row = layout.split(percentage=0.75)
|
||||
row = layout.split(factor=0.75)
|
||||
row.prop(sima.scopes, "waveform_alpha")
|
||||
row.prop(sima.scopes, "waveform_mode", text="")
|
||||
|
||||
|
|
|
@ -36,7 +36,7 @@ def act_strip(context):
|
|||
|
||||
def draw_color_balance(layout, color_balance):
|
||||
box = layout.box()
|
||||
split = box.split(percentage=0.35)
|
||||
split = box.split(factor=0.35)
|
||||
col = split.column(align=True)
|
||||
col.label(text="Lift:")
|
||||
col.separator()
|
||||
|
@ -46,7 +46,7 @@ def draw_color_balance(layout, color_balance):
|
|||
split.template_color_picker(color_balance, "lift", value_slider=True, cubic=True)
|
||||
|
||||
box = layout.box()
|
||||
split = box.split(percentage=0.35)
|
||||
split = box.split(factor=0.35)
|
||||
col = split.column(align=True)
|
||||
col.label(text="Gamma:")
|
||||
col.separator()
|
||||
|
@ -56,7 +56,7 @@ def draw_color_balance(layout, color_balance):
|
|||
split.template_color_picker(color_balance, "gamma", value_slider=True, lock_luminosity=True, cubic=True)
|
||||
|
||||
box = layout.box()
|
||||
split = box.split(percentage=0.35)
|
||||
split = box.split(factor=0.35)
|
||||
col = split.column(align=True)
|
||||
col.label(text="Gain:")
|
||||
col.separator()
|
||||
|
@ -537,16 +537,16 @@ class SEQUENCER_PT_edit(SequencerButtonsPanel, Panel):
|
|||
frame_current = scene.frame_current
|
||||
strip = act_strip(context)
|
||||
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
split.label(text="Name:")
|
||||
split.prop(strip, "name", text="")
|
||||
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
split.label(text="Type:")
|
||||
split.prop(strip, "type", text="")
|
||||
|
||||
if strip.type != 'SOUND':
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
split.label(text="Blend:")
|
||||
split.prop(strip, "blend_type", text="")
|
||||
|
||||
|
@ -764,7 +764,7 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel):
|
|||
row.prop(strip, "size_x")
|
||||
row.prop(strip, "size_y")
|
||||
elif strip.type == 'COLORMIX':
|
||||
split = layout.split(percentage=0.35)
|
||||
split = layout.split(factor=0.35)
|
||||
split.label(text="Blend Mode:")
|
||||
split.prop(strip, "blend_effect", text="")
|
||||
row = layout.row(align=True)
|
||||
|
@ -802,7 +802,7 @@ class SEQUENCER_PT_input(SequencerButtonsPanel, Panel):
|
|||
|
||||
# draw a filename if we have one
|
||||
if seq_type == 'IMAGE':
|
||||
split = layout.split(percentage=0.2)
|
||||
split = layout.split(factor=0.2)
|
||||
split.label(text="Path:")
|
||||
split.prop(strip, "directory", text="")
|
||||
|
||||
|
@ -810,26 +810,26 @@ class SEQUENCER_PT_input(SequencerButtonsPanel, Panel):
|
|||
|
||||
elem = strip.strip_elem_from_frame(scene.frame_current)
|
||||
if elem:
|
||||
split = layout.split(percentage=0.2)
|
||||
split = layout.split(factor=0.2)
|
||||
split.label(text="File:")
|
||||
split.prop(elem, "filename", text="") # strip.elements[0] could be a fallback
|
||||
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Color Space:")
|
||||
split.prop(strip.colorspace_settings, "name", text="")
|
||||
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Alpha:")
|
||||
split.prop(strip, "alpha_mode", text="")
|
||||
|
||||
layout.operator("sequencer.change_path", icon='FILESEL').filter_image = True
|
||||
|
||||
elif seq_type == 'MOVIE':
|
||||
split = layout.split(percentage=0.2)
|
||||
split = layout.split(factor=0.2)
|
||||
split.label(text="Path:")
|
||||
split.prop(strip, "filepath", text="")
|
||||
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
split.label(text="Color Space:")
|
||||
split.prop(strip.colorspace_settings, "name", text="")
|
||||
|
||||
|
@ -1049,7 +1049,7 @@ class SEQUENCER_PT_filter(SequencerButtonsPanel, Panel):
|
|||
col.label(text="Distortion:")
|
||||
col.prop(strip, "undistort")
|
||||
|
||||
split = layout.split(percentage=0.6)
|
||||
split = layout.split(factor=0.6)
|
||||
col = split.column()
|
||||
col.prop(strip, "use_reverse_frames", text="Reverse")
|
||||
col.prop(strip, "use_deinterlace")
|
||||
|
|
|
@ -465,7 +465,7 @@ class USERPREF_PT_system(Panel):
|
|||
|
||||
# 1. Column
|
||||
column = split.column()
|
||||
colsplit = column.split(percentage=0.85)
|
||||
colsplit = column.split(factor=0.85)
|
||||
|
||||
col = colsplit.column()
|
||||
col.label(text="General:")
|
||||
|
@ -498,7 +498,7 @@ class USERPREF_PT_system(Panel):
|
|||
|
||||
# 2. Column
|
||||
column = split.column()
|
||||
colsplit = column.split(percentage=0.85)
|
||||
colsplit = column.split(factor=0.85)
|
||||
|
||||
col = colsplit.column()
|
||||
col.label(text="OpenGL:")
|
||||
|
@ -637,14 +637,14 @@ class USERPREF_PT_theme(Panel):
|
|||
def theme_generic_recurse(data):
|
||||
col.label(text=data.rna_type.name)
|
||||
row = col.row()
|
||||
subsplit = row.split(percentage=0.95)
|
||||
subsplit = row.split(factor=0.95)
|
||||
|
||||
padding1 = subsplit.split(percentage=0.15)
|
||||
padding1 = subsplit.split(factor=0.15)
|
||||
padding1.column()
|
||||
|
||||
subsplit = row.split(percentage=0.85)
|
||||
subsplit = row.split(factor=0.85)
|
||||
|
||||
padding2 = subsplit.split(percentage=0.15)
|
||||
padding2 = subsplit.split(factor=0.15)
|
||||
padding2.column()
|
||||
|
||||
colsub_pair = padding1.column(), padding2.column()
|
||||
|
@ -689,9 +689,9 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
row = layout.row()
|
||||
|
||||
subsplit = row.split(percentage=0.95)
|
||||
subsplit = row.split(factor=0.95)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(widget_style, "outline")
|
||||
|
@ -700,9 +700,9 @@ class USERPREF_PT_theme(Panel):
|
|||
colsub.row().prop(widget_style, "inner_sel", slider=True)
|
||||
colsub.row().prop(widget_style, "roundness")
|
||||
|
||||
subsplit = row.split(percentage=0.85)
|
||||
subsplit = row.split(factor=0.85)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(widget_style, "text")
|
||||
|
@ -747,7 +747,7 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
theme = context.user_preferences.themes[0]
|
||||
|
||||
split_themes = layout.split(percentage=0.2)
|
||||
split_themes = layout.split(factor=0.2)
|
||||
|
||||
sub = split_themes.column()
|
||||
|
||||
|
@ -761,7 +761,7 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
sub.prop(theme, "theme_area", expand=True)
|
||||
|
||||
split = layout.split(percentage=0.4)
|
||||
split = layout.split(factor=0.4)
|
||||
|
||||
layout.separator()
|
||||
layout.separator()
|
||||
|
@ -837,9 +837,9 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
row = col.row()
|
||||
|
||||
subsplit = row.split(percentage=0.95)
|
||||
subsplit = row.split(factor=0.95)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui_state, "inner_anim")
|
||||
|
@ -848,9 +848,9 @@ class USERPREF_PT_theme(Panel):
|
|||
colsub.row().prop(ui_state, "inner_driven_sel")
|
||||
colsub.row().prop(ui_state, "blend")
|
||||
|
||||
subsplit = row.split(percentage=0.85)
|
||||
subsplit = row.split(factor=0.85)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui_state, "inner_key")
|
||||
|
@ -865,9 +865,9 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
row = col.row()
|
||||
|
||||
subsplit = row.split(percentage=0.95)
|
||||
subsplit = row.split(factor=0.95)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui, "menu_shadow_fac")
|
||||
|
@ -875,9 +875,9 @@ class USERPREF_PT_theme(Panel):
|
|||
colsub.row().prop(ui, "icon_saturation")
|
||||
colsub.row().prop(ui, "editor_outline")
|
||||
|
||||
subsplit = row.split(percentage=0.85)
|
||||
subsplit = row.split(factor=0.85)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui, "menu_shadow_width")
|
||||
|
@ -890,18 +890,18 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
row = col.row()
|
||||
|
||||
subsplit = row.split(percentage=0.95)
|
||||
subsplit = row.split(factor=0.95)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui, "axis_x")
|
||||
colsub.row().prop(ui, "axis_y")
|
||||
colsub.row().prop(ui, "axis_z")
|
||||
|
||||
subsplit = row.split(percentage=0.85)
|
||||
subsplit = row.split(factor=0.85)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui, "gizmo_primary")
|
||||
|
@ -919,18 +919,18 @@ class USERPREF_PT_theme(Panel):
|
|||
|
||||
row = col.row()
|
||||
|
||||
subsplit = row.split(percentage=0.95)
|
||||
subsplit = row.split(factor=0.95)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui, "normal")
|
||||
colsub.row().prop(ui, "select")
|
||||
colsub.row().prop(ui, "active")
|
||||
|
||||
subsplit = row.split(percentage=0.85)
|
||||
subsplit = row.split(factor=0.85)
|
||||
|
||||
padding = subsplit.split(percentage=0.15)
|
||||
padding = subsplit.split(factor=0.15)
|
||||
colsub = padding.column()
|
||||
colsub = padding.column()
|
||||
colsub.row().prop(ui, "show_colored_constraints")
|
||||
|
@ -973,13 +973,13 @@ class USERPREF_PT_file(Panel):
|
|||
paths = userpref.filepaths
|
||||
system = userpref.system
|
||||
|
||||
split = layout.split(percentage=0.7)
|
||||
split = layout.split(factor=0.7)
|
||||
|
||||
col = split.column()
|
||||
col.label(text="File Paths:")
|
||||
|
||||
colsplit = col.split(percentage=0.95)
|
||||
col1 = colsplit.split(percentage=0.3)
|
||||
colsplit = col.split(factor=0.95)
|
||||
col1 = colsplit.split(factor=0.3)
|
||||
|
||||
sub = col1.column()
|
||||
sub.label(text="Fonts:")
|
||||
|
@ -1003,17 +1003,17 @@ class USERPREF_PT_file(Panel):
|
|||
sub.prop(paths, "render_cache_directory", text="")
|
||||
sub.prop(paths, "i18n_branches_directory", text="")
|
||||
sub.prop(paths, "image_editor", text="")
|
||||
subsplit = sub.split(percentage=0.3)
|
||||
subsplit = sub.split(factor=0.3)
|
||||
subsplit.prop(paths, "animation_player_preset", text="")
|
||||
subsplit.prop(paths, "animation_player", text="")
|
||||
|
||||
col.separator()
|
||||
col.separator()
|
||||
|
||||
colsplit = col.split(percentage=0.95)
|
||||
colsplit = col.split(factor=0.95)
|
||||
sub = colsplit.column()
|
||||
|
||||
row = sub.split(percentage=0.3)
|
||||
row = sub.split(factor=0.3)
|
||||
row.label(text="Auto Execution:")
|
||||
row.prop(system, "use_scripts_auto_execute")
|
||||
|
||||
|
@ -1059,8 +1059,8 @@ class USERPREF_PT_file(Panel):
|
|||
col.label(text="Text Editor:")
|
||||
col.prop(system, "use_tabs_as_spaces")
|
||||
|
||||
colsplit = col.split(percentage=0.95)
|
||||
col1 = colsplit.split(percentage=0.3)
|
||||
colsplit = col.split(factor=0.95)
|
||||
col1 = colsplit.split(factor=0.3)
|
||||
|
||||
sub = col1.column()
|
||||
sub.label(text="Author:")
|
||||
|
@ -1258,7 +1258,7 @@ class USERPREF_PT_input(Panel):
|
|||
|
||||
inputs = userpref.inputs
|
||||
|
||||
split = layout.split(percentage=0.25)
|
||||
split = layout.split(factor=0.25)
|
||||
|
||||
# Input settings
|
||||
self.draw_input_prefs(inputs, split)
|
||||
|
@ -1358,7 +1358,7 @@ class USERPREF_PT_addons(Panel):
|
|||
for mod in addon_utils.modules(refresh=False)
|
||||
]
|
||||
|
||||
split = layout.split(percentage=0.2)
|
||||
split = layout.split(factor=0.2)
|
||||
col = split.column()
|
||||
col.prop(context.window_manager, "addon_search", text="", icon='VIEWZOOM')
|
||||
|
||||
|
@ -1458,27 +1458,27 @@ class USERPREF_PT_addons(Panel):
|
|||
# Expanded UI (only if additional info is available)
|
||||
if info["show_expanded"]:
|
||||
if info["description"]:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Description:")
|
||||
split.label(text=info["description"])
|
||||
if info["location"]:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Location:")
|
||||
split.label(text=info["location"])
|
||||
if mod:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="File:")
|
||||
split.label(text=mod.__file__, translate=False)
|
||||
if info["author"]:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Author:")
|
||||
split.label(text=info["author"], translate=False)
|
||||
if info["version"]:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Version:")
|
||||
split.label(text=".".join(str(x) for x in info["version"]), translate=False)
|
||||
if info["warning"]:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Warning:")
|
||||
split.label(text=" " + info["warning"], icon='ERROR')
|
||||
|
||||
|
@ -1486,7 +1486,7 @@ class USERPREF_PT_addons(Panel):
|
|||
tot_row = bool(info["wiki_url"]) + bool(user_addon)
|
||||
|
||||
if tot_row:
|
||||
split = colsub.row().split(percentage=0.15)
|
||||
split = colsub.row().split(factor=0.15)
|
||||
split.label(text="Internet:")
|
||||
if info["wiki_url"]:
|
||||
split.operator(
|
||||
|
@ -1634,11 +1634,11 @@ class USERPREF_PT_studiolight_specular(Panel, StudioLightPanelMixin):
|
|||
system = userpref.system
|
||||
|
||||
light = system.solid_lights[0]
|
||||
colsplit = column.split(percentage=0.85)
|
||||
colsplit = column.split(factor=0.85)
|
||||
self.opengl_light_buttons(colsplit, light)
|
||||
|
||||
light = system.solid_lights[1]
|
||||
colsplit = column.split(percentage=0.85)
|
||||
colsplit = column.split(factor=0.85)
|
||||
self.opengl_light_buttons(colsplit, light)
|
||||
|
||||
light = system.solid_lights[2]
|
||||
|
|
|
@ -3948,13 +3948,13 @@ class VIEW3D_PT_shading_lighting(Panel):
|
|||
shading = VIEW3D_PT_shading.get_shading(context)
|
||||
|
||||
col = layout.column()
|
||||
split = col.split(0.9)
|
||||
split = col.split(factor=0.9)
|
||||
|
||||
if shading.type == 'SOLID':
|
||||
split.row().prop(shading, "light", expand=True)
|
||||
col = split.column()
|
||||
|
||||
split = layout.split(0.9)
|
||||
split = layout.split(factor=0.9)
|
||||
col = split.column()
|
||||
sub = col.row()
|
||||
sub.scale_y = 0.6 # smaller matcap/hdri preview
|
||||
|
@ -3981,7 +3981,7 @@ class VIEW3D_PT_shading_lighting(Panel):
|
|||
|
||||
if not shading.use_scene_world:
|
||||
col = layout.column()
|
||||
split = col.split(0.9)
|
||||
split = col.split(factor=0.9)
|
||||
|
||||
col = split.column()
|
||||
sub = col.row()
|
||||
|
@ -3992,7 +3992,7 @@ class VIEW3D_PT_shading_lighting(Panel):
|
|||
col.operator('wm.studiolight_userpref_show', emboss=False, text="", icon='PREFERENCES')
|
||||
|
||||
if shading.selected_studio_light.orientation == 'WORLD':
|
||||
split = layout.split(0.9)
|
||||
split = layout.split(factor=0.9)
|
||||
col = split.column()
|
||||
col.prop(shading, "studiolight_rotate_z", text="Rotation")
|
||||
col.prop(shading, "studiolight_background_alpha")
|
||||
|
|
|
@ -625,14 +625,14 @@ class VIEW3D_PT_stencil_projectpaint(View3DPanel, Panel):
|
|||
col.active = ipaint.use_stencil_layer
|
||||
|
||||
stencil_text = mesh.uv_layer_stencil.name if mesh.uv_layer_stencil else ""
|
||||
split = col.split(0.5)
|
||||
split = col.split(factor=0.5)
|
||||
colsub = split.column()
|
||||
colsub.alignment = 'RIGHT'
|
||||
colsub.label(text="UV Layer")
|
||||
split.column().menu("VIEW3D_MT_tools_projectpaint_stencil", text=stencil_text, translate=False)
|
||||
|
||||
# todo this should be combinded into a single row
|
||||
split = col.split(0.5)
|
||||
split = col.split(factor=0.5)
|
||||
colsub = split.column()
|
||||
colsub.alignment = 'RIGHT'
|
||||
colsub.label(text="Stencil Image")
|
||||
|
@ -814,7 +814,7 @@ class VIEW3D_PT_tools_brush_stroke(Panel, View3DPaintPanel):
|
|||
if brush.sculpt_capabilities.has_jitter:
|
||||
col.separator()
|
||||
|
||||
colsub = col.split(0.5)
|
||||
colsub = col.split(factor=0.5)
|
||||
row = colsub.row(align=True)
|
||||
row.alignment = 'RIGHT'
|
||||
row.label(text="Jitter")
|
||||
|
@ -1180,7 +1180,7 @@ class VIEW3D_PT_tools_imagepaint_external(Panel, View3DPaintPanel):
|
|||
ipaint = toolsettings.image_paint
|
||||
|
||||
col = layout.column()
|
||||
row = col.split(align=True, percentage=0.55)
|
||||
row = col.split(factor=0.55, align=True)
|
||||
row.operator("image.project_edit", text="Quick Edit")
|
||||
row.operator("image.project_apply", text="Apply")
|
||||
|
||||
|
|
|
@ -543,7 +543,10 @@ void RNA_api_ui_layout(StructRNA *srna)
|
|||
func = RNA_def_function(srna, "split", "uiLayoutSplit");
|
||||
parm = RNA_def_pointer(func, "layout", "UILayout", "", "Sub-layout to put items in");
|
||||
RNA_def_function_return(func, parm);
|
||||
RNA_def_float(func, "percentage", 0.0f, 0.0f, 1.0f, "Percentage", "Percentage of width to split at", 0.0f, 1.0f);
|
||||
RNA_def_float(
|
||||
func, "factor", 0.0f, 0.0f, 1.0f, "Percentage",
|
||||
"Percentage of width to split at (leave unset for automatic calculation)",
|
||||
0.0f, 1.0f);
|
||||
RNA_def_boolean(func, "align", false, "", "Align buttons to each other");
|
||||
|
||||
/* radial/pie layout */
|
||||
|
|
Loading…
Reference in New Issue