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/space_view3d.py')
-rw-r--r--release/scripts/startup/bl_ui/space_view3d.py291
1 files changed, 147 insertions, 144 deletions
diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 582d4fe1258..65619ffd285 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -761,6 +761,8 @@ class VIEW3D_MT_editor_menus(Menu):
layout.menu("VIEW3D_MT_paint_gpencil")
elif obj and obj.mode == 'EDIT_GPENCIL':
layout.menu("VIEW3D_MT_edit_gpencil")
+ layout.menu("VIEW3D_MT_edit_gpencil_stroke")
+ layout.menu("VIEW3D_MT_edit_gpencil_point")
elif obj and obj.mode == 'WEIGHT_GPENCIL':
layout.menu("VIEW3D_MT_weight_gpencil")
@@ -779,10 +781,7 @@ class VIEW3D_MT_editor_menus(Menu):
elif obj:
if mode_string != 'PAINT_TEXTURE':
layout.menu("VIEW3D_MT_%s" % mode_string.lower())
- if mode_string in {'SCULPT', 'PAINT_VERTEX', 'PAINT_WEIGHT', 'PAINT_TEXTURE'}:
- layout.menu("VIEW3D_MT_brush")
- if mode_string == 'SCULPT':
- layout.menu("VIEW3D_MT_hide_mask")
+
else:
layout.menu("VIEW3D_MT_object")
@@ -2643,63 +2642,6 @@ class VIEW3D_MT_make_links(Menu):
layout.operator("object.join_uvs") # stupid place to add this!
-class VIEW3D_MT_brush(Menu):
- bl_label = "Brush"
-
- def draw(self, context):
- layout = self.layout
-
- tool_settings = context.tool_settings
- settings = UnifiedPaintPanel.paint_settings(context)
- brush = getattr(settings, "brush", None)
-
- ups = tool_settings.unified_paint_settings
- layout.prop(ups, "use_unified_size", text="Unified Size")
- layout.prop(ups, "use_unified_strength", text="Unified Strength")
- if context.image_paint_object or context.vertex_paint_object:
- layout.prop(ups, "use_unified_color", text="Unified Color")
- layout.separator()
-
- # skip if no active brush
- if not brush:
- layout.label(text="No Brushes currently available", icon='INFO')
- return
-
- # brush paint modes
- layout.menu("VIEW3D_MT_brush_paint_modes")
-
- # brush tool
- if context.sculpt_object:
- layout.operator("brush.reset")
- layout.prop_menu_enum(brush, "sculpt_tool")
- elif context.image_paint_object:
- layout.prop_menu_enum(brush, "image_tool")
- elif context.vertex_paint_object:
- layout.prop_menu_enum(brush, "vertex_tool")
- elif context.weight_paint_object:
- layout.prop_menu_enum(brush, "weight_tool")
-
- # TODO: still missing a lot of brush options here
-
- # sculpt options
- if context.sculpt_object:
-
- sculpt_tool = brush.sculpt_tool
-
- layout.separator()
- layout.prop_menu_enum(brush, "curve_preset")
- layout.separator()
-
- if sculpt_tool != 'GRAB':
- layout.prop_menu_enum(brush, "stroke_method")
-
- if sculpt_tool in {'DRAW', 'PINCH', 'INFLATE', 'LAYER', 'CLAY'}:
- layout.prop_menu_enum(brush, "direction")
-
- if sculpt_tool == 'LAYER':
- layout.prop(brush, "use_persistent")
- layout.operator("sculpt.set_persistent_base")
-
class VIEW3D_MT_brush_paint_modes(Menu):
bl_label = "Enabled Modes"
@@ -2788,6 +2730,27 @@ class VIEW3D_MT_vertex_group(Menu):
layout.operator("object.vertex_group_remove", text="Remove All Groups").all = True
+class VIEW3D_MT_gpencil_vertex_group(Menu):
+ bl_label = "Vertex Groups"
+
+ def draw(self, context):
+ layout = self.layout
+
+ layout.operator_context = 'EXEC_AREA'
+ ob = context.active_object
+
+ layout.operator("object.vertex_group_add", text="Add New Group")
+ ob = context.active_object
+ if ob.vertex_groups.active:
+ layout.separator()
+
+ layout.operator("gpencil.vertex_group_assign", text="Assign")
+ layout.operator("gpencil.vertex_group_remove_from", text="Remove")
+
+ layout.operator("gpencil.vertex_group_select", text="Select")
+ layout.operator("gpencil.vertex_group_deselect", text="Deselect")
+
+
class VIEW3D_MT_paint_weight(Menu):
bl_label = "Weights"
@@ -2839,38 +2802,6 @@ class VIEW3D_MT_sculpt(Menu):
def draw(self, context):
layout = self.layout
- tool_settings = context.tool_settings
- sculpt = tool_settings.sculpt
-
- layout.operator("sculpt.dynamic_topology_toggle", text="Toggle Dynamic Topology")
-
- layout.separator()
-
- layout.prop(sculpt, "use_symmetry_x")
- layout.prop(sculpt, "use_symmetry_y")
- layout.prop(sculpt, "use_symmetry_z")
-
- layout.separator()
-
- layout.prop(sculpt, "lock_x")
- layout.prop(sculpt, "lock_y")
- layout.prop(sculpt, "lock_z")
-
- layout.separator()
-
- layout.prop(sculpt, "use_threaded", text="Threaded Sculpt")
- layout.prop(sculpt, "show_low_resolution")
- layout.prop(sculpt, "show_brush")
- layout.prop(sculpt, "use_deform_only")
- layout.prop(sculpt, "show_mask")
-
-
-class VIEW3D_MT_hide_mask(Menu):
- bl_label = "Hide/Mask"
-
- def draw(self, _context):
- layout = self.layout
-
props = layout.operator("paint.hide_show", text="Show All")
props.action = 'SHOW'
props.area = 'ALL'
@@ -2885,7 +2816,6 @@ class VIEW3D_MT_hide_mask(Menu):
props = layout.operator("paint.hide_show", text="Hide Masked")
props.area = 'MASKED'
- props.action = 'HIDE'
layout.separator()
@@ -4447,6 +4377,7 @@ class VIEW3D_MT_gpencil_simplify(Menu):
layout = self.layout
layout.operator("gpencil.stroke_simplify_fixed", text="Fixed")
layout.operator("gpencil.stroke_simplify", text="Adaptive")
+ layout.operator("gpencil.stroke_sample", text="Sample")
class VIEW3D_MT_paint_gpencil(Menu):
@@ -4457,7 +4388,6 @@ class VIEW3D_MT_paint_gpencil(Menu):
layout = self.layout
layout.menu("VIEW3D_MT_gpencil_animation")
- layout.menu("VIEW3D_MT_edit_gpencil_interpolate")
layout.separator()
@@ -4501,46 +4431,58 @@ class VIEW3D_MT_gpencil_copy_layer(Menu):
class VIEW3D_MT_edit_gpencil(Menu):
- bl_label = "Strokes"
+ bl_label = "Grease Pencil"
def draw(self, _context):
layout = self.layout
layout.menu("VIEW3D_MT_edit_gpencil_transform")
-
- layout.separator()
+ layout.menu("VIEW3D_MT_mirror")
layout.menu("GPENCIL_MT_snap")
layout.separator()
layout.menu("VIEW3D_MT_gpencil_animation")
- layout.menu("VIEW3D_MT_edit_gpencil_interpolate")
layout.separator()
# Cut, Copy, Paste
layout.operator("gpencil.duplicate_move", text="Duplicate")
+ layout.operator("gpencil.stroke_split", text="Split")
layout.operator("gpencil.copy", text="Copy", icon='COPYDOWN')
layout.operator("gpencil.paste", text="Paste", icon='PASTEDOWN').type = 'COPY'
layout.operator("gpencil.paste", text="Paste & Merge").type = 'MERGE'
layout.separator()
- layout.operator("gpencil.stroke_smooth", text="Smooth")
- layout.operator("gpencil.stroke_subdivide", text="Subdivide")
+ layout.menu("VIEW3D_MT_weight_gpencil")
+
+ layout.separator()
+
+ layout.menu("VIEW3D_MT_edit_gpencil_showhide")
+
+ layout.operator_menu_enum("gpencil.stroke_separate", "mode")
+ layout.menu("GPENCIL_MT_cleanup")
+
+ layout.separator()
+
+ # Remove
+ layout.menu("VIEW3D_MT_edit_gpencil_delete")
+
+
+class VIEW3D_MT_edit_gpencil_stroke(Menu):
+ bl_label = "Stroke"
+
+ def draw(self, _context):
+ layout = self.layout
+
+ layout.operator("gpencil.stroke_subdivide", text="Subdivide").only_selected = False
layout.menu("VIEW3D_MT_gpencil_simplify")
layout.operator("gpencil.stroke_trim", text="Trim")
layout.separator()
- layout.operator_menu_enum("gpencil.stroke_separate", "mode", text="Separate...")
- layout.operator("gpencil.stroke_split", text="Split")
- layout.operator("gpencil.stroke_merge", text="Merge")
- op = layout.operator("gpencil.stroke_cyclical_set", text="Close")
- op.type = 'CLOSE'
- op.geometry = True
layout.operator_menu_enum("gpencil.stroke_join", "type", text="Join...")
- layout.operator("gpencil.stroke_flip", text="Flip Direction")
layout.separator()
@@ -4551,14 +4493,35 @@ class VIEW3D_MT_edit_gpencil(Menu):
layout.separator()
# Convert
+ op = layout.operator("gpencil.stroke_cyclical_set", text="Close")
+ op.type = 'CLOSE'
+ op.geometry = True
layout.operator("gpencil.stroke_cyclical_set", text="Toggle Cyclic").type = 'TOGGLE'
layout.operator_menu_enum("gpencil.stroke_caps_set", text="Toggle Caps...", property="type")
+ layout.operator("gpencil.stroke_flip", text="Switch Direction")
+
+
+class VIEW3D_MT_edit_gpencil_point(Menu):
+ bl_label = "Point"
+
+ def draw(self, _context):
+ layout = self.layout
+
+ layout.operator("gpencil.extrude_move", text="Extrude Points")
layout.separator()
- # Remove
- layout.menu("GPENCIL_MT_cleanup")
- layout.menu("VIEW3D_MT_edit_gpencil_delete")
+ layout.operator("gpencil.stroke_smooth", text="Smooth Points").only_selected = True
+
+ layout.separator()
+
+ layout.operator("gpencil.stroke_merge", text="Merge Points")
+
+ # TODO: add new RIP operator
+
+ layout.separator()
+
+ layout.menu("VIEW3D_MT_gpencil_vertex_group")
class VIEW3D_MT_weight_gpencil(Menu):
@@ -4571,10 +4534,12 @@ class VIEW3D_MT_weight_gpencil(Menu):
layout.operator("gpencil.vertex_group_normalize", text="Normalize")
layout.separator()
+
layout.operator("gpencil.vertex_group_invert", text="Invert")
layout.operator("gpencil.vertex_group_smooth", text="Smooth")
layout.separator()
+
layout.menu("VIEW3D_MT_gpencil_autoweights")
@@ -4590,12 +4555,17 @@ class VIEW3D_MT_gpencil_animation(Menu):
layout = self.layout
layout.operator("gpencil.blank_frame_add")
- layout.operator("gpencil.active_frames_delete_all", text="Delete Frame(s)")
layout.separator()
+
layout.operator("gpencil.frame_duplicate", text="Duplicate Active Frame")
layout.operator("gpencil.frame_duplicate", text="Duplicate All Layers").mode = 'ALL'
+ layout.separator()
+
+ layout.operator("gpencil.delete", text="Delete Active Frame").type = 'FRAME'
+ layout.operator("gpencil.active_frames_delete_all", text="Delete All Active Frames")
+
class VIEW3D_MT_edit_gpencil_transform(Menu):
bl_label = "Transform"
@@ -4615,14 +4585,17 @@ class VIEW3D_MT_edit_gpencil_transform(Menu):
layout.operator("transform.transform", text="Shrink Fatten").mode = 'GPENCIL_SHRINKFATTEN'
-class VIEW3D_MT_edit_gpencil_interpolate(Menu):
- bl_label = "Interpolate"
+ layout.operator("gpencil.interpolate", text="Interpolate")
+ layout.operator("gpencil.interpolate_sequence", text="Sequence")
+
+class VIEW3D_MT_edit_gpencil_showhide(Menu):
+ bl_label = "Show/hide"
def draw(self, _context):
layout = self.layout
- layout.operator("gpencil.interpolate", text="Interpolate")
- layout.operator("gpencil.interpolate_sequence", text="Sequence")
+ layout.operator("gpencil.hide", text="Hide Active Layer")
+ layout.operator("gpencil.reveal", text="Show All Layers")
class VIEW3D_MT_object_mode_pie(Menu):
@@ -5801,23 +5774,36 @@ class VIEW3D_PT_overlay_pose(Panel):
row.prop(overlay, "show_xray_bone")
-class VIEW3D_PT_overlay_paint(Panel):
+class VIEW3D_PT_overlay_texture_paint(Panel):
bl_space_type = 'VIEW_3D'
bl_region_type = 'HEADER'
bl_parent_id = 'VIEW3D_PT_overlay'
- bl_label = ""
+ bl_label = "Texture Paint"
@classmethod
def poll(cls, context):
- return context.mode in {'PAINT_WEIGHT', 'PAINT_VERTEX', 'PAINT_TEXTURE'}
+ return context.mode == 'PAINT_TEXTURE'
- def draw_header(self, context):
+ def draw(self, context):
layout = self.layout
- layout.label(text={
- 'PAINT_TEXTURE': "Texture Paint",
- 'PAINT_VERTEX': "Vertex Paint",
- 'PAINT_WEIGHT': "Weight Paint",
- }[context.mode])
+ view = context.space_data
+ overlay = view.overlay
+ display_all = overlay.show_overlays
+
+ col = layout.column()
+ col.active = display_all
+ col.prop(overlay, "texture_paint_mode_opacity")
+
+
+class VIEW3D_PT_overlay_vertex_paint(Panel):
+ bl_space_type = 'VIEW_3D'
+ bl_region_type = 'HEADER'
+ bl_parent_id = 'VIEW3D_PT_overlay'
+ bl_label = "Vertex Paint"
+
+ @classmethod
+ def poll(cls, context):
+ return context.mode == 'PAINT_VERTEX'
def draw(self, context):
layout = self.layout
@@ -5828,22 +5814,37 @@ class VIEW3D_PT_overlay_paint(Panel):
col = layout.column()
col.active = display_all
- col.prop(overlay, {
- 'PAINT_TEXTURE': "texture_paint_mode_opacity",
- 'PAINT_VERTEX': "vertex_paint_mode_opacity",
- 'PAINT_WEIGHT': "weight_paint_mode_opacity",
- }[context.mode], text="Opacity")
+ col.prop(overlay, "vertex_paint_mode_opacity", text="Opacity")
+ col.prop(overlay, "show_paint_wire")
- if context.mode == 'PAINT_WEIGHT':
- row = col.split(factor=0.33)
- row.label(text="Zero Weights")
- sub = row.row()
- sub.prop(context.tool_settings, "vertex_group_user", expand=True)
- col.prop(overlay, "show_wpaint_contours")
+class VIEW3D_PT_overlay_weight_paint(Panel):
+ bl_space_type = 'VIEW_3D'
+ bl_region_type = 'HEADER'
+ bl_parent_id = 'VIEW3D_PT_overlay'
+ bl_label = "Weight Paint"
- if context.mode in {'PAINT_WEIGHT', 'PAINT_VERTEX'}:
- col.prop(overlay, "show_paint_wire")
+ @classmethod
+ def poll(cls, context):
+ return context.mode == 'PAINT_WEIGHT'
+
+ def draw(self, context):
+ layout = self.layout
+ view = context.space_data
+ overlay = view.overlay
+ display_all = overlay.show_overlays
+
+ col = layout.column()
+ col.active = display_all
+
+ col.prop(overlay, "weight_paint_mode_opacity", text="Opacity")
+ row = col.split(factor=0.33)
+ row.label(text="Zero Weights")
+ sub = row.row()
+ sub.prop(context.tool_settings, "vertex_group_user", expand=True)
+
+ col.prop(overlay, "show_wpaint_contours")
+ col.prop(overlay, "show_paint_wire")
class VIEW3D_PT_pivot_point(Panel):
@@ -6306,8 +6307,7 @@ class VIEW3D_MT_gpencil_edit_context_menu(Menu):
if is_3d_view:
layout.menu("GPENCIL_MT_cleanup")
- layout.operator("gpencil.stroke_simplify_fixed", text="Simplify")
- layout.operator("gpencil.stroke_simplify", text="Simplify Adaptive")
+ layout.menu("VIEW3D_MT_gpencil_simplify")
layout.operator("gpencil.stroke_merge", text="Merge")
layout.menu("VIEW3D_MT_edit_gpencil_delete")
@@ -6552,14 +6552,13 @@ classes = (
VIEW3D_MT_object_showhide,
VIEW3D_MT_make_single_user,
VIEW3D_MT_make_links,
- VIEW3D_MT_brush,
VIEW3D_MT_brush_paint_modes,
VIEW3D_MT_paint_vertex,
VIEW3D_MT_hook,
VIEW3D_MT_vertex_group,
+ VIEW3D_MT_gpencil_vertex_group,
VIEW3D_MT_paint_weight,
VIEW3D_MT_sculpt,
- VIEW3D_MT_hide_mask,
VIEW3D_MT_particle,
VIEW3D_MT_particle_context_menu,
VIEW3D_MT_particle_showhide,
@@ -6601,7 +6600,10 @@ classes = (
VIEW3D_MT_paint_gpencil,
VIEW3D_MT_assign_material,
VIEW3D_MT_edit_gpencil,
+ VIEW3D_MT_edit_gpencil_stroke,
+ VIEW3D_MT_edit_gpencil_point,
VIEW3D_MT_edit_gpencil_delete,
+ VIEW3D_MT_edit_gpencil_showhide,
VIEW3D_MT_weight_gpencil,
VIEW3D_MT_gpencil_animation,
VIEW3D_MT_gpencil_simplify,
@@ -6628,7 +6630,6 @@ classes = (
VIEW3D_MT_edit_armature_names,
VIEW3D_MT_edit_armature_delete,
VIEW3D_MT_edit_gpencil_transform,
- VIEW3D_MT_edit_gpencil_interpolate,
VIEW3D_MT_object_mode_pie,
VIEW3D_MT_view_pie,
VIEW3D_MT_transform_gizmo_pie,
@@ -6668,7 +6669,9 @@ classes = (
VIEW3D_PT_overlay_edit_mesh_normals,
VIEW3D_PT_overlay_edit_mesh_freestyle,
VIEW3D_PT_overlay_edit_curve,
- VIEW3D_PT_overlay_paint,
+ VIEW3D_PT_overlay_texture_paint,
+ VIEW3D_PT_overlay_vertex_paint,
+ VIEW3D_PT_overlay_weight_paint,
VIEW3D_PT_overlay_pose,
VIEW3D_PT_overlay_sculpt,
VIEW3D_PT_pivot_point,