[Bf-blender-cvs] [102fcba8558] master: Revert "Fix T72064, T72158: weight paint shows X/Y/Z symmetry options that don't work"

Brecht Van Lommel noreply at git.blender.org
Thu Dec 12 13:53:22 CET 2019


Commit: 102fcba8558152a0c644610016fbf6567060a257
Author: Brecht Van Lommel
Date:   Thu Dec 12 07:19:59 2019 +0100
Branches: master
https://developer.blender.org/rB102fcba8558152a0c644610016fbf6567060a257

Revert "Fix T72064, T72158: weight paint shows X/Y/Z symmetry options that don't work"

It seems it does work along multiple axes in some cases, but not at all. So
restored the UI for now, waiting for a better fix.

This reverts commit 9569425b027cdb1c80e407697971f42fbee42388.

===================================================================

M	release/scripts/startup/bl_ui/space_view3d.py
M	release/scripts/startup/bl_ui/space_view3d_toolbar.py

===================================================================

diff --git a/release/scripts/startup/bl_ui/space_view3d.py b/release/scripts/startup/bl_ui/space_view3d.py
index 0c3d9ec7524..a1967d63d2e 100644
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@ -140,8 +140,12 @@ class VIEW3D_HT_tool_header(Header):
             _row, sub = row_for_mirror()
             sub.prop(context.object.pose, "use_mirror_x", text="X", toggle=True)
         elif mode_string == 'PAINT_WEIGHT':
-            _row, sub = row_for_mirror()
-            sub.prop(context.object.data, "use_mirror_x", text="X", toggle=True)
+            row, sub = row_for_mirror()
+            wpaint = context.tool_settings.weight_paint
+            sub.prop(wpaint, "use_symmetry_x", text="X", toggle=True)
+            sub.prop(wpaint, "use_symmetry_y", text="Y", toggle=True)
+            sub.prop(wpaint, "use_symmetry_z", text="Z", toggle=True)
+            row.popover(panel="VIEW3D_PT_tools_weightpaint_symmetry_for_topbar", text="")
         elif mode_string == 'SCULPT':
             row, sub = row_for_mirror()
             sculpt = context.tool_settings.sculpt
diff --git a/release/scripts/startup/bl_ui/space_view3d_toolbar.py b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
index 70904111b10..718365ec99d 100644
--- a/release/scripts/startup/bl_ui/space_view3d_toolbar.py
+++ b/release/scripts/startup/bl_ui/space_view3d_toolbar.py
@@ -1470,6 +1470,32 @@ class VIEW3D_PT_tools_brush_display_custom_icon(Panel, View3DPaintPanel):
 # ********** default tools for weight-paint ****************
 
 
+# TODO, move to space_view3d.py
+class VIEW3D_PT_tools_weightpaint_symmetry(Panel, View3DPaintPanel):
+    bl_context = ".weightpaint"
+    bl_options = {'DEFAULT_CLOSED'}
+    bl_label = "Symmetry"
+
+    @classmethod
+    def poll(cls, context):
+        # When used in the tool header, this is explicitly included next to the XYZ symmetry buttons.
+        return (context.region.type != 'TOOL_HEADER')
+
+    def draw(self, context):
+        layout = self.layout
+        tool_settings = context.tool_settings
+        wpaint = tool_settings.weight_paint
+        draw_vpaint_symmetry(layout, wpaint)
+
+
+class VIEW3D_PT_tools_weightpaint_symmetry_for_topbar(Panel):
+    bl_space_type = 'TOPBAR'
+    bl_region_type = 'HEADER'
+    bl_label = "Symmetry"
+
+    draw = VIEW3D_PT_tools_weightpaint_symmetry.draw
+
+
 # TODO, move to space_view3d.py
 class VIEW3D_PT_tools_weightpaint_options(Panel, View3DPaintPanel):
     bl_context = ".weightpaint"
@@ -2256,6 +2282,8 @@ classes = (
     VIEW3D_PT_sculpt_options,
     VIEW3D_PT_sculpt_options_unified,
     VIEW3D_PT_sculpt_options_gravity,
+    VIEW3D_PT_tools_weightpaint_symmetry,
+    VIEW3D_PT_tools_weightpaint_symmetry_for_topbar,
     VIEW3D_PT_tools_weightpaint_options,
     VIEW3D_PT_tools_weightpaint_options_unified,
     VIEW3D_PT_tools_vertexpaint_symmetry,



More information about the Bf-blender-cvs mailing list