diff options
author | Dalai Felinto <dalai@blender.org> | 2020-12-10 13:05:49 +0300 |
---|---|---|
committer | Dalai Felinto <dalai@blender.org> | 2020-12-10 13:05:49 +0300 |
commit | c5a17d5ea1ff786cb91cbcf3f12cd02f730c4143 (patch) | |
tree | f03a5935ee7dbc4c7ddabaee1c06570a26f698f9 /release/scripts/startup | |
parent | 390c4efa0c15b39e2d1971bc81464cffae56d102 (diff) | |
parent | e795ba1529a28ec276a5178fda2025e5ec071bbf (diff) |
Merge remote-tracking branch 'origin/master' into geometry-nodes
Diffstat (limited to 'release/scripts/startup')
-rw-r--r-- | release/scripts/startup/bl_operators/anim.py | 13 | ||||
-rw-r--r-- | release/scripts/startup/bl_operators/clip.py | 4 | ||||
-rw-r--r-- | release/scripts/startup/bl_operators/image.py | 2 | ||||
-rw-r--r-- | release/scripts/startup/bl_operators/wm.py | 66 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/properties_constraint.py | 23 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/properties_data_curve.py | 2 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/properties_paint_common.py | 8 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/properties_view_layer.py | 79 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_dopesheet.py | 2 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_graph.py | 6 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_userpref.py | 12 | ||||
-rw-r--r-- | release/scripts/startup/bl_ui/space_view3d.py | 23 | ||||
-rw-r--r-- | release/scripts/startup/keyingsets_builtins.py | 2 | ||||
-rw-r--r-- | release/scripts/startup/nodeitems_builtins.py | 7 |
14 files changed, 174 insertions, 75 deletions
diff --git a/release/scripts/startup/bl_operators/anim.py b/release/scripts/startup/bl_operators/anim.py index ab79ebe3957..bb414b5ff89 100644 --- a/release/scripts/startup/bl_operators/anim.py +++ b/release/scripts/startup/bl_operators/anim.py @@ -429,9 +429,22 @@ class UpdateAnimatedTransformConstraint(Operator): return {'FINISHED'} +class ANIM_OT_show_group_colors_deprecated(Operator): + """This option moved to Preferences > Animation""" + + bl_idname = "anim.show_group_colors_deprecated" + bl_label = "Show Group Colors" + bl_options = {'REGISTER'} + + @classmethod + def poll(cls, context) -> bool: + return False + + classes = ( ANIM_OT_keying_set_export, NLA_OT_bake, ClearUselessActions, UpdateAnimatedTransformConstraint, + ANIM_OT_show_group_colors_deprecated, ) diff --git a/release/scripts/startup/bl_operators/clip.py b/release/scripts/startup/bl_operators/clip.py index a3c54a7b069..51a9695e44a 100644 --- a/release/scripts/startup/bl_operators/clip.py +++ b/release/scripts/startup/bl_operators/clip.py @@ -414,8 +414,8 @@ class CLIP_OT_delete_proxy(Operator): class CLIP_OT_set_viewport_background(Operator): - """Set current movie clip as a camera background in 3D view-port """ \ - """(works only when a 3D view-port is visible)""" + """Set current movie clip as a camera background in 3D Viewport """ \ + """(works only when a 3D Viewport is visible)""" bl_idname = "clip.set_viewport_background" bl_label = "Set as Background" diff --git a/release/scripts/startup/bl_operators/image.py b/release/scripts/startup/bl_operators/image.py index 8d543daeac7..f2cd0ad7478 100644 --- a/release/scripts/startup/bl_operators/image.py +++ b/release/scripts/startup/bl_operators/image.py @@ -116,7 +116,7 @@ class EditExternally(Operator): class ProjectEdit(Operator): - """Edit a snapshot of the view-port in an external image editor""" + """Edit a snapshot of the 3D Viewport in an external image editor""" bl_idname = "image.project_edit" bl_label = "Project Edit" bl_options = {'REGISTER'} diff --git a/release/scripts/startup/bl_operators/wm.py b/release/scripts/startup/bl_operators/wm.py index bd1ae2ca8e1..bd1c99fdeb3 100644 --- a/release/scripts/startup/bl_operators/wm.py +++ b/release/scripts/startup/bl_operators/wm.py @@ -31,6 +31,7 @@ from bpy.props import ( IntProperty, StringProperty, ) +from bpy.app.translations import pgettext_iface as iface_ # FIXME, we need a way to detect key repeat events. # unfortunately checking event previous values isn't reliable. @@ -1146,10 +1147,11 @@ rna_default = StringProperty( maxlen=1024, ) -rna_property = StringProperty( +rna_custom_property = StringProperty( name="Property Name", description="Property name edit", - maxlen=1024, + # Match `MAX_IDPROP_NAME - 1` in Blender's source. + maxlen=63, ) rna_min = FloatProperty( @@ -1195,7 +1197,7 @@ class WM_OT_properties_edit(Operator): bl_options = {'REGISTER', 'INTERNAL'} data_path: rna_path - property: rna_property + property: rna_custom_property value: rna_value default: rna_default min: rna_min @@ -1264,6 +1266,7 @@ class WM_OT_properties_edit(Operator): data_path = self.data_path prop = self.property + prop_escape = bpy.utils.escape_identifier(prop) prop_old = getattr(self, "_last_prop", [None])[0] @@ -1288,7 +1291,7 @@ class WM_OT_properties_edit(Operator): # Reassign item[prop] = value_eval - item.property_overridable_library_set('["%s"]' % prop, self.is_overridable_library) + item.property_overridable_library_set('["%s"]' % prop_escape, self.is_overridable_library) rna_idprop_ui_prop_update(item, prop) self._last_prop[:] = [prop] @@ -1321,7 +1324,7 @@ class WM_OT_properties_edit(Operator): # If we have changed the type of the property, update its potential anim curves! if prop_type_old != prop_type_new: - data_path = '["%s"]' % bpy.utils.escape_identifier(prop) + data_path = '["%s"]' % prop_escape done = set() def _update(fcurves): @@ -1363,13 +1366,16 @@ class WM_OT_properties_edit(Operator): rna_idprop_value_item_type ) + prop = self.property + prop_escape = bpy.utils.escape_identifier(prop) + data_path = self.data_path if not data_path: self.report({'ERROR'}, "Data path not set") return {'CANCELLED'} - self._last_prop = [self.property] + self._last_prop = [prop] item = eval("context.%s" % data_path) @@ -1378,7 +1384,7 @@ class WM_OT_properties_edit(Operator): return {'CANCELLED'} # retrieve overridable static - is_overridable = item.is_property_overridable_library('["%s"]' % self.property) + is_overridable = item.is_property_overridable_library('["%s"]' % prop_escape) self.is_overridable_library = bool(is_overridable) # default default value @@ -1389,7 +1395,7 @@ class WM_OT_properties_edit(Operator): self.default = "" # setup defaults - prop_ui = rna_idprop_ui_prop_get(item, self.property, False) # don't create + prop_ui = rna_idprop_ui_prop_get(item, prop, False) # don't create if prop_ui: self.min = prop_ui.get("min", -1000000000) self.max = prop_ui.get("max", 1000000000) @@ -1547,7 +1553,7 @@ class WM_OT_properties_remove(Operator): bl_options = {'UNDO', 'INTERNAL'} data_path: rna_path - property: rna_property + property: rna_custom_property def execute(self, context): from rna_prop_ui import ( @@ -2642,26 +2648,28 @@ class WM_MT_splash_about(Menu): layout = self.layout layout.operator_context = 'EXEC_DEFAULT' - layout.label(text="Blender is free software") - layout.label(text="Licensed under the GNU General Public License") - layout.separator() - layout.separator() - - split = layout.split() - split.emboss = 'PULLDOWN_MENU' - split.scale_y = 1.3 - - col1 = split.column() - - col1.operator("wm.url_open_preset", text="Release Notes", icon='URL').type = 'RELEASE_NOTES' - col1.operator("wm.url_open_preset", text="Credits", icon='URL').type = 'CREDITS' - col1.operator("wm.url_open", text="License", icon='URL').url = "https://www.blender.org/about/license/" - - col2 = split.column() - - col2.operator("wm.url_open_preset", text="Blender Website", icon='URL').type = 'BLENDER' - col2.operator("wm.url_open", text="Blender Store", icon='URL').url = "https://store.blender.org" - col2.operator("wm.url_open_preset", text="Development Fund", icon='FUND').type = 'FUND' + split = layout.split(factor=0.65) + + col = split.column(align=True) + col.scale_y = 0.8 + col.label(text=bpy.app.version_string, translate=False) + col.separator(factor=2.5) + col.label(text=iface_("Date: %s %s") % (bpy.app.build_commit_date.decode('utf-8', 'replace'), + bpy.app.build_commit_time.decode('utf-8', 'replace')), translate=False) + col.label(text=iface_("Hash: %s") % bpy.app.build_hash.decode('ascii'), translate=False) + col.label(text=iface_("Branch: %s") % bpy.app.build_branch.decode('utf-8', 'replace'), translate=False) + col.separator(factor=2.0) + col.label(text="Blender is free software") + col.label(text="Licensed under the GNU General Public License") + + col = split.column(align=True) + col.emboss = 'PULLDOWN_MENU' + col.operator("wm.url_open_preset", text="Release Notes", icon='URL').type = 'RELEASE_NOTES' + col.operator("wm.url_open_preset", text="Credits", icon='URL').type = 'CREDITS' + col.operator("wm.url_open", text="License", icon='URL').url = "https://www.blender.org/about/license/" + col.operator("wm.url_open_preset", text="Blender Website", icon='URL').type = 'BLENDER' + col.operator("wm.url_open", text="Blender Store", icon='URL').url = "https://store.blender.org" + col.operator("wm.url_open_preset", text="Development Fund", icon='FUND').type = 'FUND' class WM_OT_drop_blend_file(Operator): diff --git a/release/scripts/startup/bl_ui/properties_constraint.py b/release/scripts/startup/bl_ui/properties_constraint.py index f46e9f9727f..71a7b056d07 100644 --- a/release/scripts/startup/bl_ui/properties_constraint.py +++ b/release/scripts/startup/bl_ui/properties_constraint.py @@ -85,14 +85,23 @@ class ConstraintButtonsPanel(Panel): row.operator("constraint.disable_keep_transform", text="", icon='CANCEL') @staticmethod - def space_template(layout, con, target=True, owner=True): + def space_template(layout, con, target=True, owner=True, separator=True): if target or owner: - layout.separator() + if separator: + layout.separator() if target: layout.prop(con, "target_space", text="Target") if owner: layout.prop(con, "owner_space", text="Owner") + if con.target_space == 'CUSTOM' or con.owner_space == 'CUSTOM': + col = layout.column() + col.prop(con, "space_object") + if con.space_object and con.space_object.type == 'ARMATURE': + col.prop_search(con, "space_subtarget", con.space_object.data, "bones", text="Bone") + elif con.space_object and con.space_object.type in {'MESH', 'LATTICE'}: + col.prop_search(con, "space_subtarget", con.space_object, "vertex_groups", text="Vertex Group") + @staticmethod def target_template(layout, con, subtargets=True): col = layout.column() @@ -237,7 +246,7 @@ class ConstraintButtonsPanel(Panel): row.label(icon="BLANK1") layout.prop(con, "use_transform_limit") - layout.prop(con, "owner_space") + self.space_template(layout, con, target=False, owner=True) self.draw_influence(layout, con) @@ -306,7 +315,7 @@ class ConstraintButtonsPanel(Panel): row.prop_decorator(con, "max_z") layout.prop(con, "use_transform_limit") - layout.prop(con, "owner_space") + self.space_template(layout, con, target=False, owner=True) self.draw_influence(layout, con) @@ -375,7 +384,7 @@ class ConstraintButtonsPanel(Panel): row.prop_decorator(con, "max_z") layout.prop(con, "use_transform_limit") - layout.prop(con, "owner_space") + self.space_template(layout, con, target=False, owner=True) self.draw_influence(layout, con) @@ -483,7 +492,7 @@ class ConstraintButtonsPanel(Panel): layout.prop(con, "volume") - layout.prop(con, "owner_space") + self.space_template(layout, con, target=False, owner=True) self.draw_influence(layout, con) @@ -1117,7 +1126,7 @@ class ConstraintButtonsSubPanel(Panel): col = layout.column() col.active = not con.use_eval_time col.prop(con, "transform_channel", text="Channel") - col.prop(con, "target_space") + ConstraintButtonsPanel.space_template(col, con, target=True, owner=False, separator=False) sub = col.column(align=True) sub.prop(con, "min", text="Range Min") diff --git a/release/scripts/startup/bl_ui/properties_data_curve.py b/release/scripts/startup/bl_ui/properties_data_curve.py index 9ae7f8f8e6c..394e2270227 100644 --- a/release/scripts/startup/bl_ui/properties_data_curve.py +++ b/release/scripts/startup/bl_ui/properties_data_curve.py @@ -126,7 +126,7 @@ class DATA_PT_shape_curve(CurveButtonsPanel, Panel): col = layout.column() col.separator() - sub = col.column() + sub = col.column(heading="Curve Deform", align=True) sub.prop(curve, "use_radius") sub.prop(curve, "use_stretch") sub.prop(curve, "use_deform_bounds") diff --git a/release/scripts/startup/bl_ui/properties_paint_common.py b/release/scripts/startup/bl_ui/properties_paint_common.py index 63ccbd2ae05..1ae1826b609 100644 --- a/release/scripts/startup/bl_ui/properties_paint_common.py +++ b/release/scripts/startup/bl_ui/properties_paint_common.py @@ -643,6 +643,11 @@ def brush_settings(layout, context, brush, popover=False): layout.prop(brush, "elastic_deform_volume_preservation", slider=True) layout.separator() + elif sculpt_tool == 'SNAKE_HOOK': + layout.separator() + layout.prop(brush, "snake_hook_deform_type") + layout.separator() + elif sculpt_tool == 'POSE': layout.separator() layout.prop(brush, "deform_target") @@ -717,6 +722,9 @@ def brush_settings(layout, context, brush, popover=False): row.prop(brush, "use_wet_persistence_pressure", text="") row = layout.row(align=True) + row.prop(brush, "wet_paint_radius_factor") + + row = layout.row(align=True) row.prop(brush, "density") row.prop(brush, "invert_density_pressure", text="") row.prop(brush, "use_density_pressure", text="") diff --git a/release/scripts/startup/bl_ui/properties_view_layer.py b/release/scripts/startup/bl_ui/properties_view_layer.py index afa00bb50c2..27df3b10853 100644 --- a/release/scripts/startup/bl_ui/properties_view_layer.py +++ b/release/scripts/startup/bl_ui/properties_view_layer.py @@ -17,7 +17,16 @@ # ##### END GPL LICENSE BLOCK ##### # <pep8 compliant> -from bpy.types import Panel +from bpy.types import Panel, UIList + + +class VIEWLAYER_UL_aov(UIList): + def draw_item(self, context, layout, data, item, icon, active_data, active_propname): + row = layout.row() + split = row.split(factor=0.65) + icon = 'NONE' if item.is_valid else 'ERROR' + split.row().prop(item, "name", text="", icon=icon, emboss=False) + split.row().prop(item, "type", text="", emboss=False) class ViewLayerButtonsPanel: @@ -49,7 +58,7 @@ class VIEWLAYER_PT_layer(ViewLayerButtonsPanel, Panel): col.prop(rd, "use_single_layer", text="Render Single Layer") -class VIEWLAYER_PT_eevee_layer_passes(ViewLayerButtonsPanel, Panel): +class VIEWLAYER_PT_layer_passes(ViewLayerButtonsPanel, Panel): bl_label = "Passes" COMPAT_ENGINES = {'BLENDER_EEVEE'} @@ -59,7 +68,7 @@ class VIEWLAYER_PT_eevee_layer_passes(ViewLayerButtonsPanel, Panel): class VIEWLAYER_PT_eevee_layer_passes_data(ViewLayerButtonsPanel, Panel): bl_label = "Data" - bl_parent_id = "VIEWLAYER_PT_eevee_layer_passes" + bl_parent_id = "VIEWLAYER_PT_layer_passes" COMPAT_ENGINES = {'BLENDER_EEVEE'} @@ -81,7 +90,7 @@ class VIEWLAYER_PT_eevee_layer_passes_data(ViewLayerButtonsPanel, Panel): class VIEWLAYER_PT_eevee_layer_passes_light(ViewLayerButtonsPanel, Panel): bl_label = "Light" - bl_parent_id = "VIEWLAYER_PT_eevee_layer_passes" + bl_parent_id = "VIEWLAYER_PT_layer_passes" COMPAT_ENGINES = {'BLENDER_EEVEE'} def draw(self, context): @@ -116,7 +125,7 @@ class VIEWLAYER_PT_eevee_layer_passes_light(ViewLayerButtonsPanel, Panel): class VIEWLAYER_PT_eevee_layer_passes_effects(ViewLayerButtonsPanel, Panel): bl_label = "Effects" - bl_parent_id = "VIEWLAYER_PT_eevee_layer_passes" + bl_parent_id = "VIEWLAYER_PT_layer_passes" COMPAT_ENGINES = {'BLENDER_EEVEE'} def draw(self, context): @@ -135,12 +144,70 @@ class VIEWLAYER_PT_eevee_layer_passes_effects(ViewLayerButtonsPanel, Panel): col.active = scene_eevee.use_bloom +class VIEWLAYER_PT_layer_passes_aov(ViewLayerButtonsPanel, Panel): + bl_label = "Shader AOV" + bl_parent_id = "VIEWLAYER_PT_layer_passes" + COMPAT_ENGINES = {'BLENDER_EEVEE'} + + def draw(self, context): + layout = self.layout + + layout.use_property_split = True + layout.use_property_decorate = False + + view_layer = context.view_layer + + row = layout.row() + col = row.column() + col.template_list("VIEWLAYER_UL_aov", "aovs", view_layer, "aovs", view_layer, "active_aov_index", rows=2) + + col = row.column() + sub = col.column(align=True) + sub.operator("scene.view_layer_add_aov", icon='ADD', text="") + sub.operator("scene.view_layer_remove_aov", icon='REMOVE', text="") + + aov = view_layer.active_aov + if aov and not aov.is_valid: + layout.label(text="Conflicts with another render pass with the same name", icon='ERROR') + + +class ViewLayerCryptomattePanel(ViewLayerButtonsPanel, Panel): + bl_label = "Cryptomatte" + + def draw(self, context): + layout = self.layout + + layout.use_property_split = True + layout.use_property_decorate = False + + view_layer = context.view_layer + + col = layout.column() + col.prop(view_layer, "use_pass_cryptomatte_object", text="Object") + col.prop(view_layer, "use_pass_cryptomatte_material", text="Material") + col.prop(view_layer, "use_pass_cryptomatte_asset", text="Asset") + col = layout.column() + col.active = any((view_layer.use_pass_cryptomatte_object, + view_layer.use_pass_cryptomatte_material, + view_layer.use_pass_cryptomatte_asset)) + col.prop(view_layer, "pass_cryptomatte_depth", text="Levels") + col.prop(view_layer, "use_pass_cryptomatte_accurate", text="Accurate Mode") + + +class VIEWLAYER_PT_layer_passes_cryptomatte(ViewLayerCryptomattePanel): + bl_parent_id = "VIEWLAYER_PT_layer_passes" + COMPAT_ENGINES = {'BLENDER_EEVEE'} + + classes = ( VIEWLAYER_PT_layer, - VIEWLAYER_PT_eevee_layer_passes, + VIEWLAYER_PT_layer_passes, VIEWLAYER_PT_eevee_layer_passes_data, VIEWLAYER_PT_eevee_layer_passes_light, VIEWLAYER_PT_eevee_layer_passes_effects, + VIEWLAYER_PT_layer_passes_cryptomatte, + VIEWLAYER_PT_layer_passes_aov, + VIEWLAYER_UL_aov, ) if __name__ == "__main__": # only for live edit. diff --git a/release/scripts/startup/bl_ui/space_dopesheet.py b/release/scripts/startup/bl_ui/space_dopesheet.py index 676e93f4ce9..0c222e8c023 100644 --- a/release/scripts/startup/bl_ui/space_dopesheet.py +++ b/release/scripts/startup/bl_ui/space_dopesheet.py @@ -347,6 +347,8 @@ class DOPESHEET_MT_view(Menu): col.active = context.space_data.mode != 'SHAPEKEY' col.prop(st, "show_sliders") + if bpy.app.version < (2, 93): + layout.operator("anim.show_group_colors_deprecated", icon='CHECKBOX_HLT') layout.prop(st, "show_interpolation") layout.prop(st, "show_extremes") layout.prop(st, "use_auto_merge_keyframes") diff --git a/release/scripts/startup/bl_ui/space_graph.py b/release/scripts/startup/bl_ui/space_graph.py index 3fee0ae9d47..6ece6a4c841 100644 --- a/release/scripts/startup/bl_ui/space_graph.py +++ b/release/scripts/startup/bl_ui/space_graph.py @@ -18,6 +18,7 @@ # <pep8 compliant> +import bpy from bpy.types import Header, Menu, Panel from bl_ui.space_dopesheet import ( DopesheetFilterPopoverBase, @@ -119,7 +120,10 @@ class GRAPH_MT_view(Menu): layout.prop(st, "use_realtime_update") layout.prop(st, "show_cursor") layout.prop(st, "show_sliders") - layout.prop(st, "show_group_colors") + + if bpy.app.version < (2, 93): + layout.operator("anim.show_group_colors_deprecated", icon='CHECKBOX_HLT') + layout.prop(st, "use_auto_merge_keyframes") if st.mode != 'DRIVERS': diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py index 53c1a136dec..761e60aef30 100644 --- a/release/scripts/startup/bl_ui/space_userpref.py +++ b/release/scripts/startup/bl_ui/space_userpref.py @@ -207,10 +207,14 @@ class USERPREF_PT_interface_display(InterfacePanel, CenterAlignMixIn, Panel): col.prop(view, "ui_line_width", text="Line Width") col.prop(view, "show_splash", text="Splash Screen") col.prop(view, "show_developer_ui") + + col.separator() - col = layout.column(heading="Tooltips") - col.prop(view, "show_tooltips") - col.prop(view, "show_tooltips_python") + col = layout.column(heading="Tooltips", align=True) + col.prop(view, "show_tooltips", text = "User Tooltips") + sub = col.column() + sub.active = view.show_tooltips + sub.prop(view, "show_tooltips_python") class USERPREF_PT_interface_text(InterfacePanel, CenterAlignMixIn, Panel): @@ -2187,7 +2191,7 @@ class USERPREF_PT_experimental_new_features(ExperimentalPanel, Panel): context, ( ({"property": "use_sculpt_vertex_colors"}, "T71947"), ({"property": "use_switch_object_operator"}, "T80402"), - ({"property": "use_sculpt_tools_tilt"}, "T00000"), + ({"property": "use_sculpt_tools_tilt"}, "T82877"), ({"property": "use_object_add_tool"}, "T57210"), ), ) diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py index 5af88e15111..10c9f25b92a 100644 --- a/release/scripts/startup/bl_ui/space_view3d.py +++ b/release/scripts/startup/bl_ui/space_view3d.py @@ -1828,7 +1828,13 @@ class VIEW3D_MT_paint_gpencil(Menu): def draw(self, context): layout = self.layout + layout.operator("gpencil.vertex_color_set", text="Set Vertex Colors") layout.operator("gpencil.stroke_reset_vertex_color") + layout.separator() + layout.operator("gpencil.vertex_color_invert", text="Invert") + layout.operator("gpencil.vertex_color_levels", text="Levels") + layout.operator("gpencil.vertex_color_hsv", text="Hue Saturation Value") + layout.operator("gpencil.vertex_color_brightness_contrast", text="Bright/Contrast") class VIEW3D_MT_select_gpencil(Menu): @@ -5044,22 +5050,6 @@ class VIEW3D_MT_weight_gpencil(Menu): layout.menu("VIEW3D_MT_gpencil_autoweights") -class VIEW3D_MT_vertex_gpencil(Menu): - bl_label = "Paint" - - def draw(self, _context): - layout = self.layout - layout.operator("gpencil.vertex_color_set", text="Set Vertex Colors") - layout.separator() - layout.operator("gpencil.vertex_color_invert", text="Invert") - layout.operator("gpencil.vertex_color_levels", text="Levels") - layout.operator("gpencil.vertex_color_hsv", text="Hue Saturation Value") - layout.operator("gpencil.vertex_color_brightness_contrast", text="Bright/Contrast") - - layout.separator() - layout.menu("VIEW3D_MT_join_palette") - - class VIEW3D_MT_gpencil_animation(Menu): bl_label = "Animation" @@ -7606,7 +7596,6 @@ classes = ( VIEW3D_MT_edit_gpencil_delete, VIEW3D_MT_edit_gpencil_showhide, VIEW3D_MT_weight_gpencil, - VIEW3D_MT_vertex_gpencil, VIEW3D_MT_gpencil_animation, VIEW3D_MT_gpencil_simplify, VIEW3D_MT_gpencil_copy_layer, diff --git a/release/scripts/startup/keyingsets_builtins.py b/release/scripts/startup/keyingsets_builtins.py index 6dffeac35ce..012febc7cc7 100644 --- a/release/scripts/startup/keyingsets_builtins.py +++ b/release/scripts/startup/keyingsets_builtins.py @@ -520,7 +520,7 @@ class BUILTIN_KSI_WholeCharacter(KeyingSetInfo): # for now, just add all of 'em prop_rna = type(bone).bl_rna.properties.get(prop, None) if prop_rna is None: - prop_path = '["%s"]' % prop + prop_path = '["%s"]' % bpy.utils.escape_identifier(prop) try: rna_property = bone.path_resolve(prop_path, False) except ValueError as ex: diff --git a/release/scripts/startup/nodeitems_builtins.py b/release/scripts/startup/nodeitems_builtins.py index b1789776728..abab50b95a2 100644 --- a/release/scripts/startup/nodeitems_builtins.py +++ b/release/scripts/startup/nodeitems_builtins.py @@ -165,11 +165,6 @@ def object_cycles_shader_nodes_poll(context): cycles_shader_nodes_poll(context)) -def cycles_aov_node_poll(context): - return (object_cycles_shader_nodes_poll(context) or - world_shader_nodes_poll(context)) - - def object_eevee_shader_nodes_poll(context): return (object_shader_nodes_poll(context) and eevee_shader_nodes_poll(context)) @@ -210,7 +205,7 @@ shader_node_categories = [ ShaderNodeCategory("SH_NEW_OUTPUT", "Output", items=[ NodeItem("ShaderNodeOutputMaterial", poll=object_eevee_cycles_shader_nodes_poll), NodeItem("ShaderNodeOutputLight", poll=object_cycles_shader_nodes_poll), - NodeItem("ShaderNodeOutputAOV", poll=cycles_aov_node_poll), + NodeItem("ShaderNodeOutputAOV"), NodeItem("ShaderNodeOutputWorld", poll=world_shader_nodes_poll), NodeItem("ShaderNodeOutputLineStyle", poll=line_style_shader_nodes_poll), NodeItem("NodeGroupOutput", poll=group_input_output_item_poll), |