[Bf-extensions-cvs] [08f0dad] master: spacebar menu: fix sculpt mode, write in context sensitive gp edit mode

meta-androcto noreply at git.blender.org
Tue Sep 13 17:34:43 CEST 2016


Commit: 08f0dadcddc4f9754984796361b4b527f581c0dc
Author: meta-androcto
Date:   Wed Sep 14 01:34:23 2016 +1000
Branches: master
https://developer.blender.org/rBA08f0dadcddc4f9754984796361b4b527f581c0dc

spacebar menu: fix sculpt mode, write in context sensitive gp edit mode

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

M	space_view3d_spacebar_menu.py

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

diff --git a/space_view3d_spacebar_menu.py b/space_view3d_spacebar_menu.py
index ce7826f..f09a4cd 100644
--- a/space_view3d_spacebar_menu.py
+++ b/space_view3d_spacebar_menu.py
@@ -20,7 +20,7 @@
 bl_info = {
     "name": "Dynamic Context Menu",
     "author": "meta-androcto",
-    "version": (1, 8, 2),
+    "version": (1, 8, 3),
     "blender": (2, 77, 0),
     "location": "View3D > Spacebar",
     "description": "Object Mode Context Sensitive Spacebar Menu",
@@ -64,6 +64,8 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
+            if context.gpencil_data and context.gpencil_data.use_stroke_edit_mode:
+                layout.menu("VIEW3D_MT_Edit_Gpencil", icon='GREASEPENCIL')
 
 # Mesh Object Mode #
         if obj and obj.type == 'MESH' and obj.mode in {'OBJECT'}:
@@ -84,6 +86,8 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.menu("VIEW3D_MT_GroupMenu", icon='GROUP')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_object_specials", text="Specials", icon='SOLO_OFF')
+            if context.gpencil_data and context.gpencil_data.use_stroke_edit_mode:
+                layout.menu("VIEW3D_MT_Edit_Gpencil", icon='GREASEPENCIL')
             layout.menu("VIEW3D_MT_Camera_Options", icon='OUTLINER_OB_CAMERA')
             layout.operator_menu_enum("object.modifier_add", "type", icon='MODIFIER')
             UseSeparator(self, context)
@@ -95,6 +99,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
 
+
 # Mesh Edit Mode #
         if obj and obj.type == 'MESH' and obj.mode in {'EDIT'}:
             layout.operator("wm.search_menu", text="Search", icon='VIEWZOOM')
@@ -221,8 +226,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.operator("object.delete", text="Delete Object", icon='X_VEC')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Edit Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -252,8 +256,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
                             icon='X_VEC')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Object Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -284,8 +287,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.operator("object.delete", text="Delete Object", icon='X_VEC')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Edit Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -315,8 +317,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
                             icon='CANCEL')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Object Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -346,8 +347,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.operator("object.delete", text="Delete Object", icon='X_VEC')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Edit Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -376,8 +376,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
                             icon='CANCEL')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Object Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -609,8 +608,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.operator("object.delete", text="Delete Object", icon='X_VEC')
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Edit Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -636,8 +634,7 @@ class VIEW3D_MT_Space_Dynamic_Menu(Menu):
             layout.operator("lattice.make_regular")
             UseSeparator(self, context)
             layout.menu("VIEW3D_MT_UndoS", icon='ARROW_LEFTRIGHT')
-            layout.operator("object.editmode_toggle", text="Enter Object Mode",
-                            icon='OBJECT_DATA')
+            layout.menu("VIEW3D_MT_Object_Interactive_Other", icon='OBJECT_DATA')
             UseSeparator(self, context)
             layout.operator("view3d.toolshelf", icon='MENU_PANEL')
             layout.operator("view3d.properties", icon='MENU_PANEL')
@@ -978,13 +975,17 @@ class InteractiveMode(Menu):
     bl_description = "Menu of objects interactive modes (Window Types)"
 
     def draw(self, context):
-        self.layout.operator(SetObjectMode.bl_idname, text="Object", icon="OBJECT_DATAMODE").mode = "OBJECT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Edit", icon="EDITMODE_HLT").mode = "EDIT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Sculpt", icon="SCULPTMODE_HLT").mode = "SCULPT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Vertex Paint", icon="VPAINT_HLT").mode = "VERTEX_PAINT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Weight Paint", icon="WPAINT_HLT").mode = "WEIGHT_PAINT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Texture Paint", icon="TPAINT_HLT").mode = "TEXTURE_PAINT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Particle Edit", icon="PARTICLEMODE").mode = "PARTICLE_EDIT"
+        layout = self.layout
+
+        layout.operator(SetObjectMode.bl_idname, text="Object", icon="OBJECT_DATAMODE").mode = "OBJECT"
+        layout.operator(SetObjectMode.bl_idname, text="Edit", icon="EDITMODE_HLT").mode = "EDIT"
+        layout.operator(SetObjectMode.bl_idname, text="Sculpt", icon="SCULPTMODE_HLT").mode = "SCULPT"
+        layout.operator(SetObjectMode.bl_idname, text="Vertex Paint", icon="VPAINT_HLT").mode = "VERTEX_PAINT"
+        layout.operator(SetObjectMode.bl_idname, text="Weight Paint", icon="WPAINT_HLT").mode = "WEIGHT_PAINT"
+        layout.operator(SetObjectMode.bl_idname, text="Texture Paint", icon="TPAINT_HLT").mode = "TEXTURE_PAINT"
+        layout.operator(SetObjectMode.bl_idname, text="Particle Edit", icon="PARTICLEMODE").mode = "PARTICLE_EDIT"
+        if context.gpencil_data:
+            layout.operator("view3d.interactive_mode_grease_pencil", icon="GREASEPENCIL")
 
 
 # ********** Object Armature Interactive Mode **********
@@ -994,16 +995,102 @@ class InteractiveModeArmature(Menu):
     bl_description = "Menu of objects interactive mode"
 
     def draw(self, context):
-        self.layout.operator(SetObjectMode.bl_idname, text="Object", icon="OBJECT_DATAMODE").mode = "OBJECT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Edit", icon="EDITMODE_HLT").mode = "EDIT"
-        self.layout.operator(SetObjectMode.bl_idname, text="Pose", icon="POSE_HLT").mode = "POSE"
+        layout = self.layout
+
+        layout.operator(SetObjectMode.bl_idname, text="Object", icon="OBJECT_DATAMODE").mode = "OBJECT"
+        layout.operator(SetObjectMode.bl_idname, text="Edit", icon="EDITMODE_HLT").mode = "EDIT"
+        layout.operator(SetObjectMode.bl_idname, text="Pose", icon="POSE_HLT").mode = "POSE"
+        if context.gpencil_data:
+            layout.operator("view3d.interactive_mode_grease_pencil", icon="GREASEPENCIL")
+
+# ********** Interactive Mode Other **********
+class InteractiveModeOther(Menu):
+    bl_idname = "VIEW3D_MT_Object_Interactive_Other"
+    bl_label = "Interactive Mode"
+    bl_description = "Menu of objects interactive mode"
+
+    def draw(self, context):
+        layout = self.layout
+        layout.operator("object.editmode_toggle", text="Edit/Object Toggle",
+                        icon='OBJECT_DATA')
+        if context.gpencil_data:
+     

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-extensions-cvs mailing list