Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDarshan Kadu <darsh7807@gmail.com>2017-09-10 15:41:40 +0300
committerDarshan Kadu <darsh7807@gmail.com>2017-09-10 15:41:40 +0300
commit6594fa1ce02809a275c9cd488fa0223d03d73571 (patch)
tree0bcd95846e1e3b09239126b40ef434ed3dc3a50d /release/scripts/startup
parentf2017083a19e5c83aadc575625dce0642ffce6c5 (diff)
merged the master branchsoc-2017-vertex_paint
Diffstat (limited to 'release/scripts/startup')
-rw-r--r--release/scripts/startup/bl_operators/anim.py49
-rw-r--r--release/scripts/startup/bl_operators/clip.py11
-rw-r--r--release/scripts/startup/bl_operators/uvcalc_smart_project.py4
-rw-r--r--release/scripts/startup/bl_ui/properties_animviz.py14
-rw-r--r--release/scripts/startup/bl_ui/properties_constraint.py4
-rw-r--r--release/scripts/startup/bl_ui/properties_data_armature.py20
-rw-r--r--release/scripts/startup/bl_ui/properties_data_camera.py2
-rw-r--r--release/scripts/startup/bl_ui/properties_data_curve.py4
-rw-r--r--release/scripts/startup/bl_ui/properties_data_lamp.py6
-rw-r--r--release/scripts/startup/bl_ui/properties_data_metaball.py2
-rw-r--r--release/scripts/startup/bl_ui/properties_data_modifier.py13
-rw-r--r--release/scripts/startup/bl_ui/properties_freestyle.py4
-rw-r--r--release/scripts/startup/bl_ui/properties_game.py8
-rw-r--r--release/scripts/startup/bl_ui/properties_grease_pencil_common.py60
-rw-r--r--release/scripts/startup/bl_ui/properties_material.py7
-rw-r--r--release/scripts/startup/bl_ui/properties_object.py2
-rw-r--r--release/scripts/startup/bl_ui/properties_paint_common.py4
-rw-r--r--release/scripts/startup/bl_ui/properties_particle.py16
-rw-r--r--release/scripts/startup/bl_ui/properties_physics_common.py2
-rw-r--r--release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py14
-rw-r--r--release/scripts/startup/bl_ui/properties_physics_field.py2
-rw-r--r--release/scripts/startup/bl_ui/properties_physics_smoke.py6
-rw-r--r--release/scripts/startup/bl_ui/properties_physics_softbody.py7
-rw-r--r--release/scripts/startup/bl_ui/properties_render.py9
-rw-r--r--release/scripts/startup/bl_ui/properties_texture.py22
-rw-r--r--release/scripts/startup/bl_ui/properties_world.py2
-rw-r--r--release/scripts/startup/bl_ui/space_clip.py6
-rw-r--r--release/scripts/startup/bl_ui/space_image.py8
-rw-r--r--release/scripts/startup/bl_ui/space_node.py10
-rw-r--r--release/scripts/startup/bl_ui/space_outliner.py2
-rw-r--r--release/scripts/startup/bl_ui/space_sequencer.py47
-rw-r--r--release/scripts/startup/bl_ui/space_time.py2
-rw-r--r--release/scripts/startup/bl_ui/space_userpref.py26
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py17
-rw-r--r--release/scripts/startup/bl_ui/space_view3d_toolbar.py40
-rw-r--r--release/scripts/startup/keyingsets_builtins.py23
36 files changed, 251 insertions, 224 deletions
diff --git a/release/scripts/startup/bl_operators/anim.py b/release/scripts/startup/bl_operators/anim.py
index 02fb05e29eb..0632f9bc3ca 100644
--- a/release/scripts/startup/bl_operators/anim.py
+++ b/release/scripts/startup/bl_operators/anim.py
@@ -137,6 +137,9 @@ class ANIM_OT_keying_set_export(Operator):
break
else:
self.report({'WARN'}, "Could not find scene using Compositor Node Tree - %s" % (ksp.id))
+ elif ksp.id.bl_rna.name == "Key":
+ # "keys" conflicts with a Python keyword, hence the simple solution won't work
+ id_bpy_path = "bpy.data.shape_keys[\"%s\"]" % (ksp.id.name)
else:
idtype_list = ksp.id.bl_rna.name.lower() + "s"
id_bpy_path = "bpy.data.%s[\"%s\"]" % (idtype_list, ksp.id.name)
@@ -195,7 +198,7 @@ class ANIM_OT_keying_set_export(Operator):
class BakeAction(Operator):
- """Bake object/pose loc/scale/rotation animation to a new action"""
+ """Bake all selected objects loc/scale/rotation animation to an action"""
bl_idname = "nla.bake"
bl_label = "Bake Action"
bl_options = {'REGISTER', 'UNDO'}
@@ -219,7 +222,7 @@ class BakeAction(Operator):
default=1,
)
only_selected = BoolProperty(
- name="Only Selected",
+ name="Only Selected Bones",
description="Only key selected bones (Pose baking only)",
default=True,
)
@@ -255,29 +258,27 @@ class BakeAction(Operator):
)
def execute(self, context):
-
from bpy_extras import anim_utils
-
- action = None
- if self.use_current_action:
- obj = context.object
- if obj.animation_data:
- action = obj.animation_data.action
-
- action = anim_utils.bake_action(self.frame_start,
- self.frame_end,
- frame_step=self.step,
- only_selected=self.only_selected,
- do_pose='POSE' in self.bake_types,
- do_object='OBJECT' in self.bake_types,
- do_visual_keying=self.visual_keying,
- do_constraint_clear=self.clear_constraints,
- do_parents_clear=self.clear_parents,
- do_clean=True,
- action=action,
- )
-
- if action is None:
+ objects = context.selected_editable_objects
+ object_action_pairs = (
+ [(obj, getattr(obj.animation_data, "action", None)) for obj in objects]
+ if self.use_current_action else
+ [(obj, None) for obj in objects]
+ )
+
+ actions = anim_utils.bake_action_objects(
+ object_action_pairs,
+ frames=range(self.frame_start, self.frame_end + 1, self.step),
+ only_selected=self.only_selected,
+ do_pose='POSE' in self.bake_types,
+ do_object='OBJECT' in self.bake_types,
+ do_visual_keying=self.visual_keying,
+ do_constraint_clear=self.clear_constraints,
+ do_parents_clear=self.clear_parents,
+ do_clean=True,
+ )
+
+ if not any(actions):
self.report({'INFO'}, "Nothing to bake")
return {'CANCELLED'}
diff --git a/release/scripts/startup/bl_operators/clip.py b/release/scripts/startup/bl_operators/clip.py
index e52d577b900..f63b0495d02 100644
--- a/release/scripts/startup/bl_operators/clip.py
+++ b/release/scripts/startup/bl_operators/clip.py
@@ -210,7 +210,7 @@ class CLIP_OT_set_active_clip(bpy.types.Operator):
@classmethod
def poll(cls, context):
space = context.space_data
- return space.type == 'CLIP_EDITOR'
+ return space.type == 'CLIP_EDITOR' and space.clip
def execute(self, context):
clip = context.space_data.clip
@@ -254,6 +254,11 @@ class CLIP_OT_track_to_empty(Operator):
constraint.object = tracking_object.name
constraint.camera = CLIP_camera_for_clip(context, clip)
+ @classmethod
+ def poll(cls, context):
+ space = context.space_data
+ return space.type == 'CLIP_EDITOR' and space.clip
+
def execute(self, context):
sc = context.space_data
clip = sc.clip
@@ -782,8 +787,8 @@ class CLIP_OT_setup_tracking_scene(Operator):
tree.links.new(mul_shadow.outputs["Image"], mul_image.inputs[2])
tree.links.new(rlayer_fg.outputs["Image"], vector_blur.inputs["Image"])
- tree.links.new(rlayer_fg.outputs["Z"], vector_blur.inputs["Z"])
- tree.links.new(rlayer_fg.outputs["Speed"], vector_blur.inputs["Speed"])
+ tree.links.new(rlayer_fg.outputs["Depth"], vector_blur.inputs["Z"])
+ tree.links.new(rlayer_fg.outputs["Vector"], vector_blur.inputs["Speed"])
tree.links.new(mul_image.outputs["Image"], alphaover.inputs[1])
tree.links.new(vector_blur.outputs["Image"], alphaover.inputs[2])
diff --git a/release/scripts/startup/bl_operators/uvcalc_smart_project.py b/release/scripts/startup/bl_operators/uvcalc_smart_project.py
index 5581415c083..cc590ac9502 100644
--- a/release/scripts/startup/bl_operators/uvcalc_smart_project.py
+++ b/release/scripts/startup/bl_operators/uvcalc_smart_project.py
@@ -723,7 +723,7 @@ def main(context,
global USER_FILL_HOLES_QUALITY
global USER_STRETCH_ASPECT
global USER_ISLAND_MARGIN
-
+
from math import cos
import time
@@ -747,7 +747,7 @@ def main(context,
USER_FILL_HOLES = 0
USER_FILL_HOLES_QUALITY = 50 # Only for hole filling.
USER_VIEW_INIT = 0 # Only for hole filling.
-
+
is_editmode = (context.active_object.mode == 'EDIT')
if is_editmode:
obList = [ob for ob in [context.active_object] if ob and ob.type == 'MESH']
diff --git a/release/scripts/startup/bl_ui/properties_animviz.py b/release/scripts/startup/bl_ui/properties_animviz.py
index 84bae18dd6f..9782d5a072c 100644
--- a/release/scripts/startup/bl_ui/properties_animviz.py
+++ b/release/scripts/startup/bl_ui/properties_animviz.py
@@ -37,7 +37,7 @@ class MotionPathButtonsPanel:
mps = avs.motion_path
# Display Range
- layout.prop(mps, "type", expand=True)
+ layout.row().prop(mps, "type", expand=True)
split = layout.split()
@@ -87,11 +87,11 @@ class MotionPathButtonsPanel:
col.label(text="Show:")
col.prop(mps, "show_frame_numbers", text="Frame Numbers")
if mpath is not None:
- col.prop(mpath, "lines", text='Lines')
- col.prop(mpath, "line_thickness", text='Thickness')
+ col.prop(mpath, "lines", text="Lines")
+ col.prop(mpath, "line_thickness", text="Thickness")
col = split.column()
- col.label('')
+ col.label("")
col.prop(mps, "show_keyframe_highlight", text="Keyframes")
sub = col.column()
sub.enabled = mps.show_keyframe_highlight
@@ -102,10 +102,10 @@ class MotionPathButtonsPanel:
# Customize path
if mpath is not None:
row = layout.row(align=True)
- row.prop(mpath, "use_custom_color", text='', toggle=True, icon='COLOR')
+ row.prop(mpath, "use_custom_color", text="", toggle=True, icon='COLOR')
sub = row.row(align=True)
sub.enabled = mpath.use_custom_color
- sub.prop(mpath, "color", text='')
+ sub.prop(mpath, "color", text="")
# FIXME: this panel still needs to be ported so that it will work correctly with animviz
@@ -120,7 +120,7 @@ class OnionSkinButtonsPanel:
arm = context.armature
- layout.prop(arm, "ghost_type", expand=True)
+ layout.row().prop(arm, "ghost_type", expand=True)
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_constraint.py b/release/scripts/startup/bl_ui/properties_constraint.py
index 00892d5f85b..9b61101778f 100644
--- a/release/scripts/startup/bl_ui/properties_constraint.py
+++ b/release/scripts/startup/bl_ui/properties_constraint.py
@@ -886,10 +886,10 @@ class ConstraintButtonsPanel:
box.template_cache_file(con, "cache_file")
cache_file = con.cache_file
-
+
layout.label(text="Constraint Properties:")
box = layout.box()
-
+
if cache_file is not None:
box.prop_search(con, "object_path", cache_file, "object_paths")
diff --git a/release/scripts/startup/bl_ui/properties_data_armature.py b/release/scripts/startup/bl_ui/properties_data_armature.py
index a2ecf984eb5..6a13e2ddd44 100644
--- a/release/scripts/startup/bl_ui/properties_data_armature.py
+++ b/release/scripts/startup/bl_ui/properties_data_armature.py
@@ -57,7 +57,7 @@ class DATA_PT_skeleton(ArmatureButtonsPanel, Panel):
arm = context.armature
- layout.prop(arm, "pose_position", expand=True)
+ layout.row().prop(arm, "pose_position", expand=True)
col = layout.column()
col.label(text="Layers:")
@@ -80,7 +80,7 @@ class DATA_PT_display(ArmatureButtonsPanel, Panel):
ob = context.object
arm = context.armature
- layout.prop(arm, "draw_type", expand=True)
+ layout.row().prop(arm, "draw_type", expand=True)
split = layout.split()
@@ -96,7 +96,7 @@ class DATA_PT_display(ArmatureButtonsPanel, Panel):
col.prop(arm, "use_deform_delay", text="Delay Refresh")
-class DATA_PT_bone_group_specials(Menu):
+class DATA_MT_bone_group_specials(Menu):
bl_label = "Bone Group Specials"
def draw(self, context):
@@ -130,7 +130,7 @@ class DATA_PT_bone_groups(ArmatureButtonsPanel, Panel):
col.active = (ob.proxy is None)
col.operator("pose.group_add", icon='ZOOMIN', text="")
col.operator("pose.group_remove", icon='ZOOMOUT', text="")
- col.menu("DATA_PT_bone_group_specials", icon='DOWNARROW_HLT', text="")
+ col.menu("DATA_MT_bone_group_specials", icon='DOWNARROW_HLT', text="")
if group:
col.separator()
col.operator("pose.group_move", icon='TRIA_UP', text="").direction = 'UP'
@@ -178,6 +178,10 @@ class DATA_PT_pose_library(ArmatureButtonsPanel, Panel):
layout.template_ID(ob, "pose_library", new="poselib.new", unlink="poselib.unlink")
if poselib:
+ # warning about poselib being in an invalid state
+ if len(poselib.fcurves) > 0 and len(poselib.pose_markers) == 0:
+ layout.label(icon='ERROR', text="Error: Potentially corrupt library, run 'Sanitize' operator to fix")
+
# list of poses in pose library
row = layout.row()
row.template_list("UI_UL_list", "pose_markers", poselib, "pose_markers",
@@ -215,7 +219,7 @@ class DATA_PT_ghost(ArmatureButtonsPanel, Panel):
arm = context.armature
- layout.prop(arm, "ghost_type", expand=True)
+ layout.row().prop(arm, "ghost_type", expand=True)
split = layout.split()
@@ -252,11 +256,11 @@ class DATA_PT_iksolver_itasc(ArmatureButtonsPanel, Panel):
layout.prop(ob.pose, "ik_solver")
if itasc:
- layout.prop(itasc, "mode", expand=True)
+ layout.row().prop(itasc, "mode", expand=True)
simulation = (itasc.mode == 'SIMULATION')
if simulation:
layout.label(text="Reiteration:")
- layout.prop(itasc, "reiteration_method", expand=True)
+ layout.row().prop(itasc, "reiteration_method", expand=True)
row = layout.row()
row.active = not simulation or itasc.reiteration_method != 'NEVER'
@@ -333,7 +337,7 @@ classes = (
DATA_PT_context_arm,
DATA_PT_skeleton,
DATA_PT_display,
- DATA_PT_bone_group_specials,
+ DATA_MT_bone_group_specials,
DATA_PT_bone_groups,
DATA_PT_pose_library,
DATA_PT_ghost,
diff --git a/release/scripts/startup/bl_ui/properties_data_camera.py b/release/scripts/startup/bl_ui/properties_data_camera.py
index 101062095c4..14286045704 100644
--- a/release/scripts/startup/bl_ui/properties_data_camera.py
+++ b/release/scripts/startup/bl_ui/properties_data_camera.py
@@ -79,7 +79,7 @@ class DATA_PT_lens(CameraButtonsPanel, Panel):
cam = context.camera
- layout.prop(cam, "type", expand=True)
+ layout.row().prop(cam, "type", expand=True)
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_data_curve.py b/release/scripts/startup/bl_ui/properties_data_curve.py
index ac1eb9505a6..3a3ad31a8ef 100644
--- a/release/scripts/startup/bl_ui/properties_data_curve.py
+++ b/release/scripts/startup/bl_ui/properties_data_curve.py
@@ -371,10 +371,10 @@ class DATA_PT_paragraph(CurveButtonsPanelText, Panel):
text = context.curve
layout.label(text="Horizontal Alignment:")
- layout.prop(text, "align_x", expand=True)
+ layout.row().prop(text, "align_x", expand=True)
layout.label(text="Vertical Alignment:")
- layout.prop(text, "align_y", expand=True)
+ layout.row().prop(text, "align_y", expand=True)
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_data_lamp.py b/release/scripts/startup/bl_ui/properties_data_lamp.py
index f913ef51381..f9394139b42 100644
--- a/release/scripts/startup/bl_ui/properties_data_lamp.py
+++ b/release/scripts/startup/bl_ui/properties_data_lamp.py
@@ -83,7 +83,7 @@ class DATA_PT_lamp(DataButtonsPanel, Panel):
lamp = context.lamp
- layout.prop(lamp, "type", expand=True)
+ layout.row().prop(lamp, "type", expand=True)
split = layout.split()
@@ -210,13 +210,13 @@ class DATA_PT_shadow(DataButtonsPanel, Panel):
lamp = context.lamp
- layout.prop(lamp, "shadow_method", expand=True)
+ layout.row().prop(lamp, "shadow_method", expand=True)
if lamp.shadow_method == 'NOSHADOW' and lamp.type == 'AREA':
split = layout.split()
col = split.column()
- col.label(text="Form factor sampling:")
+ col.label(text="Form Factor Sampling:")
sub = col.row(align=True)
diff --git a/release/scripts/startup/bl_ui/properties_data_metaball.py b/release/scripts/startup/bl_ui/properties_data_metaball.py
index a621dc7210f..dd62c4523b1 100644
--- a/release/scripts/startup/bl_ui/properties_data_metaball.py
+++ b/release/scripts/startup/bl_ui/properties_data_metaball.py
@@ -70,7 +70,7 @@ class DATA_PT_metaball(DataButtonsPanel, Panel):
col.prop(mball, "threshold", text="Threshold")
layout.label(text="Update:")
- layout.prop(mball, "update_method", expand=True)
+ layout.row().prop(mball, "update_method", expand=True)
class DATA_PT_mball_texture_space(DataButtonsPanel, Panel):
diff --git a/release/scripts/startup/bl_ui/properties_data_modifier.py b/release/scripts/startup/bl_ui/properties_data_modifier.py
index d72855fab6b..15c9077d970 100644
--- a/release/scripts/startup/bl_ui/properties_data_modifier.py
+++ b/release/scripts/startup/bl_ui/properties_data_modifier.py
@@ -381,7 +381,7 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
split = layout.split()
col = split.column()
- col.label(text="Vertex group:")
+ col.label(text="Vertex Group:")
col.prop_search(md, "vertex_group", ob, "vertex_groups", text="")
sub = col.column()
sub.active = bool(md.vertex_group)
@@ -747,6 +747,10 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
col.prop(md, "steps")
col.prop(md, "render_steps")
col.prop(md, "use_smooth_shade")
+ col.prop(md, "use_merge_vertices")
+ sub = col.column()
+ sub.active = md.use_merge_vertices
+ sub.prop(md, "merge_threshold")
col = split.column()
row = col.row()
@@ -917,9 +921,10 @@ class DATA_PT_modifiers(ModifierButtonsPanel, Panel):
scene = bpy.context.scene
engine = scene.render.engine
- show_adaptive_options = (engine == "CYCLES" and md == ob.modifiers[-1] and
- scene.cycles.feature_set == "EXPERIMENTAL")
-
+ show_adaptive_options = (
+ engine == 'CYCLES' and md == ob.modifiers[-1] and
+ scene.cycles.feature_set == 'EXPERIMENTAL'
+ )
if show_adaptive_options:
col.label(text="View:")
col.prop(md, "levels", text="Levels")
diff --git a/release/scripts/startup/bl_ui/properties_freestyle.py b/release/scripts/startup/bl_ui/properties_freestyle.py
index 9c5be7624e0..3d105934bf8 100644
--- a/release/scripts/startup/bl_ui/properties_freestyle.py
+++ b/release/scripts/startup/bl_ui/properties_freestyle.py
@@ -123,7 +123,7 @@ class RENDERLAYER_PT_freestyle(RenderLayerFreestyleButtonsPanel, Panel):
layout.active = rl.use_freestyle
row = layout.row()
- layout.prop(freestyle, "mode", text="Control mode")
+ layout.prop(freestyle, "mode", text="Control Mode")
layout.prop(freestyle, "use_view_map_cache", text="View Map Cache")
layout.label(text="Edge Detection Options:")
@@ -285,7 +285,7 @@ class RENDERLAYER_PT_freestyle_linestyle(RenderLayerFreestyleEditorButtonsPanel,
def draw_modifier_box_error(self, box, modifier, message):
row = box.row()
- row.label(text=message, icon="ERROR")
+ row.label(text=message, icon='ERROR')
def draw_modifier_common(self, box, modifier):
row = box.row()
diff --git a/release/scripts/startup/bl_ui/properties_game.py b/release/scripts/startup/bl_ui/properties_game.py
index 46b34373aa5..277b0842b3d 100644
--- a/release/scripts/startup/bl_ui/properties_game.py
+++ b/release/scripts/startup/bl_ui/properties_game.py
@@ -90,11 +90,11 @@ class PHYSICS_PT_game_physics(PhysicsButtonsPanel, Panel):
split = layout.split()
col = split.column()
- col.label(text="Linear velocity:")
+ col.label(text="Linear Velocity:")
sub = col.column(align=True)
sub.prop(game, "velocity_min", text="Minimum")
sub.prop(game, "velocity_max", text="Maximum")
- col.label(text="Angular velocity:")
+ col.label(text="Angular Velocity:")
sub = col.column(align=True)
sub.prop(game, "angular_velocity_min", text="Minimum")
sub.prop(game, "angular_velocity_max", text="Maximum")
@@ -343,7 +343,7 @@ class RENDER_PT_game_stereo(RenderButtonsPanel, Panel):
stereo_mode = gs.stereo
# stereo options:
- layout.prop(gs, "stereo", expand=True)
+ layout.row().prop(gs, "stereo", expand=True)
# stereo:
if stereo_mode == 'STEREO':
@@ -392,7 +392,7 @@ class RENDER_PT_game_shading(RenderButtonsPanel, Panel):
gs = context.scene.game_settings
- layout.prop(gs, "material_mode", expand=True)
+ layout.row().prop(gs, "material_mode", expand=True)
if gs.material_mode == 'GLSL':
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_grease_pencil_common.py b/release/scripts/startup/bl_ui/properties_grease_pencil_common.py
index 42e8d5272b3..2aa978a51d8 100644
--- a/release/scripts/startup/bl_ui/properties_grease_pencil_common.py
+++ b/release/scripts/startup/bl_ui/properties_grease_pencil_common.py
@@ -75,16 +75,16 @@ def gpencil_active_brush_settings_simple(context, layout):
col.prop(brush, "line_width", slider=True)
row = col.row(align=True)
- row.prop(brush, "use_random_pressure", text='', icon='RNDCURVE')
+ row.prop(brush, "use_random_pressure", text="", icon='RNDCURVE')
row.prop(brush, "pen_sensitivity_factor", slider=True)
- row.prop(brush, "use_pressure", text='', icon='STYLUS_PRESSURE')
+ row.prop(brush, "use_pressure", text="", icon='STYLUS_PRESSURE')
row = col.row(align=True)
- row.prop(brush, "use_random_strength", text='', icon='RNDCURVE')
+ row.prop(brush, "use_random_strength", text="", icon='RNDCURVE')
row.prop(brush, "strength", slider=True)
- row.prop(brush, "use_strength_pressure", text='', icon='STYLUS_PRESSURE')
+ row.prop(brush, "use_strength_pressure", text="", icon='STYLUS_PRESSURE')
row = col.row(align=True)
row.prop(brush, "jitter", slider=True)
- row.prop(brush, "use_jitter_pressure", text='', icon='STYLUS_PRESSURE')
+ row.prop(brush, "use_jitter_pressure", text="", icon='STYLUS_PRESSURE')
row = col.row()
row.prop(brush, "angle", slider=True)
row.prop(brush, "angle_factor", text="Factor", slider=True)
@@ -233,7 +233,7 @@ class GreasePencilStrokeEditPanel:
if is_3d_view:
layout.separator()
-
+
layout.separator()
col = layout.column(align=True)
@@ -340,19 +340,19 @@ class GreasePencilBrushPanel:
row = layout.row()
row.prop(brush, "line_width")
row = layout.row(align=True)
- row.prop(brush, "use_random_pressure", text='', icon='RNDCURVE')
+ row.prop(brush, "use_random_pressure", text="", icon='RNDCURVE')
row.prop(brush, "pen_sensitivity_factor", slider=True)
- row.prop(brush, "use_pressure", text='', icon='STYLUS_PRESSURE')
+ row.prop(brush, "use_pressure", text="", icon='STYLUS_PRESSURE')
row = layout.row(align=True)
- row.prop(brush, "use_random_strength", text='', icon='RNDCURVE')
+ row.prop(brush, "use_random_strength", text="", icon='RNDCURVE')
row.prop(brush, "strength", slider=True)
- row.prop(brush, "use_strength_pressure", text='', icon='STYLUS_PRESSURE')
+ row.prop(brush, "use_strength_pressure", text="", icon='STYLUS_PRESSURE')
row = layout.row(align=True)
row.prop(brush, "random_press", slider=True)
row = layout.row(align=True)
row.prop(brush, "jitter", slider=True)
- row.prop(brush, "use_jitter_pressure", text='', icon='STYLUS_PRESSURE')
+ row.prop(brush, "use_jitter_pressure", text="", icon='STYLUS_PRESSURE')
row = layout.row()
row.prop(brush, "angle", slider=True)
row.prop(brush, "angle_factor", text="Factor", slider=True)
@@ -365,7 +365,7 @@ class GreasePencilBrushPanel:
col.separator()
row = col.row(align=False)
row.prop(brush, "pen_subdivision_steps")
- row.prop(brush, "random_subdiv", text='Randomness', slider=True)
+ row.prop(brush, "random_subdiv", text="Randomness", slider=True)
class GreasePencilStrokeSculptPanel:
@@ -463,7 +463,7 @@ class GreasePencilBrushCurvesPanel:
###############################
-class GPENCIL_PIE_tool_palette(Menu):
+class GPENCIL_MT_pie_tool_palette(Menu):
"""A pie menu for quick access to Grease Pencil tools"""
bl_label = "Grease Pencil Tools"
@@ -487,7 +487,7 @@ class GPENCIL_PIE_tool_palette(Menu):
# E - "Settings" Palette is included here too, since it needs to be in a stable position...
if gpd and gpd.layers.active:
col.separator()
- col.operator("wm.call_menu_pie", text="Settings...", icon='SCRIPTWIN').name = "GPENCIL_PIE_settings_palette"
+ col.operator("wm.call_menu_pie", text="Settings...", icon='SCRIPTWIN').name = "GPENCIL_MT_pie_settings_palette"
# Editing tools
if gpd:
@@ -525,13 +525,13 @@ class GPENCIL_PIE_tool_palette(Menu):
col.operator("gpencil.delete", icon='X', text="Delete...")
# SE - More Tools
- pie.operator("wm.call_menu_pie", text="More...").name = "GPENCIL_PIE_tools_more"
+ pie.operator("wm.call_menu_pie", text="More...").name = "GPENCIL_MT_pie_tools_more"
else:
# Toggle Edit Mode
pie.operator("gpencil.editmode_toggle", text="Enable Stroke Editing", icon='EDIT')
-class GPENCIL_PIE_settings_palette(Menu):
+class GPENCIL_MT_pie_settings_palette(Menu):
"""A pie menu for quick access to Grease Pencil settings"""
bl_label = "Grease Pencil Settings"
@@ -609,12 +609,12 @@ class GPENCIL_PIE_settings_palette(Menu):
row = col.row()
row.operator("gpencil.stroke_join", text="Join").type = 'JOIN'
row.operator("gpencil.stroke_join", text="Join & Copy").type = 'JOINCOPY'
- col.operator("gpencil.stroke_flip", text="Flip direction")
+ col.operator("gpencil.stroke_flip", text="Flip Direction")
- col.prop(gpd, "show_stroke_direction", text="Show drawing direction")
+ col.prop(gpd, "show_stroke_direction", text="Show Drawing Direction")
-class GPENCIL_PIE_tools_more(Menu):
+class GPENCIL_MT_pie_tools_more(Menu):
"""A pie menu for accessing more Grease Pencil tools"""
bl_label = "More Grease Pencil Tools"
@@ -643,10 +643,10 @@ class GPENCIL_PIE_tools_more(Menu):
pie.operator("transform.tosphere", icon='MOD_MULTIRES')
pie.operator("gpencil.convert", icon='OUTLINER_OB_CURVE', text="Convert...")
- pie.operator("wm.call_menu_pie", text="Back to Main Palette...").name = "GPENCIL_PIE_tool_palette"
+ pie.operator("wm.call_menu_pie", text="Back to Main Palette...").name = "GPENCIL_MT_pie_tool_palette"
-class GPENCIL_PIE_sculpt(Menu):
+class GPENCIL_MT_pie_sculpt(Menu):
"""A pie menu for accessing Grease Pencil stroke sculpting settings"""
bl_label = "Grease Pencil Sculpt"
@@ -839,8 +839,8 @@ class GPENCIL_MT_brush_specials(Menu):
def draw(self, context):
layout = self.layout
- layout.operator("gpencil.brush_copy", icon='PASTEDOWN', text="Copy current drawing brush")
- layout.operator("gpencil.brush_presets_create", icon='HELP', text="Create a set of predefined brushes")
+ layout.operator("gpencil.brush_copy", icon='PASTEDOWN', text="Copy Current Drawing Brush")
+ layout.operator("gpencil.brush_presets_create", icon='HELP', text="Create a Set of Predefined Brushes")
class GPENCIL_MT_palettecolor_specials(Menu):
@@ -884,9 +884,9 @@ class GreasePencilDataPanel:
# Owner Selector
if context.space_data.type == 'VIEW_3D':
- layout.prop(context.tool_settings, "grease_pencil_source", expand=True)
+ layout.row().prop(context.tool_settings, "grease_pencil_source", expand=True)
elif context.space_data.type == 'CLIP_EDITOR':
- layout.prop(context.space_data, "grease_pencil_source", expand=True)
+ layout.row().prop(context.space_data, "grease_pencil_source", expand=True)
# Grease Pencil data selector
layout.template_ID(gpd_owner, "grease_pencil", new="gpencil.data_add", unlink="gpencil.data_unlink")
@@ -963,7 +963,7 @@ class GreasePencilDataPanel:
row.prop(gpl, "line_change", text="Thickness Change", slider=True)
row.operator("gpencil.stroke_apply_thickness", icon='STYLUS_PRESSURE', text="")
- # Parenting
+ # Parenting
if context.space_data.type == 'VIEW_3D':
col = split.column(align=True)
col.label(text="Parent:")
@@ -1158,10 +1158,10 @@ class GreasePencilToolsPanel:
classes = (
- GPENCIL_PIE_tool_palette,
- GPENCIL_PIE_settings_palette,
- GPENCIL_PIE_tools_more,
- GPENCIL_PIE_sculpt,
+ GPENCIL_MT_pie_tool_palette,
+ GPENCIL_MT_pie_settings_palette,
+ GPENCIL_MT_pie_tools_more,
+ GPENCIL_MT_pie_sculpt,
GPENCIL_MT_snap,
GPENCIL_MT_gpencil_edit_specials,
GPENCIL_UL_brush,
diff --git a/release/scripts/startup/bl_ui/properties_material.py b/release/scripts/startup/bl_ui/properties_material.py
index 06ae1847d06..73740df37e8 100644
--- a/release/scripts/startup/bl_ui/properties_material.py
+++ b/release/scripts/startup/bl_ui/properties_material.py
@@ -124,9 +124,10 @@ class MATERIAL_PT_context_material(MaterialButtonsPanel, Panel):
ob = context.object
slot = context.material_slot
space = context.space_data
- is_sortable = (len(ob.material_slots) > 1)
if ob:
+ is_sortable = (len(ob.material_slots) > 1)
+
rows = 1
if is_sortable:
rows = 4
@@ -170,7 +171,7 @@ class MATERIAL_PT_context_material(MaterialButtonsPanel, Panel):
split.separator()
if mat:
- layout.prop(mat, "type", expand=True)
+ layout.row().prop(mat, "type", expand=True)
if mat.use_nodes:
row = layout.row()
row.label(text="", icon='NODETREE')
@@ -991,7 +992,7 @@ class MATERIAL_PT_volume_transp(VolumeButtonsPanel, Panel):
mat = context.material # don't use node material
- layout.prop(mat, "transparency_method", expand=True)
+ layout.row().prop(mat, "transparency_method", expand=True)
class MATERIAL_PT_volume_integration(VolumeButtonsPanel, Panel):
diff --git a/release/scripts/startup/bl_ui/properties_object.py b/release/scripts/startup/bl_ui/properties_object.py
index d7e18f81232..43c8300b558 100644
--- a/release/scripts/startup/bl_ui/properties_object.py
+++ b/release/scripts/startup/bl_ui/properties_object.py
@@ -294,7 +294,7 @@ class OBJECT_PT_duplication(ObjectButtonsPanel, Panel):
ob = context.object
- layout.prop(ob, "dupli_type", expand=True)
+ layout.row().prop(ob, "dupli_type", expand=True)
if ob.dupli_type == 'FRAMES':
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_paint_common.py b/release/scripts/startup/bl_ui/properties_paint_common.py
index dfd20d90ec4..b79f8263e39 100644
--- a/release/scripts/startup/bl_ui/properties_paint_common.py
+++ b/release/scripts/startup/bl_ui/properties_paint_common.py
@@ -157,9 +157,9 @@ def brush_texpaint_common(panel, context, layout, brush, settings, projpaint=Fal
col.separator()
if projpaint:
if settings.mode == 'MATERIAL':
- col.prop(settings, "use_clone_layer", text="Clone from paint slot")
+ col.prop(settings, "use_clone_layer", text="Clone from Paint Slot")
elif settings.mode == 'IMAGE':
- col.prop(settings, "use_clone_layer", text="Clone from image/UV map")
+ col.prop(settings, "use_clone_layer", text="Clone from Image/UV Map")
if settings.use_clone_layer:
ob = context.active_object
diff --git a/release/scripts/startup/bl_ui/properties_particle.py b/release/scripts/startup/bl_ui/properties_particle.py
index e86df975927..aa4cb0ba1e9 100644
--- a/release/scripts/startup/bl_ui/properties_particle.py
+++ b/release/scripts/startup/bl_ui/properties_particle.py
@@ -284,7 +284,7 @@ class PARTICLE_PT_emission(ParticleButtonsPanel, Panel):
col.prop(part, "lifetime_random", slider=True)
layout.label(text="Emit From:")
- layout.prop(part, "emit_from", expand=True)
+ layout.row().prop(part, "emit_from", expand=True)
row = layout.row()
if part.emit_from == 'VERT':
@@ -297,7 +297,7 @@ class PARTICLE_PT_emission(ParticleButtonsPanel, Panel):
row.prop(part, "use_even_distribution")
if part.emit_from == 'FACE' or part.emit_from == 'VOLUME':
- layout.prop(part, "distribution", expand=True)
+ layout.row().prop(part, "distribution", expand=True)
row = layout.row()
if part.distribution == 'JIT':
@@ -578,7 +578,7 @@ class PARTICLE_PT_physics(ParticleButtonsPanel, Panel):
layout.enabled = particle_panel_enabled(context, psys)
- layout.prop(part, "physics_type", expand=True)
+ layout.row().prop(part, "physics_type", expand=True)
row = layout.row()
col = row.column(align=True)
@@ -628,7 +628,7 @@ class PARTICLE_PT_physics(ParticleButtonsPanel, Panel):
split = layout.split()
col = split.column()
- col.label(text="Fluid properties:")
+ col.label(text="Fluid Properties:")
col.prop(fluid, "stiffness", text="Stiffness")
col.prop(fluid, "linear_viscosity", text="Viscosity")
col.prop(fluid, "buoyancy", text="Buoyancy", slider=True)
@@ -749,7 +749,7 @@ class PARTICLE_PT_physics(ParticleButtonsPanel, Panel):
if part.physics_type == 'BOIDS':
layout.label(text="Relations:")
elif part.physics_type == 'FLUID':
- layout.label(text="Fluid interaction:")
+ layout.label(text="Fluid Interaction:")
row = layout.row()
row.template_list("UI_UL_list", "particle_targets", psys, "targets",
@@ -785,7 +785,7 @@ class PARTICLE_PT_physics(ParticleButtonsPanel, Panel):
sub.prop(key, "object", text="")
sub.prop(key, "system", text="System")
- layout.prop(key, "alliance", expand=True)
+ layout.row().prop(key, "alliance", expand=True)
elif part.physics_type == 'FLUID':
sub = row.row()
# doesn't work yet
@@ -933,7 +933,7 @@ class PARTICLE_PT_render(ParticleButtonsPanel, Panel):
col.prop(part, "show_unborn")
col.prop(part, "use_dead")
- layout.prop(part, "render_type", expand=True)
+ layout.row().prop(part, "render_type", expand=True)
split = layout.split()
@@ -1081,7 +1081,7 @@ class PARTICLE_PT_render(ParticleButtonsPanel, Panel):
col = row.column()
col.prop(part, "trail_count")
if part.trail_count > 1:
- col.prop(part, "use_absolute_path_time", text="Length in frames")
+ col.prop(part, "use_absolute_path_time", text="Length in Frames")
col = row.column()
col.prop(part, "path_end", text="Length", slider=not part.use_absolute_path_time)
col.prop(part, "length_random", text="Random", slider=True)
diff --git a/release/scripts/startup/bl_ui/properties_physics_common.py b/release/scripts/startup/bl_ui/properties_physics_common.py
index 0b98d8738dc..73d3d5fc755 100644
--- a/release/scripts/startup/bl_ui/properties_physics_common.py
+++ b/release/scripts/startup/bl_ui/properties_physics_common.py
@@ -79,7 +79,7 @@ class PHYSICS_PT_add(PhysicButtonsPanel, Panel):
col = split.column()
- if obj.type in {'MESH', 'LATTICE', 'CURVE'}:
+ if obj.type in {'MESH', 'LATTICE', 'CURVE', 'SURFACE', 'FONT'}:
physics_add(self, col, context.soft_body, "Soft Body", 'SOFT_BODY', 'MOD_SOFT', True)
if obj.type == 'MESH':
diff --git a/release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py b/release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py
index c813350be08..ec7287ef363 100644
--- a/release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py
+++ b/release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py
@@ -68,7 +68,7 @@ class PHYSICS_PT_dynamic_paint(PhysicButtonsPanel, Panel):
md = context.dynamic_paint
- layout.prop(md, "ui_type", expand=True)
+ layout.row().prop(md, "ui_type", expand=True)
if md.ui_type == 'CANVAS':
canvas = md.canvas_settings
@@ -245,7 +245,7 @@ class PHYSICS_PT_dp_canvas_output(PhysicButtonsPanel, Panel):
# paint-map output
row = layout.row()
- row.prop_search(surface, "output_name_a", ob.data, "vertex_colors", text="Paintmap layer")
+ row.prop_search(surface, "output_name_a", ob.data, "vertex_colors", text="Paintmap Layer")
if surface.output_exists(object=ob, index=0):
ic = 'ZOOMOUT'
else:
@@ -255,7 +255,7 @@ class PHYSICS_PT_dp_canvas_output(PhysicButtonsPanel, Panel):
# wet-map output
row = layout.row()
- row.prop_search(surface, "output_name_b", ob.data, "vertex_colors", text="Wetmap layer")
+ row.prop_search(surface, "output_name_b", ob.data, "vertex_colors", text="Wetmap Layer")
if surface.output_exists(object=ob, index=1):
ic = 'ZOOMOUT'
else:
@@ -282,7 +282,7 @@ class PHYSICS_PT_dp_canvas_output(PhysicButtonsPanel, Panel):
layout.prop(surface, "image_output_path", text="")
row = layout.row()
row.prop(surface, "image_fileformat", text="")
- row.prop(surface, "use_premultiply", text="Premultiply alpha")
+ row.prop(surface, "use_premultiply", text="Premultiply Alpha")
if surface_type == 'PAINT':
split = layout.split(percentage=0.4)
@@ -363,7 +363,7 @@ class PHYSICS_PT_dp_effects(PhysicButtonsPanel, Panel):
canvas = context.dynamic_paint.canvas_settings
surface = canvas.canvas_surfaces.active
- layout.prop(surface, "effect_ui", expand=True)
+ layout.row().prop(surface, "effect_ui", expand=True)
if surface.effect_ui == 'SPREAD':
layout.prop(surface, "use_spread")
@@ -439,12 +439,12 @@ class PHYSICS_PT_dp_brush_source(PhysicButtonsPanel, Panel):
if brush.paint_source == 'PARTICLE_SYSTEM':
col.prop_search(brush, "particle_system", ob, "particle_systems", text="")
if brush.particle_system:
- col.label(text="Particle effect:")
+ col.label(text="Particle Effect:")
sub = col.column()
sub.active = not brush.use_particle_radius
sub.prop(brush, "solid_radius", text="Solid Radius")
col.prop(brush, "use_particle_radius", text="Use Particle's Radius")
- col.prop(brush, "smooth_radius", text="Smooth radius")
+ col.prop(brush, "smooth_radius", text="Smooth Radius")
if brush.paint_source in {'DISTANCE', 'VOLUME_DISTANCE', 'POINT'}:
col.prop(brush, "paint_distance", text="Paint Distance")
diff --git a/release/scripts/startup/bl_ui/properties_physics_field.py b/release/scripts/startup/bl_ui/properties_physics_field.py
index 2b12fcf982d..3fd47f0b8ca 100644
--- a/release/scripts/startup/bl_ui/properties_physics_field.py
+++ b/release/scripts/startup/bl_ui/properties_physics_field.py
@@ -128,7 +128,7 @@ class PHYSICS_PT_field(PhysicButtonsPanel, Panel):
if field.type not in {'NONE', 'GUIDE'}:
layout.label(text="Falloff:")
- layout.prop(field, "falloff_type", expand=True)
+ layout.row().prop(field, "falloff_type", expand=True)
basic_force_field_falloff_ui(self, context, field)
diff --git a/release/scripts/startup/bl_ui/properties_physics_smoke.py b/release/scripts/startup/bl_ui/properties_physics_smoke.py
index f2e6c1e22e3..4f0d3680834 100644
--- a/release/scripts/startup/bl_ui/properties_physics_smoke.py
+++ b/release/scripts/startup/bl_ui/properties_physics_smoke.py
@@ -52,7 +52,7 @@ class PHYSICS_PT_smoke(PhysicButtonsPanel, Panel):
md = context.smoke
ob = context.object
- layout.prop(md, "smoke_type", expand=True)
+ layout.row().prop(md, "smoke_type", expand=True)
if md.smoke_type == 'DOMAIN':
domain = md.domain_settings
@@ -322,14 +322,14 @@ class PHYSICS_PT_smoke_cache(PhysicButtonsPanel, Panel):
if cache_file_format == 'POINTCACHE':
layout.label(text="Compression:")
- layout.prop(domain, "point_cache_compress_type", expand=True)
+ layout.row().prop(domain, "point_cache_compress_type", expand=True)
elif cache_file_format == 'OPENVDB':
if not bpy.app.build_options.openvdb:
layout.label("Built without OpenVDB support")
return
layout.label(text="Compression:")
- layout.prop(domain, "openvdb_cache_compress_type", expand=True)
+ layout.row().prop(domain, "openvdb_cache_compress_type", expand=True)
row = layout.row()
row.label("Data Depth:")
row.prop(domain, "data_depth", expand=True, text="Data Depth")
diff --git a/release/scripts/startup/bl_ui/properties_physics_softbody.py b/release/scripts/startup/bl_ui/properties_physics_softbody.py
index 5960428e4ae..5efe105e7d8 100644
--- a/release/scripts/startup/bl_ui/properties_physics_softbody.py
+++ b/release/scripts/startup/bl_ui/properties_physics_softbody.py
@@ -26,6 +26,9 @@ from bl_ui.properties_physics_common import (
)
+COMPAT_OB_TYPES = {'MESH', 'LATTICE', 'CURVE', 'SURFACE', 'FONT'}
+
+
def softbody_panel_enabled(md):
return (md.point_cache.is_baked is False)
@@ -39,7 +42,7 @@ class PhysicButtonsPanel:
def poll(cls, context):
ob = context.object
rd = context.scene.render
- return (ob and (ob.type == 'MESH' or ob.type == 'LATTICE'or ob.type == 'CURVE')) and (rd.engine in cls.COMPAT_ENGINES) and (context.soft_body)
+ return ob and ob.type in COMPAT_OB_TYPES and rd.engine in cls.COMPAT_ENGINES and context.soft_body
class PHYSICS_PT_softbody(PhysicButtonsPanel, Panel):
@@ -191,7 +194,7 @@ class PHYSICS_PT_softbody_collision(PhysicButtonsPanel, Panel):
layout.active = softbody.use_self_collision and softbody_panel_enabled(md)
layout.label(text="Collision Ball Size Calculation:")
- layout.prop(softbody, "collision_type", expand=True)
+ layout.row().prop(softbody, "collision_type", expand=True)
col = layout.column(align=True)
col.label(text="Ball:")
diff --git a/release/scripts/startup/bl_ui/properties_render.py b/release/scripts/startup/bl_ui/properties_render.py
index a7e8d9273ad..6101c715991 100644
--- a/release/scripts/startup/bl_ui/properties_render.py
+++ b/release/scripts/startup/bl_ui/properties_render.py
@@ -275,6 +275,7 @@ class RENDER_PT_performance(RenderButtonsPanel, Panel):
col.separator()
col.prop(rd, "preview_start_resolution")
+ col.prop(rd, "preview_pixel_size", text="")
col = split.column()
col.label(text="Memory:")
@@ -286,7 +287,7 @@ class RENDER_PT_performance(RenderButtonsPanel, Panel):
sub.prop(rd, "use_free_image_textures")
sub = col.column()
sub.active = rd.use_raytrace
- sub.label(text="Acceleration structure:")
+ sub.label(text="Acceleration Structure:")
sub.prop(rd, "raytrace_method", text="")
if rd.raytrace_method == 'OCTREE':
sub.prop(rd, "octree_resolution", text="Resolution")
@@ -347,7 +348,7 @@ class RENDER_PT_stamp(RenderButtonsPanel, Panel):
col.active = rd.use_stamp
row = col.row()
row.prop(rd, "stamp_font_size", text="Font Size")
- row.prop(rd, "use_stamp_labels", text="Draw labels")
+ row.prop(rd, "use_stamp_labels", text="Draw Labels")
row = col.row()
row.column().prop(rd, "stamp_foreground", slider=True)
@@ -482,9 +483,9 @@ class RENDER_PT_encoding(RenderButtonsPanel, Panel):
layout.prop(ffmpeg, "gopsize")
# B-Frames
row = layout.row()
- row.prop(ffmpeg, "use_max_b_frames", text='Max B-frames')
+ row.prop(ffmpeg, "use_max_b_frames", text="Max B-frames")
pbox = row.split()
- pbox.prop(ffmpeg, "max_b_frames", text='')
+ pbox.prop(ffmpeg, "max_b_frames", text="")
pbox.enabled = ffmpeg.use_max_b_frames
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_texture.py b/release/scripts/startup/bl_ui/properties_texture.py
index d05527b7ef6..880684997bf 100644
--- a/release/scripts/startup/bl_ui/properties_texture.py
+++ b/release/scripts/startup/bl_ui/properties_texture.py
@@ -165,7 +165,7 @@ class TEXTURE_PT_context_texture(TextureButtonsPanel, Panel):
pin_id = None
if not space.use_pin_id:
- layout.prop(space, "texture_context", expand=True)
+ layout.row().prop(space, "texture_context", expand=True)
pin_id = None
if space.texture_context == 'OTHER':
@@ -318,9 +318,9 @@ class TEXTURE_PT_clouds(TextureTypePanel, Panel):
tex = context.texture
- layout.prop(tex, "cloud_type", expand=True)
+ layout.row().prop(tex, "cloud_type", expand=True)
layout.label(text="Noise:")
- layout.prop(tex, "noise_type", text="Type", expand=True)
+ layout.row().prop(tex, "noise_type", text="Type", expand=True)
layout.prop(tex, "noise_basis", text="Basis")
split = layout.split()
@@ -342,8 +342,8 @@ class TEXTURE_PT_wood(TextureTypePanel, Panel):
tex = context.texture
- layout.prop(tex, "noise_basis_2", expand=True)
- layout.prop(tex, "wood_type", expand=True)
+ layout.row().prop(tex, "noise_basis_2", expand=True)
+ layout.row().prop(tex, "wood_type", expand=True)
col = layout.column()
col.active = tex.wood_type in {'RINGNOISE', 'BANDNOISE'}
@@ -371,10 +371,10 @@ class TEXTURE_PT_marble(TextureTypePanel, Panel):
tex = context.texture
- layout.prop(tex, "marble_type", expand=True)
- layout.prop(tex, "noise_basis_2", expand=True)
+ layout.row().prop(tex, "marble_type", expand=True)
+ layout.row().prop(tex, "noise_basis_2", expand=True)
layout.label(text="Noise:")
- layout.prop(tex, "noise_type", text="Type", expand=True)
+ layout.row().prop(tex, "noise_type", text="Type", expand=True)
layout.prop(tex, "noise_basis", text="Basis")
split = layout.split()
@@ -431,9 +431,9 @@ class TEXTURE_PT_stucci(TextureTypePanel, Panel):
tex = context.texture
- layout.prop(tex, "stucci_type", expand=True)
+ layout.row().prop(tex, "stucci_type", expand=True)
layout.label(text="Noise:")
- layout.prop(tex, "noise_type", text="Type", expand=True)
+ layout.row().prop(tex, "noise_type", text="Type", expand=True)
layout.prop(tex, "noise_basis", text="Basis")
row = layout.row()
@@ -808,7 +808,7 @@ class TEXTURE_PT_pointdensity(TextureButtonsPanel, Panel):
tex = context.texture
pd = tex.point_density
- layout.prop(pd, "point_source", expand=True)
+ layout.row().prop(pd, "point_source", expand=True)
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/properties_world.py b/release/scripts/startup/bl_ui/properties_world.py
index 6aa39580d34..107c31567b3 100644
--- a/release/scripts/startup/bl_ui/properties_world.py
+++ b/release/scripts/startup/bl_ui/properties_world.py
@@ -175,7 +175,7 @@ class WORLD_PT_gather(WorldButtonsPanel, Panel):
layout.active = light.use_ambient_occlusion or light.use_environment_light or light.use_indirect_light
- layout.prop(light, "gather_method", expand=True)
+ layout.row().prop(light, "gather_method", expand=True)
split = layout.split()
diff --git a/release/scripts/startup/bl_ui/space_clip.py b/release/scripts/startup/bl_ui/space_clip.py
index 43679727992..57195d22340 100644
--- a/release/scripts/startup/bl_ui/space_clip.py
+++ b/release/scripts/startup/bl_ui/space_clip.py
@@ -1033,11 +1033,11 @@ class CLIP_PT_proxy(CLIP_PT_clip_view_panel, Panel):
if clip.source == 'MOVIE':
col2 = col.column()
- col2.label(text="Use timecode index:")
+ col2.label(text="Use Timecode Index:")
col2.prop(clip.proxy, "timecode", text="")
col2 = col.column()
- col2.label(text="Proxy render size:")
+ col2.label(text="Proxy Render Size:")
col.prop(sc.clip_user, "proxy_render_size", text="")
@@ -1418,7 +1418,7 @@ class CLIP_MT_tracking_specials(Menu):
text="Enable Markers").action = 'ENABLE'
layout.operator("clip.disable_markers",
- text="Disable markers").action = 'DISABLE'
+ text="Disable Markers").action = 'DISABLE'
layout.separator()
layout.operator("clip.set_origin")
diff --git a/release/scripts/startup/bl_ui/space_image.py b/release/scripts/startup/bl_ui/space_image.py
index f070161f3da..340a6c807df 100644
--- a/release/scripts/startup/bl_ui/space_image.py
+++ b/release/scripts/startup/bl_ui/space_image.py
@@ -1086,7 +1086,7 @@ class IMAGE_PT_tools_paint_options(BrushButtonsPanel, Panel):
col.prop(ups, "use_unified_color", text="Color")
-class IMAGE_UV_sculpt_curve(Panel):
+class IMAGE_PT_uv_sculpt_curve(Panel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'TOOLS'
bl_label = "UV Sculpt Curve"
@@ -1117,7 +1117,7 @@ class IMAGE_UV_sculpt_curve(Panel):
row.operator("brush.curve_preset", icon='NOCURVE', text="").shape = 'MAX'
-class IMAGE_UV_sculpt(Panel, ImagePaintPanel):
+class IMAGE_PT_uv_sculpt(Panel, ImagePaintPanel):
bl_space_type = 'IMAGE_EDITOR'
bl_region_type = 'TOOLS'
bl_category = "Tools"
@@ -1370,8 +1370,8 @@ classes = (
IMAGE_PT_tools_imagepaint_symmetry,
IMAGE_PT_tools_brush_appearance,
IMAGE_PT_tools_paint_options,
- IMAGE_UV_sculpt,
- IMAGE_UV_sculpt_curve,
+ IMAGE_PT_uv_sculpt,
+ IMAGE_PT_uv_sculpt_curve,
IMAGE_PT_view_histogram,
IMAGE_PT_view_waveform,
IMAGE_PT_view_vectorscope,
diff --git a/release/scripts/startup/bl_ui/space_node.py b/release/scripts/startup/bl_ui/space_node.py
index b37b3c5705a..e2056905d93 100644
--- a/release/scripts/startup/bl_ui/space_node.py
+++ b/release/scripts/startup/bl_ui/space_node.py
@@ -187,10 +187,10 @@ class NODE_MT_view(Menu):
if context.space_data.show_backdrop:
layout.separator()
- layout.operator("node.backimage_move", text="Backdrop move")
- layout.operator("node.backimage_zoom", text="Backdrop zoom in").factor = 1.2
- layout.operator("node.backimage_zoom", text="Backdrop zoom out").factor = 0.83333
- layout.operator("node.backimage_fit", text="Fit backdrop to available space")
+ layout.operator("node.backimage_move", text="Backdrop Move")
+ layout.operator("node.backimage_zoom", text="Backdrop Zoom In").factor = 1.2
+ layout.operator("node.backimage_zoom", text="Backdrop Zoom Out").factor = 0.83333
+ layout.operator("node.backimage_fit", text="Fit Backdrop to Available Space")
layout.separator()
@@ -243,7 +243,7 @@ class NODE_MT_node(Menu):
layout.separator()
- layout.operator("node.join", text="Join in new Frame")
+ layout.operator("node.join", text="Join in New Frame")
layout.operator("node.detach", text="Remove from Frame")
layout.separator()
diff --git a/release/scripts/startup/bl_ui/space_outliner.py b/release/scripts/startup/bl_ui/space_outliner.py
index 4eb550bbb35..731ab3d4b14 100644
--- a/release/scripts/startup/bl_ui/space_outliner.py
+++ b/release/scripts/startup/bl_ui/space_outliner.py
@@ -56,7 +56,7 @@ class OUTLINER_HT_header(Header):
row.operator("anim.keyframe_delete", text="", icon='KEY_DEHLT')
else:
row = layout.row()
- row.label(text="No Keying Set active")
+ row.label(text="No Keying Set Active")
elif space.display_mode == 'ORPHAN_DATA':
layout.operator("outliner.orphans_purge")
diff --git a/release/scripts/startup/bl_ui/space_sequencer.py b/release/scripts/startup/bl_ui/space_sequencer.py
index 6737b8e1089..06dd90685b7 100644
--- a/release/scripts/startup/bl_ui/space_sequencer.py
+++ b/release/scripts/startup/bl_ui/space_sequencer.py
@@ -43,7 +43,7 @@ def draw_color_balance(layout, color_balance):
col.separator()
col.separator()
col.prop(color_balance, "lift", text="")
- col.prop(color_balance, "invert_lift", text="Invert", icon="ARROW_LEFTRIGHT")
+ col.prop(color_balance, "invert_lift", text="Invert", icon='ARROW_LEFTRIGHT')
split.template_color_picker(color_balance, "lift", value_slider=True, cubic=True)
box = layout.box()
@@ -53,7 +53,7 @@ def draw_color_balance(layout, color_balance):
col.separator()
col.separator()
col.prop(color_balance, "gamma", text="")
- col.prop(color_balance, "invert_gamma", text="Invert", icon="ARROW_LEFTRIGHT")
+ col.prop(color_balance, "invert_gamma", text="Invert", icon='ARROW_LEFTRIGHT')
split.template_color_picker(color_balance, "gamma", value_slider=True, lock_luminosity=True, cubic=True)
box = layout.box()
@@ -63,7 +63,7 @@ def draw_color_balance(layout, color_balance):
col.separator()
col.separator()
col.prop(color_balance, "gain", text="")
- col.prop(color_balance, "invert_gain", text="Invert", icon="ARROW_LEFTRIGHT")
+ col.prop(color_balance, "invert_gain", text="Invert", icon='ARROW_LEFTRIGHT')
split.template_color_picker(color_balance, "gain", value_slider=True, lock_luminosity=True, cubic=True)
@@ -197,7 +197,7 @@ class SEQUENCER_MT_view(Menu):
layout.operator_context = 'INVOKE_DEFAULT'
if is_preview:
layout.operator_context = 'INVOKE_REGION_PREVIEW'
- layout.operator("sequencer.view_all_preview", text="Fit preview in window")
+ layout.operator("sequencer.view_all_preview", text="Fit Preview in Window")
layout.separator()
@@ -246,10 +246,10 @@ class SEQUENCER_MT_select(Menu):
layout.operator("sequencer.select_active_side", text="Strips to the Left").side = 'LEFT'
layout.operator("sequencer.select_active_side", text="Strips to the Right").side = 'RIGHT'
- props = layout.operator("sequencer.select", text="All strips to the Left")
+ props = layout.operator("sequencer.select", text="All Strips to the Left")
props.left_right = 'LEFT'
props.linked_time = True
- props = layout.operator("sequencer.select", text="All strips to the Right")
+ props = layout.operator("sequencer.select", text="All Strips to the Right")
props.left_right = 'RIGHT'
props.linked_time = True
@@ -338,21 +338,21 @@ class SEQUENCER_MT_add(Menu):
if len(bpy.data.scenes) > 10:
layout.operator_context = 'INVOKE_DEFAULT'
- layout.operator("sequencer.scene_strip_add", text="Scene")
+ layout.operator("sequencer.scene_strip_add", text="Scene...")
else:
- layout.operator_menu_enum("sequencer.scene_strip_add", "scene", text="Scene...")
+ layout.operator_menu_enum("sequencer.scene_strip_add", "scene", text="Scene")
if len(bpy.data.movieclips) > 10:
layout.operator_context = 'INVOKE_DEFAULT'
- layout.operator("sequencer.movieclip_strip_add", text="Clips")
+ layout.operator("sequencer.movieclip_strip_add", text="Clips...")
else:
- layout.operator_menu_enum("sequencer.movieclip_strip_add", "clip", text="Clip...")
+ layout.operator_menu_enum("sequencer.movieclip_strip_add", "clip", text="Clip")
if len(bpy.data.masks) > 10:
layout.operator_context = 'INVOKE_DEFAULT'
- layout.operator("sequencer.mask_strip_add", text="Masks")
+ layout.operator("sequencer.mask_strip_add", text="Masks...")
else:
- layout.operator_menu_enum("sequencer.mask_strip_add", "mask", text="Mask...")
+ layout.operator_menu_enum("sequencer.mask_strip_add", "mask", text="Mask")
layout.operator("sequencer.movie_strip_add", text="Movie")
layout.operator("sequencer.image_strip_add", text="Image")
@@ -397,15 +397,15 @@ class SEQUENCER_MT_strip(Menu):
layout.operator_context = 'INVOKE_REGION_WIN'
layout.operator("transform.transform", text="Grab/Move").mode = 'TRANSLATION'
- layout.operator("transform.transform", text="Grab/Extend from frame").mode = 'TIME_EXTEND'
+ layout.operator("transform.transform", text="Grab/Extend from Frame").mode = 'TIME_EXTEND'
layout.operator("sequencer.gap_remove").all = False
layout.operator("sequencer.gap_insert")
# uiItemO(layout, NULL, 0, "sequencer.strip_snap"); // TODO - add this operator
layout.separator()
- layout.operator("sequencer.cut", text="Cut (hard) at frame").type = 'HARD'
- layout.operator("sequencer.cut", text="Cut (soft) at frame").type = 'SOFT'
+ layout.operator("sequencer.cut", text="Cut (Hard) at Frame").type = 'HARD'
+ layout.operator("sequencer.cut", text="Cut (Soft) at Frame").type = 'SOFT'
layout.operator("sequencer.slip", text="Slip Strip Contents")
layout.operator("sequencer.images_separate")
layout.operator("sequencer.offset_clear")
@@ -631,7 +631,7 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel):
if strip.use_as_speed:
layout.prop(strip, "speed_factor")
else:
- layout.prop(strip, "speed_factor", text="Frame number")
+ layout.prop(strip, "speed_factor", text="Frame Number")
layout.prop(strip, "scale_to_length")
elif strip.type == 'TRANSFORM':
@@ -698,7 +698,7 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel):
row.label("")
else:
col.separator()
- col.label(text="Two or more channels are needed below this strip", icon="INFO")
+ col.label(text="Two or more channels are needed below this strip", icon='INFO')
elif strip.type == 'TEXT':
@@ -728,7 +728,7 @@ class SEQUENCER_PT_effect(SequencerButtonsPanel, Panel):
elif strip.type in {'CROSS', 'GAMMA_CROSS', 'WIPE', 'ALPHA_OVER', 'ALPHA_UNDER', 'OVER_DROP'}:
col.prop(strip, "use_default_fade", "Default fade")
if not strip.use_default_fade:
- col.prop(strip, "effect_fader", text="Effect fader")
+ col.prop(strip, "effect_fader", text="Effect Fader")
elif strip.type == 'GAUSSIAN_BLUR':
row = col.row(align=True)
row.prop(strip, "size_x")
@@ -784,7 +784,7 @@ class SEQUENCER_PT_input(SequencerButtonsPanel, Panel):
split.label(text="Alpha:")
split.prop(strip, "alpha_mode", text="")
- layout.operator("sequencer.change_path", icon="FILESEL").filter_image = True
+ layout.operator("sequencer.change_path", icon='FILESEL').filter_image = True
elif seq_type == 'MOVIE':
split = layout.split(percentage=0.2)
@@ -1056,9 +1056,9 @@ class SEQUENCER_PT_proxy(SequencerButtonsPanel, Panel):
proxy = strip.proxy
flow = layout.column_flow()
- flow.prop(sequencer, "proxy_storage", text='Storage')
+ flow.prop(sequencer, "proxy_storage", text="Storage")
if sequencer.proxy_storage == 'PROJECT':
- flow.prop(sequencer, "proxy_dir", text='Directory')
+ flow.prop(sequencer, "proxy_dir", text="Directory")
else:
flow.prop(proxy, "use_proxy_custom_directory")
flow.prop(proxy, "use_proxy_custom_file")
@@ -1077,7 +1077,7 @@ class SEQUENCER_PT_proxy(SequencerButtonsPanel, Panel):
layout.prop(proxy, "use_overwrite")
col = layout.column()
- col.prop(proxy, "quality", text="Build JPEG quality")
+ col.prop(proxy, "quality", text="Build JPEG Quality")
if strip.type == 'MOVIE':
col = layout.column()
@@ -1101,9 +1101,6 @@ class SEQUENCER_PT_preview(SequencerButtonsPanel_Output, Panel):
render = context.scene.render
col = layout.column()
- col.prop(render, "use_sequencer_gl_preview", text="OpenGL Preview")
- col = layout.column()
- #col.active = render.use_sequencer_gl_preview
col.prop(render, "sequencer_gl_preview", text="")
row = col.row()
diff --git a/release/scripts/startup/bl_ui/space_time.py b/release/scripts/startup/bl_ui/space_time.py
index b9a25cd72a0..9930992e9bb 100644
--- a/release/scripts/startup/bl_ui/space_time.py
+++ b/release/scripts/startup/bl_ui/space_time.py
@@ -250,7 +250,7 @@ def marker_menu_generic(layout):
layout.operator_context = 'INVOKE_DEFAULT'
layout.operator("marker.make_links_scene", text="Duplicate Marker to Scene...", icon='OUTLINER_OB_EMPTY')
else:
- layout.operator_menu_enum("marker.make_links_scene", "scene", text="Duplicate Marker to Scene...")
+ layout.operator_menu_enum("marker.make_links_scene", "scene", text="Duplicate Marker to Scene")
layout.operator("marker.delete", text="Delete Marker")
diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py
index 5ed481a215a..5ba1f0b8dcb 100644
--- a/release/scripts/startup/bl_ui/space_userpref.py
+++ b/release/scripts/startup/bl_ui/space_userpref.py
@@ -80,7 +80,7 @@ class USERPREF_PT_tabs(Panel):
userpref = context.user_preferences
- layout.prop(userpref, "active_section", expand=True)
+ layout.row().prop(userpref, "active_section", expand=True)
class USERPREF_MT_interaction_presets(Menu):
@@ -127,7 +127,7 @@ class USERPREF_MT_app_templates(Menu):
text=bpy.path.display_name(d),
)
props.use_splash = True
- props.app_template = d;
+ props.app_template = d
if use_install:
layout.separator()
@@ -218,6 +218,7 @@ class USERPREF_PT_interface(Panel):
col = row.column()
col.label(text="Display:")
col.prop(view, "ui_scale", text="Scale")
+ col.prop(view, "ui_line_width", text="Line Width")
col.prop(view, "show_tooltips")
col.prop(view, "show_tooltips_python")
col.prop(view, "show_object_info", text="Object Info")
@@ -249,6 +250,7 @@ class USERPREF_PT_interface(Panel):
col = row.column()
col.label(text="View Manipulation:")
col.prop(view, "use_mouse_depth_cursor")
+ col.prop(view, "use_cursor_lock_adjust")
col.prop(view, "use_mouse_depth_navigate")
col.prop(view, "use_zoom_to_mouse")
col.prop(view, "use_rotate_around_active")
@@ -477,7 +479,7 @@ class USERPREF_PT_system(Panel):
col.label(text="Sound:")
col.row().prop(system, "audio_device", expand=False)
sub = col.column()
- sub.active = system.audio_device != 'NONE' and system.audio_device != 'Null'
+ sub.active = system.audio_device not in {'NONE', 'Null'}
#sub.prop(system, "use_preview_images")
sub.prop(system, "audio_channels", text="Channels")
sub.prop(system, "audio_mixing_buffer", text="Mixing Buffer")
@@ -560,7 +562,7 @@ class USERPREF_PT_system(Panel):
# 3. Column
column = split.column()
- column.label(text="Solid OpenGL lights:")
+ column.label(text="Solid OpenGL Lights:")
split = column.split(percentage=0.1)
split.label()
@@ -1105,29 +1107,29 @@ class USERPREF_MT_ndof_settings(Menu):
layout.prop(input_prefs, "ndof_show_guide")
layout.separator()
- layout.label(text="Orbit style")
+ layout.label(text="Orbit Style")
layout.row().prop(input_prefs, "ndof_view_navigate_method", text="")
layout.row().prop(input_prefs, "ndof_view_rotate_method", text="")
layout.separator()
- layout.label(text="Orbit options")
+ layout.label(text="Orbit Options")
layout.prop(input_prefs, "ndof_rotx_invert_axis")
layout.prop(input_prefs, "ndof_roty_invert_axis")
layout.prop(input_prefs, "ndof_rotz_invert_axis")
# view2d use pan/zoom
layout.separator()
- layout.label(text="Pan options")
+ layout.label(text="Pan Options")
layout.prop(input_prefs, "ndof_panx_invert_axis")
layout.prop(input_prefs, "ndof_pany_invert_axis")
layout.prop(input_prefs, "ndof_panz_invert_axis")
layout.prop(input_prefs, "ndof_pan_yz_swap_axis")
- layout.label(text="Zoom options")
+ layout.label(text="Zoom Options")
layout.prop(input_prefs, "ndof_zoom_invert")
if is_view3d:
layout.separator()
- layout.label(text="Fly/Walk options")
+ layout.label(text="Fly/Walk Options")
layout.prop(input_prefs, "ndof_fly_helicopter", icon='NDOF_FLY')
layout.prop(input_prefs, "ndof_lock_horizon", icon='NDOF_DOM')
@@ -1452,7 +1454,7 @@ class USERPREF_PT_addons(Panel):
sub = row.row()
sub.active = is_enabled
- sub.label(text='%s: %s' % (info["category"], info["name"]))
+ sub.label(text="%s: %s" % (info["category"], info["name"]))
if info["warning"]:
sub.label(icon='ERROR')
@@ -1480,11 +1482,11 @@ class USERPREF_PT_addons(Panel):
if info["version"]:
split = colsub.row().split(percentage=0.15)
split.label(text="Version:")
- split.label(text='.'.join(str(x) for x in info["version"]), translate=False)
+ split.label(text=".".join(str(x) for x in info["version"]), translate=False)
if info["warning"]:
split = colsub.row().split(percentage=0.15)
split.label(text="Warning:")
- split.label(text=' ' + info["warning"], icon='ERROR')
+ split.label(text=" " + info["warning"], icon='ERROR')
user_addon = USERPREF_PT_addons.is_user_addon(mod, user_addon_paths)
tot_row = bool(info["wiki_url"]) + bool(user_addon)
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 42a6d3138a7..0ba64a1177f 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -294,7 +294,8 @@ class VIEW3D_MT_transform_object(VIEW3D_MT_transform_base):
layout.operator("object.origin_set", text="Geometry to Origin").type = 'GEOMETRY_ORIGIN'
layout.operator("object.origin_set", text="Origin to Geometry").type = 'ORIGIN_GEOMETRY'
layout.operator("object.origin_set", text="Origin to 3D Cursor").type = 'ORIGIN_CURSOR'
- layout.operator("object.origin_set", text="Origin to Center of Mass").type = 'ORIGIN_CENTER_OF_MASS'
+ layout.operator("object.origin_set", text="Origin to Center of Mass (Surface)").type = 'ORIGIN_CENTER_OF_MASS'
+ layout.operator("object.origin_set", text="Origin to Center of Mass (Volume)").type = 'ORIGIN_CENTER_OF_VOLUME'
layout.separator()
layout.operator("object.randomize_transform")
@@ -1255,14 +1256,14 @@ class INFO_MT_add(Menu):
layout.menu("INFO_MT_lamp_add", icon='OUTLINER_OB_LAMP')
layout.separator()
- layout.operator_menu_enum("object.effector_add", "type", text="Force Field", icon='OUTLINER_OB_EMPTY')
+ layout.operator_menu_enum("object.effector_add", "type", text="Force Field", icon='OUTLINER_OB_FORCE_FIELD')
layout.separator()
if len(bpy.data.groups) > 10:
layout.operator_context = 'INVOKE_REGION_WIN'
- layout.operator("object.group_instance_add", text="Group Instance...", icon='OUTLINER_OB_EMPTY')
+ layout.operator("object.group_instance_add", text="Group Instance...", icon='OUTLINER_OB_GROUP_INSTANCE')
else:
- layout.operator_menu_enum("object.group_instance_add", "group", text="Group Instance", icon='OUTLINER_OB_EMPTY')
+ layout.operator_menu_enum("object.group_instance_add", "group", text="Group Instance", icon='OUTLINER_OB_GROUP_INSTANCE')
# ********** Object menu **********
@@ -1663,7 +1664,7 @@ class VIEW3D_MT_make_links(Menu):
layout.operator("object.make_links_scene", text="Objects to Scene...", icon='OUTLINER_OB_EMPTY')
else:
layout.operator_context = 'EXEC_REGION_WIN'
- layout.operator_menu_enum("object.make_links_scene", "scene", text="Objects to Scene...")
+ layout.operator_menu_enum("object.make_links_scene", "scene", text="Objects to Scene")
layout.operator_context = operator_context_default
layout.operator_enum("object.make_links_data", "type") # inline
@@ -1710,7 +1711,7 @@ class VIEW3D_MT_brush(Menu):
# skip if no active brush
if not brush:
- layout.label(text="No Brushes currently available", icon="INFO")
+ layout.label(text="No Brushes currently available", icon='INFO')
return
# brush paint modes
@@ -2115,7 +2116,7 @@ class VIEW3D_MT_pose_transform(Menu):
layout.separator()
- layout.operator("pose.user_transforms_clear", text="Reset unkeyed")
+ layout.operator("pose.user_transforms_clear", text="Reset Unkeyed")
class VIEW3D_MT_pose_slide(Menu):
@@ -3536,7 +3537,7 @@ class VIEW3D_PT_view3d_meshstatvis(Panel):
row = layout.row(align=True)
row.prop(statvis, "overhang_min", text="")
row.prop(statvis, "overhang_max", text="")
- layout.prop(statvis, "overhang_axis", expand=True)
+ layout.row().prop(statvis, "overhang_axis", expand=True)
elif statvis_type == 'THICKNESS':
row = layout.row(align=True)
row.prop(statvis, "thickness_min", text="")
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index ca33d54a781..ec2e458ea7a 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -929,16 +929,18 @@ class VIEW3D_PT_imapaint_tools_missing(Panel, View3DPaintPanel):
col.separator()
col.label("Missing Canvas", icon='INFO')
col.label("Add or assign a canvas image below")
- col.label("Canvas Image")
- col.template_ID(toolsettings, "canvas")
+ col.label("Canvas Image:")
+ # todo this should be combinded into a single row
+ col.template_ID(toolsettings, "canvas", open="image.open")
col.operator("image.new", text="New").gen_context = 'PAINT_CANVAS'
if toolsettings.missing_stencil:
col.separator()
col.label("Missing Stencil", icon='INFO')
col.label("Add or assign a stencil image below")
- col.label("Stencil Image")
- col.template_ID(toolsettings, "stencil_image")
+ col.label("Stencil Image:")
+ # todo this should be combinded into a single row
+ col.template_ID(toolsettings, "stencil_image", open="image.open")
col.operator("image.new", text="New").gen_context = 'PAINT_STENCIL'
@@ -980,9 +982,9 @@ class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
col.prop(brush, "steps", slider=True)
col.prop(settings, "default_key_count", slider=True)
elif tool == 'LENGTH':
- layout.prop(brush, "length_mode", expand=True)
+ layout.row().prop(brush, "length_mode", expand=True)
elif tool == 'PUFF':
- layout.prop(brush, "puff_mode", expand=True)
+ layout.row().prop(brush, "puff_mode", expand=True)
layout.prop(brush, "use_puff_volume")
# Sculpt Mode #
@@ -1232,20 +1234,20 @@ class VIEW3D_PT_slots_projectpaint(View3DPanel, Panel):
ob = context.active_object
col = layout.column()
- col.label("Painting Mode")
+ col.label("Painting Mode:")
col.prop(settings, "mode", text="")
col.separator()
if settings.mode == 'MATERIAL':
if len(ob.material_slots) > 1:
- col.label("Materials")
+ col.label("Materials:")
col.template_list("MATERIAL_UL_matslots", "layers",
ob, "material_slots",
ob, "active_material_index", rows=2)
mat = ob.active_material
if mat:
- col.label("Available Paint Slots")
+ col.label("Available Paint Slots:")
col.template_list("TEXTURE_UL_texpaintslots", "",
mat, "texture_paint_images",
mat, "paint_active_slot", rows=2)
@@ -1265,16 +1267,17 @@ class VIEW3D_PT_slots_projectpaint(View3DPanel, Panel):
col.separator()
if slot and slot.index != -1:
- col.label("UV Map")
+ col.label("UV Map:")
col.prop_search(slot, "uv_layer", ob.data, "uv_textures", text="")
elif settings.mode == 'IMAGE':
mesh = ob.data
uv_text = mesh.uv_textures.active.name if mesh.uv_textures.active else ""
- col.label("Canvas Image")
- col.template_ID(settings, "canvas")
+ col.label("Canvas Image:")
+ # todo this should be combinded into a single row
+ col.template_ID(settings, "canvas", open="image.open")
col.operator("image.new", text="New").gen_context = 'PAINT_CANVAS'
- col.label("UV Map")
+ col.label("UV Map:")
col.menu("VIEW3D_MT_tools_projectpaint_uvlayer", text=uv_text, translate=False)
col.separator()
@@ -1308,14 +1311,15 @@ class VIEW3D_PT_stencil_projectpaint(View3DPanel, Panel):
col.active = ipaint.use_stencil_layer
stencil_text = mesh.uv_texture_stencil.name if mesh.uv_texture_stencil else ""
- col.label("UV Map")
+ col.label("UV Map:")
col.menu("VIEW3D_MT_tools_projectpaint_stencil", text=stencil_text, translate=False)
- col.label("Stencil Image")
- col.template_ID(ipaint, "stencil_image")
+ col.label("Stencil Image:")
+ # todo this should be combinded into a single row
+ col.template_ID(ipaint, "stencil_image", open="image.open")
col.operator("image.new", text="New").gen_context = 'PAINT_STENCIL'
- col.label("Visualization")
+ col.label("Visualization:")
row = col.row(align=True)
row.prop(ipaint, "stencil_color", text="")
row.prop(ipaint, "invert_stencil", text="", icon='IMAGE_ALPHA')
@@ -1982,7 +1986,7 @@ class VIEW3D_PT_tools_particlemode(View3DPanel, Panel):
col = layout.column(align=True)
if pe.is_hair:
col.active = pe.is_editable
- col.prop(pe, "use_emitter_deflect", text="Deflect emitter")
+ col.prop(pe, "use_emitter_deflect", text="Deflect Emitter")
sub = col.row(align=True)
sub.active = pe.use_emitter_deflect
sub.prop(pe, "emitter_distance", text="Distance")
diff --git a/release/scripts/startup/keyingsets_builtins.py b/release/scripts/startup/keyingsets_builtins.py
index ce0b1b62d44..390c043bb31 100644
--- a/release/scripts/startup/keyingsets_builtins.py
+++ b/release/scripts/startup/keyingsets_builtins.py
@@ -494,7 +494,7 @@ class BUILTIN_KSI_WholeCharacter(KeyingSetInfo):
# bendy bone properties
def doBBone(ksi, context, ks, pchan):
bone = pchan.bone
-
+
# This check is crude, but is the best we can do for now
# It simply adds all of these if the bbone has segments
# (and the bone is a control bone). This may lead to some
@@ -643,26 +643,29 @@ class BUILTIN_KSI_DeltaScale(KeyingSetInfo):
###############################
+# Note that this controls order of options in 'insert keyframe' menu.
+# Better try to keep some logical order here beyond mere alphabetical one, also because of menu entries shortcut.
+# See also T51867.
classes = (
BUILTIN_KSI_Available,
- BUILTIN_KSI_BendyBones,
- BUILTIN_KSI_DeltaLocation,
- BUILTIN_KSI_DeltaRotation,
- BUILTIN_KSI_DeltaScale,
+ BUILTIN_KSI_Location,
+ BUILTIN_KSI_Rotation,
+ BUILTIN_KSI_Scaling,
BUILTIN_KSI_LocRot,
BUILTIN_KSI_LocRotScale,
BUILTIN_KSI_LocScale,
- BUILTIN_KSI_Location,
BUILTIN_KSI_RotScale,
- BUILTIN_KSI_Rotation,
- BUILTIN_KSI_Scaling,
+ BUILTIN_KSI_DeltaLocation,
+ BUILTIN_KSI_DeltaRotation,
+ BUILTIN_KSI_DeltaScale,
BUILTIN_KSI_VisualLoc,
+ BUILTIN_KSI_VisualRot,
+ BUILTIN_KSI_VisualScaling,
BUILTIN_KSI_VisualLocRot,
BUILTIN_KSI_VisualLocRotScale,
BUILTIN_KSI_VisualLocScale,
- BUILTIN_KSI_VisualRot,
BUILTIN_KSI_VisualRotScale,
- BUILTIN_KSI_VisualScaling,
+ BUILTIN_KSI_BendyBones,
BUILTIN_KSI_WholeCharacter,
BUILTIN_KSI_WholeCharacterSelected,
)