Revision: 26523
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26523
Author:   theeth
Date:     2010-02-01 19:26:45 +0100 (Mon, 01 Feb 2010)

Log Message:
-----------
Remove NO_CONTEXT flag from enum when copying operator properties to the 
operator itself.

Modified Paths:
--------------
    trunk/blender/source/blender/windowmanager/WM_api.h
    trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
    trunk/blender/source/blender/windowmanager/intern/wm_keymap.c
    trunk/blender/source/blender/windowmanager/intern/wm_operators.c

Modified: trunk/blender/source/blender/windowmanager/WM_api.h
===================================================================
--- trunk/blender/source/blender/windowmanager/WM_api.h 2010-02-01 18:23:24 UTC 
(rev 26522)
+++ trunk/blender/source/blender/windowmanager/WM_api.h 2010-02-01 18:26:45 UTC 
(rev 26523)
@@ -217,7 +217,7 @@
 int                    WM_operator_call_py(struct bContext *C, struct 
wmOperatorType *ot, int context, struct PointerRNA *properties, struct 
ReportList *reports);
 
 void           WM_operator_properties_alloc(struct PointerRNA **ptr, struct 
IDProperty **properties, const char *opstring); /* used for keymap and macro 
items */
-void           WM_operator_properties_sanitize(struct PointerRNA *ptr); /* 
make props not context sensitive */
+void           WM_operator_properties_sanitize(struct PointerRNA *ptr, int 
val); /* make props context sensitive or not */
 void           WM_operator_properties_create(struct PointerRNA *ptr, const 
char *opstring);
 void           WM_operator_properties_create_ptr(struct PointerRNA *ptr, 
struct wmOperatorType *ot);
 void           WM_operator_properties_free(struct PointerRNA *ptr);

Modified: trunk/blender/source/blender/windowmanager/intern/wm_event_system.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_event_system.c 
2010-02-01 18:23:24 UTC (rev 26522)
+++ trunk/blender/source/blender/windowmanager/intern/wm_event_system.c 
2010-02-01 18:26:45 UTC (rev 26523)
@@ -512,6 +512,8 @@
                        motherop= NULL;
        }
        
+       WM_operator_properties_sanitize(op->ptr, 0);
+
        return op;
 }
 

Modified: trunk/blender/source/blender/windowmanager/intern/wm_keymap.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_keymap.c       
2010-02-01 18:23:24 UTC (rev 26522)
+++ trunk/blender/source/blender/windowmanager/intern/wm_keymap.c       
2010-02-01 18:26:45 UTC (rev 26523)
@@ -60,7 +60,7 @@
 static void keymap_properties_set(wmKeyMapItem *kmi)
 {
        WM_operator_properties_alloc(&(kmi->ptr), &(kmi->properties), 
kmi->idname);
-       WM_operator_properties_sanitize(kmi->ptr);
+       WM_operator_properties_sanitize(kmi->ptr, 1);
 }
 
 void WM_keymap_properties_reset(wmKeyMapItem *kmi)

Modified: trunk/blender/source/blender/windowmanager/intern/wm_operators.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_operators.c    
2010-02-01 18:23:24 UTC (rev 26522)
+++ trunk/blender/source/blender/windowmanager/intern/wm_operators.c    
2010-02-01 18:26:45 UTC (rev 26523)
@@ -391,7 +391,7 @@
 
        /* do this on first use, since operatordefinitions might have been not 
done yet */
        WM_operator_properties_alloc(&(otmacro->ptr), &(otmacro->properties), 
idname);
-       WM_operator_properties_sanitize(otmacro->ptr);
+       WM_operator_properties_sanitize(otmacro->ptr, 1);
        
        BLI_addtail(&ot->macro, otmacro);
 
@@ -593,12 +593,15 @@
 
 }
 
-void WM_operator_properties_sanitize(PointerRNA *ptr)
+void WM_operator_properties_sanitize(PointerRNA *ptr, int val)
 {
        RNA_STRUCT_BEGIN(ptr, prop) {
                switch(RNA_property_type(prop)) {
                case PROP_ENUM:
-                       RNA_def_property_flag(prop, PROP_ENUM_NO_CONTEXT);
+                       if (val)
+                               RNA_def_property_flag(prop, 
PROP_ENUM_NO_CONTEXT);
+                       else
+                               RNA_def_property_clear_flag(prop, 
PROP_ENUM_NO_CONTEXT);
                        break;
                case PROP_POINTER:
                        {
@@ -607,7 +610,7 @@
                                /* recurse into operator properties */
                                if (RNA_struct_is_a(ptype, 
&RNA_OperatorProperties)) {
                                        PointerRNA opptr = 
RNA_property_pointer_get(ptr, prop);
-                                       WM_operator_properties_sanitize(&opptr);
+                                       WM_operator_properties_sanitize(&opptr, 
val);
                                }
                                break;
                        }


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

Reply via email to