Commit: b94eaf041fc00fafb1c3ea8b9722be280f37b3be
Author: Campbell Barton
Date:   Sun Jun 15 16:22:12 2014 +1000
https://developer.blender.org/rBb94eaf041fc00fafb1c3ea8b9722be280f37b3be

Minor changes to WM_OT_context_operator_pie_enum

- dont eval("bpy.ops. ... ")
- split the operator name and property into 2 properties.

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

M       release/scripts/startup/bl_operators/wm.py
M       source/blender/editors/object/object_ops.c

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

diff --git a/release/scripts/startup/bl_operators/wm.py 
b/release/scripts/startup/bl_operators/wm.py
index ff832d9..885254a 100644
--- a/release/scripts/startup/bl_operators/wm.py
+++ b/release/scripts/startup/bl_operators/wm.py
@@ -533,7 +533,12 @@ class WM_OT_context_operator_pie_enum(Operator):
     bl_idname = "wm.context_operator_pie_enum"
     bl_label = "Operator Enum Pie"
     bl_options = {'UNDO', 'INTERNAL'}
-    data_path = rna_path_prop
+    name = StringProperty(
+            "Operator Name",
+            )
+    property = StringProperty(
+            "Property Name",
+            )
     title = StringProperty(
             name="Title",
             description="Pie Menu Title",
@@ -541,14 +546,12 @@ class WM_OT_context_operator_pie_enum(Operator):
             )
 
     def invoke(self, context, event):
-        data_path = self.data_path
-
-        value_path, prop_string = data_path.rsplit(".", 1)
-        op = eval("bpy.ops.%s" % value_path)
+        op_idname = self.name
+        property = self.property
 
         def draw_cb(self, context):
             layout = self.layout
-            layout.operator_enum(op.idname_py(), prop_string)
+            layout.operator_enum(op_idname, property)
 
         context.window_manager.pie_menu(draw_func=draw_cb, title=self.title, 
event=event)
 
diff --git a/source/blender/editors/object/object_ops.c 
b/source/blender/editors/object/object_ops.c
index 3bafbbd..2f95019 100644
--- a/source/blender/editors/object/object_ops.c
+++ b/source/blender/editors/object/object_ops.c
@@ -290,7 +290,8 @@ void ED_keymap_object(wmKeyConfig *keyconf)
        keymap = WM_keymap_find(keyconf, "Object Non-modal", 0, 0);
 
        kmi = WM_keymap_add_item(keymap, "WM_OT_context_operator_pie_enum", 
TABKEY, KM_PRESS, 0, 0);
-       RNA_string_set(kmi->ptr, "data_path", "object.mode_set.mode");
+       RNA_string_set(kmi->ptr, "name", "OBJECT_OT_mode_set");
+       RNA_string_set(kmi->ptr, "property", "mode");
        RNA_string_set(kmi->ptr, "title", "Object Mode");
 
 #if 0

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to