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:
Diffstat (limited to 'release/scripts/startup/bl_ui')
-rw-r--r--release/scripts/startup/bl_ui/properties_data_mesh.py19
-rw-r--r--release/scripts/startup/bl_ui/space_nla.py24
-rw-r--r--release/scripts/startup/bl_ui/space_node.py3
-rw-r--r--release/scripts/startup/bl_ui/space_time.py8
-rw-r--r--release/scripts/startup/bl_ui/space_topbar.py59
-rw-r--r--release/scripts/startup/bl_ui/space_userpref.py6
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py9
7 files changed, 111 insertions, 17 deletions
diff --git a/release/scripts/startup/bl_ui/properties_data_mesh.py b/release/scripts/startup/bl_ui/properties_data_mesh.py
index 1bfd82cc790..1ba7a4a5413 100644
--- a/release/scripts/startup/bl_ui/properties_data_mesh.py
+++ b/release/scripts/startup/bl_ui/properties_data_mesh.py
@@ -599,20 +599,21 @@ class MESH_UL_color_attributes(UIList, ColorAttributesListBase):
split.emboss = 'NONE'
split.prop(attribute, "name", text="")
- active_render = _index == data.color_attributes.render_color_index
+ sub = split.row()
+ sub.alignment = 'RIGHT'
+ sub.active = False
+ sub.label(text="%s ▶ %s" % (domain_name, data_type.name))
- props = split.operator(
+ active_render = _index == data.color_attributes.render_color_index
+
+ row = layout.row()
+ row.emboss = 'NONE'
+ prop = row.operator(
"geometry.color_attribute_render_set",
text="",
icon='RESTRICT_RENDER_OFF' if active_render else 'RESTRICT_RENDER_ON',
)
-
- props.name = attribute.name
-
- sub = split.row()
- sub.alignment = 'RIGHT'
- sub.active = False
- sub.label(text="%s ▶ %s" % (domain_name, data_type.name))
+ prop.name = attribute.name
class MESH_UL_color_attributes_selector(UIList, ColorAttributesListBase):
diff --git a/release/scripts/startup/bl_ui/space_nla.py b/release/scripts/startup/bl_ui/space_nla.py
index 99324ac5d50..f0e991c768d 100644
--- a/release/scripts/startup/bl_ui/space_nla.py
+++ b/release/scripts/startup/bl_ui/space_nla.py
@@ -150,6 +150,23 @@ class NLA_MT_marker(Menu):
marker_menu_generic(layout, context)
+class NLA_MT_marker_select(Menu):
+ bl_label = 'Select'
+
+ def draw(self, context):
+ layout = self.layout
+
+ layout.operator("marker.select_all", text="All").action = 'SELECT'
+ layout.operator("marker.select_all", text="None").action = 'DESELECT'
+ layout.operator("marker.select_all", text="Invert").action = 'INVERT'
+
+ layout.separator()
+
+ layout.operator("marker.select_leftright", text="Before Current Frame").mode = 'LEFT'
+ layout.operator("marker.select_leftright", text="After Current Frame").mode = 'RIGHT'
+
+
+
class NLA_MT_edit(Menu):
bl_label = "Edit"
@@ -197,7 +214,8 @@ class NLA_MT_edit(Menu):
layout.operator("nla.tweakmode_exit", text="Stop Tweaking Strip Actions")
else:
layout.operator("nla.tweakmode_enter", text="Start Editing Stashed Action").isolate_action = True
- layout.operator("nla.tweakmode_enter", text="Start Tweaking Strip Actions")
+ layout.operator("nla.tweakmode_enter", text="Start Tweaking Strip Actions (Full Stack)").use_upper_stack_evaluation = True
+ layout.operator("nla.tweakmode_enter", text="Start Tweaking Strip Actions (Lower Stack)").use_upper_stack_evaluation = False
class NLA_MT_add(Menu):
@@ -271,7 +289,8 @@ class NLA_MT_context_menu(Menu):
layout.operator("nla.tweakmode_exit", text="Stop Tweaking Strip Actions")
else:
layout.operator("nla.tweakmode_enter", text="Start Editing Stashed Action").isolate_action = True
- layout.operator("nla.tweakmode_enter", text="Start Tweaking Strip Actions")
+ layout.operator("nla.tweakmode_enter", text="Start Tweaking Strip Actions (Full Stack)").use_upper_stack_evaluation = True
+ layout.operator("nla.tweakmode_enter", text="Start Tweaking Strip Actions (Lower Stack)").use_upper_stack_evaluation = False
layout.separator()
@@ -312,6 +331,7 @@ classes = (
NLA_MT_view,
NLA_MT_select,
NLA_MT_marker,
+ NLA_MT_marker_select,
NLA_MT_add,
NLA_MT_edit_transform,
NLA_MT_snap_pie,
diff --git a/release/scripts/startup/bl_ui/space_node.py b/release/scripts/startup/bl_ui/space_node.py
index d7d905cb820..d7c6bf63423 100644
--- a/release/scripts/startup/bl_ui/space_node.py
+++ b/release/scripts/startup/bl_ui/space_node.py
@@ -149,7 +149,7 @@ class NODE_HT_header(Header):
active_modifier = ob.modifiers.active
if active_modifier and active_modifier.type == 'NODES':
if active_modifier.node_group:
- row.template_ID(active_modifier, "node_group", new="node.copy_geometry_node_group_assign")
+ row.template_ID(active_modifier, "node_group", new="object.geometry_node_tree_copy_assign")
else:
row.template_ID(active_modifier, "node_group", new="node.new_geometry_node_group_assign")
else:
@@ -709,6 +709,7 @@ class NODE_PT_overlay(Panel):
if snode.tree_type == 'GeometryNodeTree':
col.separator()
col.prop(overlay, "show_timing", text="Timings")
+ col.prop(overlay, "show_named_attributes", text="Named Attributes")
class NODE_UL_interface_sockets(bpy.types.UIList):
diff --git a/release/scripts/startup/bl_ui/space_time.py b/release/scripts/startup/bl_ui/space_time.py
index 5296900fa30..13ab6e67b00 100644
--- a/release/scripts/startup/bl_ui/space_time.py
+++ b/release/scripts/startup/bl_ui/space_time.py
@@ -187,11 +187,17 @@ def marker_menu_generic(layout, context):
layout.separator()
- layout.operator("marker.rename", text="Rename Marker")
+ props = layout.operator("wm.call_panel", text="Rename Marker")
+ props.name = "TOPBAR_PT_name_marker"
+ props.keep_open = False
layout.operator("marker.move", text="Move Marker")
layout.separator()
+ layout.menu('NLA_MT_marker_select')
+
+ layout.separator()
+
layout.operator("marker.camera_bind")
layout.separator()
diff --git a/release/scripts/startup/bl_ui/space_topbar.py b/release/scripts/startup/bl_ui/space_topbar.py
index 55dcb4a20eb..2cf50bdbf95 100644
--- a/release/scripts/startup/bl_ui/space_topbar.py
+++ b/release/scripts/startup/bl_ui/space_topbar.py
@@ -851,6 +851,64 @@ class TOPBAR_PT_name(Panel):
row.label(text="No active item")
+class TOPBAR_PT_name_marker(Panel):
+ bl_space_type = 'TOPBAR' # dummy
+ bl_region_type = 'HEADER'
+ bl_label = "Rename Marker"
+ bl_ui_units_x = 14
+
+ @staticmethod
+ def is_using_pose_markers(context):
+ sd = context.space_data
+ return (sd.type == 'DOPESHEET_EDITOR' and sd.mode in {'ACTION', 'SHAPEKEY'} and
+ sd.show_pose_markers and sd.action)
+
+ @staticmethod
+ def get_selected_marker(context):
+ if TOPBAR_PT_name_marker.is_using_pose_markers(context):
+ markers = context.space_data.action.pose_markers
+ else:
+ markers = context.scene.timeline_markers
+
+ for marker in markers:
+ if marker.select:
+ return marker
+ return None
+
+ @staticmethod
+ def row_with_icon(layout, icon):
+ row = layout.row()
+ row.activate_init = True
+ row.label(icon=icon)
+ return row
+
+ def draw(self, context):
+ layout = self.layout
+
+ layout.label(text="Marker Name")
+
+ scene = context.scene
+ if scene.tool_settings.lock_markers:
+ row = self.row_with_icon(layout, 'ERROR')
+ label = "Markers are locked"
+ row.label(text=label)
+ return
+
+ marker = self.get_selected_marker(context)
+ if marker is None:
+ row = self.row_with_icon(layout, 'ERROR')
+ row.label(text="No active marker")
+ return
+
+ icon = 'TIME'
+ if marker.camera is not None:
+ icon = 'CAMERA_DATA'
+ elif self.is_using_pose_markers(context):
+ icon = 'ARMATURE_DATA'
+ row = self.row_with_icon(layout, icon)
+ row.prop(marker, "name", text="")
+
+
classes = (
TOPBAR_HT_upper_bar,
TOPBAR_MT_file_context_menu,
@@ -877,6 +935,7 @@ classes = (
TOPBAR_PT_gpencil_layers,
TOPBAR_PT_gpencil_primitive,
TOPBAR_PT_name,
+ TOPBAR_PT_name_marker,
)
if __name__ == "__main__": # only for live edit.
diff --git a/release/scripts/startup/bl_ui/space_userpref.py b/release/scripts/startup/bl_ui/space_userpref.py
index 035c4fd1352..b954d726ca3 100644
--- a/release/scripts/startup/bl_ui/space_userpref.py
+++ b/release/scripts/startup/bl_ui/space_userpref.py
@@ -2281,7 +2281,8 @@ class USERPREF_PT_experimental_prototypes(ExperimentalPanel, Panel):
),
)
-
+# Keep this as tweaks can be useful to restore.
+"""
class USERPREF_PT_experimental_tweaks(ExperimentalPanel, Panel):
bl_label = "Tweaks"
@@ -2292,6 +2293,7 @@ class USERPREF_PT_experimental_tweaks(ExperimentalPanel, Panel):
),
)
+"""
class USERPREF_PT_experimental_debugging(ExperimentalPanel, Panel):
bl_label = "Debugging"
@@ -2413,7 +2415,7 @@ classes = (
USERPREF_PT_experimental_new_features,
USERPREF_PT_experimental_prototypes,
- USERPREF_PT_experimental_tweaks,
+ # USERPREF_PT_experimental_tweaks,
USERPREF_PT_experimental_debugging,
# Add dynamically generated editor theme panels last,
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 2e924d5b4c9..74f20aca072 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -2722,6 +2722,9 @@ class VIEW3D_MT_object_apply(Menu):
text_ctxt=i18n_contexts.default,
).target = 'MESH'
layout.operator("object.duplicates_make_real")
+ layout.operator("object.parent_inverse_apply",
+ text="Parent Inverse",
+ text_ctxt=i18n_contexts.default)
class VIEW3D_MT_object_parent(Menu):
@@ -6746,8 +6749,10 @@ class VIEW3D_PT_snapping(Panel):
col.prop(tool_settings, "use_snap_backface_culling")
if obj:
- if object_mode == 'EDIT':
- col.prop(tool_settings, "use_snap_self")
+ if object_mode == 'EDIT' and obj.type not in {'LATTICE', 'META', 'FONT'}:
+ sub = col.column()
+ sub.active = not (tool_settings.use_proportional_edit and obj.type == 'MESH')
+ sub.prop(tool_settings, "use_snap_self")
if object_mode in {'OBJECT', 'POSE', 'EDIT', 'WEIGHT_PAINT'}:
col.prop(tool_settings, "use_snap_align_rotation")