rna pointer poll function, not used yet.
authorCampbell Barton <ideasman42@gmail.com>
Tue, 3 Aug 2010 05:14:59 +0000 (05:14 +0000)
committerCampbell Barton <ideasman42@gmail.com>
Tue, 3 Aug 2010 05:14:59 +0000 (05:14 +0000)
32 files changed:
source/blender/makesrna/RNA_define.h
source/blender/makesrna/intern/makesrna.c
source/blender/makesrna/intern/rna_actuator.c
source/blender/makesrna/intern/rna_animation.c
source/blender/makesrna/intern/rna_animviz.c
source/blender/makesrna/intern/rna_armature.c
source/blender/makesrna/intern/rna_boid.c
source/blender/makesrna/intern/rna_cloth.c
source/blender/makesrna/intern/rna_context.c
source/blender/makesrna/intern/rna_curve.c
source/blender/makesrna/intern/rna_define.c
source/blender/makesrna/intern/rna_fcurve.c
source/blender/makesrna/intern/rna_internal_types.h
source/blender/makesrna/intern/rna_key.c
source/blender/makesrna/intern/rna_lamp.c
source/blender/makesrna/intern/rna_main.c
source/blender/makesrna/intern/rna_material.c
source/blender/makesrna/intern/rna_mesh.c
source/blender/makesrna/intern/rna_modifier.c
source/blender/makesrna/intern/rna_object.c
source/blender/makesrna/intern/rna_particle.c
source/blender/makesrna/intern/rna_pose.c
source/blender/makesrna/intern/rna_rna.c
source/blender/makesrna/intern/rna_scene.c
source/blender/makesrna/intern/rna_screen.c
source/blender/makesrna/intern/rna_sculpt_paint.c
source/blender/makesrna/intern/rna_sensor.c
source/blender/makesrna/intern/rna_space.c
source/blender/makesrna/intern/rna_texture.c
source/blender/makesrna/intern/rna_userdef.c
source/blender/makesrna/intern/rna_wm.c
source/blender/makesrna/intern/rna_world.c

index 88543e4add2dc6d6e4ac424db370883c171f58df..9aadd8900e5f6242a5789bda92c80ce442553f77 100644 (file)
@@ -163,7 +163,7 @@ void RNA_def_property_int_funcs(PropertyRNA *prop, const char *get, const char *
 void RNA_def_property_float_funcs(PropertyRNA *prop, const char *get, const char *set, const char *range);
 void RNA_def_property_enum_funcs(PropertyRNA *prop, const char *get, const char *set, const char *item);
 void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const char *length, const char *set);
-void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *typef);
+void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *typef, const char *poll);
 void RNA_def_property_collection_funcs(PropertyRNA *prop, const char *begin, const char *next, const char *end, const char *get, const char *length, const char *lookupint, const char *lookupstring);
 void RNA_def_property_srna(PropertyRNA *prop, const char *type);
 
index 35b2eff9c62bb72846e2ead976378a9425a0701c..af0faf5a1656beb0b41408fa8767cc61cf5ac50b 100644 (file)
@@ -2088,7 +2088,7 @@ static void rna_generate_property(FILE *f, StructRNA *srna, const char *nest, Pr
                        }
                        case PROP_POINTER: {
                                PointerPropertyRNA *pprop= (PointerPropertyRNA*)prop;
-                               fprintf(f, "\t%s, %s, %s, ", rna_function_string(pprop->get), rna_function_string(pprop->set), rna_function_string(pprop->typef));
+                               fprintf(f, "\t%s, %s, %s, %s,", rna_function_string(pprop->get), rna_function_string(pprop->set), rna_function_string(pprop->typef), rna_function_string(pprop->poll));
                                if(pprop->type) fprintf(f, "&RNA_%s\n", (char*)pprop->type);
                                else fprintf(f, "NULL\n");
                                break;
index fecf66f533ea7e2e176eba5b34454105845363fb..f5145d862703538cbbf877195e18843bd5f32ecc 100644 (file)
@@ -522,7 +522,7 @@ static void rna_def_action_actuator(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Action", "");
         /* note: custom set function is ONLY to avoid rna setting a user for this. */
-        RNA_def_property_pointer_funcs(prop, NULL, "rna_Actuator_action_action_set", NULL);
+        RNA_def_property_pointer_funcs(prop, NULL, "rna_Actuator_action_action_set", NULL, NULL);
        RNA_def_property_update(prop, NC_LOGIC, NULL);
 
        prop= RNA_def_property(srna, "continue_last_frame", PROP_BOOLEAN, PROP_NONE);
@@ -1266,7 +1266,7 @@ static void rna_def_edit_object_actuator(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Mesh", "Replace the existing, when left blank 'Phys' will remake the existing physics mesh");
        /* note: custom set function is ONLY to avoid rna setting a user for this. */
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Actuator_editobject_mesh_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Actuator_editobject_mesh_set", NULL, NULL);
        RNA_def_property_update(prop, NC_LOGIC, NULL);
 
        prop= RNA_def_property(srna, "time", PROP_INT, PROP_NONE);
@@ -1734,7 +1734,7 @@ static void rna_def_shape_action_actuator(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Action", "");
         /* note: custom set function is ONLY to avoid rna setting a user for this. */
-        RNA_def_property_pointer_funcs(prop, NULL, "rna_Actuator_action_action_set", NULL);
+        RNA_def_property_pointer_funcs(prop, NULL, "rna_Actuator_action_action_set", NULL, NULL);
        RNA_def_property_update(prop, NC_LOGIC, NULL);
 
        prop= RNA_def_property(srna, "continue_last_frame", PROP_BOOLEAN, PROP_NONE);
index e0cf4f912b14f9c01ac4a0dac1058f102c17f874..f4b6d7ded0ff3e0098ea5ae12fa63313de1c344e 100644 (file)
@@ -489,7 +489,7 @@ static void rna_def_keyingset_path(BlenderRNA *brna)
        RNA_def_property_struct_type(prop, "ID");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_editable_func(prop, "rna_ksPath_id_editable");
-       RNA_def_property_pointer_funcs(prop, NULL, NULL, "rna_ksPath_id_typef");
+       RNA_def_property_pointer_funcs(prop, NULL, NULL, "rna_ksPath_id_typef", NULL);
        RNA_def_property_ui_text(prop, "ID-Block", "ID-Block that keyframes for Keying Set should be added to (for Absolute Keying Sets only)");
        
        prop= RNA_def_property(srna, "id_type", PROP_ENUM, PROP_NONE);
@@ -595,7 +595,7 @@ static void rna_def_keyingset(BlenderRNA *brna)
        /* KeyingSetInfo (Type Info) for Builtin Sets only  */
        prop= RNA_def_property(srna, "type_info", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "KeyingSetInfo");
-       RNA_def_property_pointer_funcs(prop, "rna_KeyingSet_typeinfo_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_KeyingSet_typeinfo_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Type Info", "Callback function defines for built-in Keying Sets");
        
        /* Paths */
@@ -609,7 +609,7 @@ static void rna_def_keyingset(BlenderRNA *brna)
        RNA_def_property_struct_type(prop, "KeyingSetPath");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_editable_func(prop, "rna_KeyingSet_active_ksPath_editable");
-       RNA_def_property_pointer_funcs(prop, "rna_KeyingSet_active_ksPath_get", "rna_KeyingSet_active_ksPath_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_KeyingSet_active_ksPath_get", "rna_KeyingSet_active_ksPath_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Keying Set", "Active Keying Set used to insert/delete keyframes");
        
        prop= RNA_def_property(srna, "active_path_index", PROP_INT, PROP_NONE);
@@ -658,7 +658,7 @@ void rna_def_animdata(BlenderRNA *brna)
        
        /* Active Action */
        prop= RNA_def_property(srna, "action", PROP_POINTER, PROP_NONE);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_AnimData_action_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_AnimData_action_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE); /* this flag as well as the dynamic test must be defined for this to be editable... */
        RNA_def_property_editable_func(prop, "rna_AnimData_action_editable");
        RNA_def_property_ui_text(prop, "Action", "Active Action for this datablock");
index a85f19e7be45cfc2311047c2eee65fe173b01322..1b049ced767597ab494b61693bf139a284cf82a3 100644 (file)
@@ -328,14 +328,14 @@ static void rna_def_animviz(BlenderRNA *brna)
        prop= RNA_def_property(srna, "onion_skinning", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "AnimVizOnionSkinning");
-       RNA_def_property_pointer_funcs(prop, "rna_AnimViz_onion_skinning_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_AnimViz_onion_skinning_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Onion Skinning", "Onion Skinning (ghosting) settings for visualisation");
        
        /* motion path settings (nested struct) */
        prop= RNA_def_property(srna, "motion_paths", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "AnimVizMotionPaths");
-       RNA_def_property_pointer_funcs(prop, "rna_AnimViz_motion_paths_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_AnimViz_motion_paths_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Motion Paths", "Motion Path settings for visualisation");
 }
 
index 437a22b66927e0bd3513268049d4a99eef192f3e..91a78f1a01a5143f98c22d2dbb291b39d50f5f09 100644 (file)
@@ -580,7 +580,7 @@ static void rna_def_edit_bone(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "parent", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "EditBone");
-       RNA_def_property_pointer_funcs(prop, "rna_EditBone_parent_get", "rna_EditBone_parent_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_EditBone_parent_get", "rna_EditBone_parent_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Parent", "Parent edit bone (in same Armature)");
        RNA_def_property_update(prop, 0, "rna_Armature_redraw_data");
@@ -664,7 +664,7 @@ static void rna_def_armature_bones(BlenderRNA *brna, PropertyRNA *cprop)
        RNA_def_property_pointer_sdna(prop, NULL, "act_bone");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Bone", "Armatures active bone");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Armature_act_bone_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Armature_act_bone_set", NULL, NULL);
 
        /* todo, redraw */
 //             RNA_def_property_collection_active(prop, prop_act);
@@ -690,7 +690,7 @@ static void rna_def_armature_edit_bones(BlenderRNA *brna, PropertyRNA *cprop)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active EditBone", "Armatures active edit bone");
        //RNA_def_property_update(prop, 0, "rna_Armature_act_editbone_update");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Armature_act_edit_bone_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Armature_act_edit_bone_set", NULL, NULL);
 
        /* todo, redraw */
 //             RNA_def_property_collection_active(prop, prop_act);
index c4ed00794b0eedf302d1613de18d233bc4957a46..5bc61eaa89954b0da90c4ce858938395b790fd00 100644 (file)
@@ -436,7 +436,7 @@ static void rna_def_boidstate(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_boid_rule", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "BoidRule");
-       RNA_def_property_pointer_funcs(prop, "rna_BoidState_active_boid_rule_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_BoidState_active_boid_rule_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Boid Rule", "");
 
        prop= RNA_def_property(srna, "active_boid_rule_index", PROP_INT, PROP_UNSIGNED);
@@ -488,7 +488,7 @@ static void rna_def_boid_settings(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_boid_state", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "BoidRule");
-       RNA_def_property_pointer_funcs(prop, "rna_BoidSettings_active_boid_state_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_BoidSettings_active_boid_state_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Boid Rule", "");
 
        prop= RNA_def_property(srna, "active_boid_state_index", PROP_INT, PROP_UNSIGNED);
index 3518044a6018bfe1619671f59b0e52e26b238540..58ecb78d3b8096516061b926569ef3c3b1de5e87 100644 (file)
@@ -353,7 +353,7 @@ static void rna_def_cloth_sim_settings(BlenderRNA *brna)
        prop= RNA_def_property(srna, "rest_shape_key", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "ShapeKey");
-       RNA_def_property_pointer_funcs(prop, "rna_ClothSettings_rest_shape_key_get", "rna_ClothSettings_rest_shape_key_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_ClothSettings_rest_shape_key_get", "rna_ClothSettings_rest_shape_key_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Rest Shade Key", "Shape key to use the rest spring lengths from");
        RNA_def_property_update(prop, 0, "rna_cloth_update");
 
index 9ee2ca1a322885da0fdab79651bcc1cabfd5c73e..bb886f39f1cbfc7f45b89f27ecf86df31bf812a7 100644 (file)
@@ -148,58 +148,58 @@ void RNA_def_context(BlenderRNA *brna)
        prop= RNA_def_property(srna, "manager", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "WindowManager");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_manager_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_manager_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "window", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Window");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_window_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_window_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "screen", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Screen");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_screen_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_screen_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "area", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Area");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_area_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_area_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "space_data", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Space");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_space_data_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_space_data_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "region", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Region");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_region_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_region_get", NULL, NULL, NULL);
 
        /*prop= RNA_def_property(srna, "region_data", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "RegionData");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_region_data_get", NULL, NULL);*/
+       RNA_def_property_pointer_funcs(prop, "rna_Context_region_data_get", NULL, NULL, NULL);*/
 
        /* Data */
        prop= RNA_def_property(srna, "main", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Main");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_main_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_main_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "scene", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Scene");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_scene_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_scene_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "tool_settings", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "ToolSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_tool_settings_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_tool_settings_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "user_preferences", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "UserPreferences");
-       RNA_def_property_pointer_funcs(prop, "rna_Context_user_preferences_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Context_user_preferences_get", NULL, NULL, NULL);
 
        prop= RNA_def_property(srna, "mode", PROP_ENUM, PROP_NONE);
        RNA_def_property_enum_items(prop, mode_items);
index 335f59190042bf897eb74f50777af4f51bd67c77..878657e4f970bf6579e53f8b2c2ddc2a3d03351d 100644 (file)
@@ -1024,7 +1024,7 @@ static void rna_def_curve_splines(BlenderRNA *brna, PropertyRNA *cprop)
 
        prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Object");
-       RNA_def_property_pointer_funcs(prop, "rna_Curve_active_spline_get", "rna_Curve_active_spline_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Curve_active_spline_get", "rna_Curve_active_spline_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Spline", "Active curve spline");
        /* Could call: ED_base_object_activate(C, scene->basact);
@@ -1144,7 +1144,7 @@ static void rna_def_curve(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Bevel Object", "Curve object name that defines the bevel shape");
        RNA_def_property_update(prop, 0, "rna_Curve_update_deps");
-       RNA_def_property_pointer_funcs(prop, "rna_Curve_bevelObject_get", "rna_Curve_bevelObject_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Curve_bevelObject_get", "rna_Curve_bevelObject_set", NULL, NULL);
 
        prop= RNA_def_property(srna, "taper_object", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Object");
@@ -1152,7 +1152,7 @@ static void rna_def_curve(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Taper Object", "Curve object name that defines the taper (width)");
        RNA_def_property_update(prop, 0, "rna_Curve_update_deps");
-       RNA_def_property_pointer_funcs(prop, "rna_Curve_taperObject_get", "rna_Curve_taperObject_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Curve_taperObject_get", "rna_Curve_taperObject_set", NULL, NULL);
 
        /* Flags */
 
index fbcc3109af4db8af5185cb48f991078d3ae086a9..14e70b8c249a9be9c88d0c4d4e45cec570b36840 100644 (file)
@@ -670,7 +670,7 @@ StructRNA *RNA_def_struct(BlenderRNA *brna, const char *identifier, const char *
 
                if(DefRNA.preprocess) {
                        RNA_def_property_struct_type(prop, "Struct");
-                       RNA_def_property_pointer_funcs(prop, "rna_builtin_type_get", NULL, NULL);
+                       RNA_def_property_pointer_funcs(prop, "rna_builtin_type_get", NULL, NULL, NULL);
                }
                else {
 #ifdef RNA_RUNTIME
@@ -1912,7 +1912,7 @@ void RNA_def_property_string_funcs(PropertyRNA *prop, const char *get, const cha
        }
 }
 
-void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *typef)
+void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const char *set, const char *typef, const char *poll)
 {
        StructRNA *srna= DefRNA.laststruct;
 
@@ -1928,6 +1928,7 @@ void RNA_def_property_pointer_funcs(PropertyRNA *prop, const char *get, const ch
                        if(get) pprop->get= (PropPointerGetFunc)get;
                        if(set) pprop->set= (PropPointerSetFunc)set;
                        if(typef) pprop->typef= (PropPointerTypeFunc)typef;
+                       if(poll) pprop->poll= (PropPointerPollFunc)poll;
                        break;
                }
                default:
index 09f531cf95db6f0781e461eccdf4bd890291692d..5dc75c5cf624863f366cb9d5b567684edc6bcf73 100644 (file)
@@ -989,7 +989,7 @@ static void rna_def_drivertarget(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_editable_func(prop, "rna_DriverTarget_id_editable");
     /* note: custom set function is ONLY to avoid rna setting a user for this. */
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_DriverTarget_id_set", "rna_DriverTarget_id_typef");
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_DriverTarget_id_set", "rna_DriverTarget_id_typef", NULL);
        RNA_def_property_ui_text(prop, "ID", "ID-block that the specific property used can be found from (id_type property must be set first)");
        RNA_def_property_update(prop, 0, "rna_DriverTarget_update_data");
        
@@ -1261,7 +1261,7 @@ static void rna_def_fcurve_modifiers(BlenderRNA *brna, PropertyRNA *cprop)
        /* Collection active property */
        prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "FModifier");
-       RNA_def_property_pointer_funcs(prop, "rna_FCurve_active_modifier_get", "rna_FCurve_active_modifier_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_FCurve_active_modifier_get", "rna_FCurve_active_modifier_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active F-Curve Modifier", "Active F-Curve Modifier");
 
@@ -1359,7 +1359,7 @@ static void rna_def_fcurve(BlenderRNA *brna)
        RNA_def_property_pointer_sdna(prop, NULL, "grp");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Group", "Action Group that this F-Curve belongs to");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_FCurve_group_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_FCurve_group_set", NULL, NULL);
        RNA_def_property_update(prop, NC_ANIMATION, NULL);
 
        /* Path + Array Index */
index 7737d6094bc4d437ca04cfdaf899a2dfaa0ff268..216533a870813f29ef7dc9858ba8cb22657e33ce 100644 (file)
@@ -87,6 +87,7 @@ typedef EnumPropertyItem *(*PropEnumItemFunc)(struct bContext *C, struct Pointer
 typedef PointerRNA (*PropPointerGetFunc)(struct PointerRNA *ptr);
 typedef StructRNA* (*PropPointerTypeFunc)(struct PointerRNA *ptr);
 typedef void (*PropPointerSetFunc)(struct PointerRNA *ptr, const PointerRNA value);
+typedef int (*PropPointerPollFunc)(struct PointerRNA *ptr, const PointerRNA value);
 typedef void (*PropCollectionBeginFunc)(struct CollectionPropertyIterator *iter, struct PointerRNA *ptr);
 typedef void (*PropCollectionNextFunc)(struct CollectionPropertyIterator *iter);
 typedef void (*PropCollectionEndFunc)(struct CollectionPropertyIterator *iter);
@@ -257,6 +258,7 @@ typedef struct PointerPropertyRNA {
        PropPointerGetFunc get;
        PropPointerSetFunc set;
        PropPointerTypeFunc typef;
+       PropPointerPollFunc poll; /* unlike operators, 'set' can still run if poll fails, used for filtering display */
 
        struct StructRNA *type;
 } PointerPropertyRNA;
index 7e9aebeffa4b44a63009268cf15649e4a12bf713..26a101303b10bcd90dbe6e4b2845bed04cceb74c 100644 (file)
@@ -433,7 +433,7 @@ static void rna_def_keyblock(BlenderRNA *brna)
        prop= RNA_def_property(srna, "relative_key", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ShapeKey");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_ShapeKey_relative_key_get", "rna_ShapeKey_relative_key_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_ShapeKey_relative_key_get", "rna_ShapeKey_relative_key_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Relative Key", "Shape used as a relative key");
        RNA_def_property_update(prop, 0, "rna_Key_update_data");
 
index 769d73d9f7904c9ad842b3d235c2b5a543a58e8b..4e2504516ece280921188c48a0b781477ba8fb51 100644 (file)
@@ -741,7 +741,7 @@ static void rna_def_sun_lamp(BlenderRNA *brna)
        prop= RNA_def_property(srna, "sky", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "LampSkySettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Lamp_sky_settings_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Lamp_sky_settings_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Sky Settings", "Sky related settings for sun lamps");
 
        rna_def_lamp_sky_settings(brna);
index 052c9fb345321422c6159726d624a5f2e7c1d26a..a6260791012764acb479022b0c58963c3277b8de 100644 (file)
@@ -345,7 +345,7 @@ void RNA_def_main(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "test", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Test");
-       RNA_def_property_pointer_funcs(prop, "rna_Test_test_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Test_test_get", NULL, NULL, NULL);
 
        RNA_define_verify_sdna(1);
 
index 1c790898ef22d56b55516c46ac562d3d518aa17c..9b4548e0de65b89eacb23b7c815f5129353c6d91 100644 (file)
@@ -1682,13 +1682,13 @@ void RNA_def_material(BlenderRNA *brna)
        prop= RNA_def_property(srna, "raytrace_mirror", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "MaterialRaytraceMirror");
-       RNA_def_property_pointer_funcs(prop, "rna_Material_mirror_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_mirror_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Raytrace Mirror", "Raytraced reflection settings for the material");
 
        prop= RNA_def_property(srna, "raytrace_transparency", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "MaterialRaytraceTransparency");
-       RNA_def_property_pointer_funcs(prop, "rna_Material_transp_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_transp_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Raytrace Transparency", "Raytraced transparency settings for the material");
 
        prop= RNA_def_property(srna, "volume", PROP_POINTER, PROP_NONE);
@@ -1700,25 +1700,25 @@ void RNA_def_material(BlenderRNA *brna)
        prop= RNA_def_property(srna, "halo", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "MaterialHalo");
-       RNA_def_property_pointer_funcs(prop, "rna_Material_halo_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_halo_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Halo", "Halo settings for the material");
 
        prop= RNA_def_property(srna, "subsurface_scattering", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "MaterialSubsurfaceScattering");
-       RNA_def_property_pointer_funcs(prop, "rna_Material_sss_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_sss_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Subsurface Scattering", "Subsurface scattering settings for the material");
 
        prop= RNA_def_property(srna, "strand", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "MaterialStrand");
-       RNA_def_property_pointer_funcs(prop, "rna_Material_strand_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_strand_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Strand", "Strand settings for the material");
        
        prop= RNA_def_property(srna, "physics", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "MaterialPhysics");
-       RNA_def_property_pointer_funcs(prop, "rna_Material_physics_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_physics_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Physics", "Game physics settings");
 
        /* nodetree */
@@ -1735,7 +1735,7 @@ void RNA_def_material(BlenderRNA *brna)
        prop= RNA_def_property(srna, "active_node_material", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Material");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_Material_active_node_material_get", "rna_Material_active_node_material_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Material_active_node_material_get", "rna_Material_active_node_material_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Material", "Active node material");
        RNA_def_property_update(prop, NC_MATERIAL, NULL);
 
@@ -1781,7 +1781,7 @@ void rna_def_mtex_common(StructRNA *srna, const char *begin, const char *activeg
        prop= RNA_def_property(srna, "active_texture", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Texture");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, activeget, activeset, NULL);
+       RNA_def_property_pointer_funcs(prop, activeget, activeset, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Texture", "Active texture slot being displayed");
        RNA_def_property_update(prop, 0, update);
 
index 37d6b2b93de511cfa85e78c8a4cdf7c13fcf229f..cdab225f09ca84484b6267681d76057ab50e1c07 100644 (file)
@@ -581,8 +581,7 @@ static int rna_CustomDataData_numverts(PointerRNA *ptr, int type)
        Mesh *me= (Mesh*)ptr->id.data;
        CustomData *fdata= rna_mesh_fdata(me);
        CustomDataLayer *cdl;
-       int a;
-       size_t b;
+       int a, b;
 
        for(cdl=fdata->layers, a=0; a<fdata->totlayer; cdl++, a++) {
                if(cdl->type == type) {
@@ -979,8 +978,7 @@ static char *rna_CustomDataData_path(PointerRNA *ptr, char *collection, int type
        Mesh *me= (Mesh*)ptr->id.data;
        CustomData *fdata= rna_mesh_fdata(me);
        CustomDataLayer *cdl;
-       int a;
-       size_t b;
+       int a, b;
 
        for(cdl=fdata->layers, a=0; a<fdata->totlayer; cdl++, a++) {
                if(cdl->type == type) {
@@ -1313,7 +1311,7 @@ static void rna_def_mtface(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "image", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "tpage");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_TextureFace_image_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_TextureFace_image_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Image", "");
        RNA_def_property_update(prop, 0, "rna_Mesh_update_data");
@@ -1620,7 +1618,7 @@ static void rna_def_mesh_faces(BlenderRNA *brna, PropertyRNA *cprop)
 
        prop= RNA_def_property(srna, "active_tface", PROP_POINTER, PROP_UNSIGNED);
        RNA_def_property_struct_type(prop, "MeshTextureFace");
-       RNA_def_property_pointer_funcs(prop, "rna_Mesh_active_mtface_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Mesh_active_mtface_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Texture Face", "Active Texture Face");
        RNA_def_property_update(prop, 0, "rna_Mesh_update_data");
 }
@@ -1671,7 +1669,7 @@ static void rna_def_mesh(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_uv_texture", PROP_POINTER, PROP_UNSIGNED);
        RNA_def_property_struct_type(prop, "MeshTextureFaceLayer");
-       RNA_def_property_pointer_funcs(prop, "rna_Mesh_active_uv_texture_get", "rna_Mesh_active_uv_texture_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Mesh_active_uv_texture_get", "rna_Mesh_active_uv_texture_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active UV Texture", "Active UV texture");
        RNA_def_property_update(prop, 0, "rna_Mesh_update_data");
@@ -1683,7 +1681,7 @@ static void rna_def_mesh(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "uv_texture_clone", PROP_POINTER, PROP_UNSIGNED);
        RNA_def_property_struct_type(prop, "MeshTextureFaceLayer");
-       RNA_def_property_pointer_funcs(prop, "rna_Mesh_uv_texture_clone_get", "rna_Mesh_uv_texture_clone_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Mesh_uv_texture_clone_get", "rna_Mesh_uv_texture_clone_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Clone UV Texture", "UV texture to be used as cloning source");
 
@@ -1693,7 +1691,7 @@ static void rna_def_mesh(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "uv_texture_stencil", PROP_POINTER, PROP_UNSIGNED);
        RNA_def_property_struct_type(prop, "MeshTextureFaceLayer");
-       RNA_def_property_pointer_funcs(prop, "rna_Mesh_uv_texture_stencil_get", "rna_Mesh_uv_texture_stencil_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Mesh_uv_texture_stencil_get", "rna_Mesh_uv_texture_stencil_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Mask UV Texture", "UV texture to mask the painted area");
 
@@ -1711,7 +1709,7 @@ static void rna_def_mesh(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_vertex_color", PROP_POINTER, PROP_UNSIGNED);
        RNA_def_property_struct_type(prop, "MeshColorLayer");
-       RNA_def_property_pointer_funcs(prop, "rna_Mesh_active_vertex_color_get", "rna_Mesh_active_vertex_color_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Mesh_active_vertex_color_get", "rna_Mesh_active_vertex_color_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Vertex Color Layer", "Active vertex color layer");
        RNA_def_property_update(prop, 0, "rna_Mesh_update_data");
index 8bd78543abde72c8969030bc7428799ed1602d8d..f9e3506379abf706eb0c47e71028ed63b5278d95 100644 (file)
@@ -659,7 +659,7 @@ static void rna_def_modifier_lattice(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Object", "Lattice object to deform with");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_LatticeModifier_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_LatticeModifier_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -691,7 +691,7 @@ static void rna_def_modifier_curve(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Object", "Curve object to deform with");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_CurveModifier_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_CurveModifier_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -983,7 +983,7 @@ static void rna_def_modifier_armature(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Object", "Armature object to deform with");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArmatureModifier_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArmatureModifier_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -1070,13 +1070,13 @@ static void rna_def_modifier_softbody(BlenderRNA *brna)
        prop= RNA_def_property(srna, "settings", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "SoftBodySettings");
-       RNA_def_property_pointer_funcs(prop, "rna_SoftBodyModifier_settings_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_SoftBodyModifier_settings_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Soft Body Settings", "");
 
        prop= RNA_def_property(srna, "point_cache", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "PointCache");
-       RNA_def_property_pointer_funcs(prop, "rna_SoftBodyModifier_point_cache_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_SoftBodyModifier_point_cache_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Soft Body Point Cache", "");
 }
 
@@ -1098,7 +1098,7 @@ static void rna_def_modifier_boolean(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Object", "Mesh object to use for Boolean operation");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_BooleanModifier_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_BooleanModifier_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -1145,7 +1145,7 @@ static void rna_def_modifier_array(BlenderRNA *brna)
        prop= RNA_def_property(srna, "curve", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "curve_ob");
        RNA_def_property_ui_text(prop, "Curve", "Curve object to fit array length to");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArrayModifier_curve_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArrayModifier_curve_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -1203,13 +1203,13 @@ static void rna_def_modifier_array(BlenderRNA *brna)
        /* Caps */
        prop= RNA_def_property(srna, "start_cap", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Start Cap", "Mesh object to use as a start cap");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArrayModifier_start_cap_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArrayModifier_start_cap_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_update");
 
        prop= RNA_def_property(srna, "end_cap", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "End Cap", "Mesh object to use as an end cap");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArrayModifier_end_cap_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_ArrayModifier_end_cap_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 }
@@ -1384,7 +1384,7 @@ static void rna_def_modifier_uvproject(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Object");
-       RNA_def_property_pointer_funcs(prop, "rna_UVProjector_object_get", "rna_UVProjector_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_UVProjector_object_get", "rna_UVProjector_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_ui_text(prop, "Object", "Object to use as projector transform");
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
@@ -1458,7 +1458,7 @@ static void rna_def_modifier_cast(BlenderRNA *brna)
        
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Object", "Control object: if available, its location determines the center of the effect");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_CastModifier_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_CastModifier_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -1531,7 +1531,7 @@ static void rna_def_modifier_meshdeform(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Object", "Mesh object to deform with");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_MeshDeformModifier_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_MeshDeformModifier_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
        
@@ -1793,7 +1793,7 @@ static void rna_def_modifier_collision(BlenderRNA *brna)
        prop= RNA_def_property(srna, "settings", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "CollisionSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_CollisionModifier_settings_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_CollisionModifier_settings_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Settings", "");
 }
 
@@ -1875,14 +1875,14 @@ static void rna_def_modifier_shrinkwrap(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "target", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Target", "Mesh target to shrink to");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_ShrinkwrapModifier_target_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_ShrinkwrapModifier_target_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
        prop= RNA_def_property(srna, "auxiliary_target", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "auxTarget");
        RNA_def_property_ui_text(prop, "Auxiliary Target", "Additional mesh target to shrink to");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_ShrinkwrapModifier_auxiliary_target_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_ShrinkwrapModifier_auxiliary_target_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
@@ -1986,7 +1986,7 @@ static void rna_def_modifier_mask(BlenderRNA *brna)
        prop= RNA_def_property(srna, "armature", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "ob_arm");
        RNA_def_property_ui_text(prop, "Armature", "Armature to use as source of bones to mask");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_MaskModifier_armature_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_MaskModifier_armature_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
 
index 29666c6ed0459446fb8d8ce8e5a8e7c7e01dbb50..92bda4c5f7403e16c0ad91e21bc5678c315bab3d 100644 (file)
@@ -1096,7 +1096,7 @@ static void rna_def_material_slot(BlenderRNA *brna)
        prop= RNA_def_property(srna, "material", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Material");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_MaterialSlot_material_get", "rna_MaterialSlot_material_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_MaterialSlot_material_get", "rna_MaterialSlot_material_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Material", "Material datablock used by this material slot");
        RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_Object_internal_update");
 
@@ -1346,7 +1346,7 @@ static void rna_def_object_constraints(BlenderRNA *brna, PropertyRNA *cprop)
        /* Collection active property */
        prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Constraint");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_active_constraint_get", "rna_Object_active_constraint_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_active_constraint_get", "rna_Object_active_constraint_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Constraint", "Active Object constraint");
 
@@ -1391,7 +1391,7 @@ static void rna_def_object_modifiers(BlenderRNA *brna, PropertyRNA *cprop)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active EditBone", "Armatures active edit bone");
        //RNA_def_property_update(prop, 0, "rna_Armature_act_editbone_update");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Armature_act_edit_bone_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Armature_act_edit_bone_set", NULL, NULL);
 
        /* todo, redraw */
 //             RNA_def_property_collection_active(prop, prop_act);
@@ -1511,7 +1511,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "data", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ID");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Object_data_set", "rna_Object_data_typef");
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Object_data_set", "rna_Object_data_typef", NULL);
        RNA_def_property_editable_func(prop, "rna_Object_data_editable");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Data", "Object data");
@@ -1551,7 +1551,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        /* parent */
        prop= RNA_def_property(srna, "parent", PROP_POINTER, PROP_NONE);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Object_parent_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Object_parent_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
        RNA_def_property_ui_text(prop, "Parent", "Parent Object");
        RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_Object_dependency_update");
@@ -1606,7 +1606,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_material", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Material");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_active_material_get", "rna_Object_active_material_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_active_material_get", "rna_Object_active_material_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Material", "Active material being displayed");
        RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, "rna_Object_internal_update");
@@ -1760,7 +1760,7 @@ static void rna_def_object(BlenderRNA *brna)
        prop= RNA_def_property(srna, "game", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "GameObjectSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_game_settings_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_game_settings_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Game Settings", "Game engine related settings for the object");
 
        /* vertex groups */
@@ -1771,7 +1771,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_vertex_group", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "VertexGroup");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_active_vertex_group_get", "rna_Object_active_vertex_group_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_active_vertex_group_get", "rna_Object_active_vertex_group_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Vertex Group", "Vertex groups of the object");
        RNA_def_property_update(prop, NC_GEOM|ND_DATA, "rna_Object_internal_update_data");
 
@@ -1810,13 +1810,13 @@ static void rna_def_object(BlenderRNA *brna)
        prop= RNA_def_property(srna, "field", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "pd");
        RNA_def_property_struct_type(prop, "FieldSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_field_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_field_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Field Settings", "Settings for using the objects as a field in physics simulation");
 
        prop= RNA_def_property(srna, "collision", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "pd");
        RNA_def_property_struct_type(prop, "CollisionSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_collision_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_collision_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Collision Settings", "Settings for using the objects as a collider in physics simulation");
 
        prop= RNA_def_property(srna, "soft_body", PROP_POINTER, PROP_NONE);
@@ -1831,7 +1831,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_particle_system", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ParticleSystem");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_active_particle_system_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_active_particle_system_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Particle System", "Active particle system being displayed");
        RNA_def_property_update(prop, NC_OBJECT|ND_DRAW, NULL);
 
@@ -2047,7 +2047,7 @@ static void rna_def_object(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_shape_key", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ShapeKey");
-       RNA_def_property_pointer_funcs(prop, "rna_Object_active_shape_key_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Object_active_shape_key_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Shape Key", "Current shape key");
 
        prop= RNA_def_property(srna, "active_shape_key_index", PROP_INT, PROP_NONE);
@@ -2072,7 +2072,7 @@ static void rna_def_dupli_object(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "object", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "ob");
-       /* RNA_def_property_pointer_funcs(prop, "rna_DupliObject_object_get", NULL, NULL); */
+       /* RNA_def_property_pointer_funcs(prop, "rna_DupliObject_object_get", NULL, NULL, NULL); */
        RNA_def_property_ui_text(prop, "Object", "Object being duplicated");
 
        prop= RNA_def_property(srna, "object_matrix", PROP_FLOAT, PROP_MATRIX);
index 4baf81a942718e5c93faa4c66add80a9c576d73e..a8ea4adb9b90bfec4d471032d42027fa7714bd14 100644 (file)
@@ -1949,7 +1949,7 @@ static void rna_def_particle_settings(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_dupliweight", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ParticleDupliWeight");
-       RNA_def_property_pointer_funcs(prop, "rna_ParticleDupliWeight_active_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_ParticleDupliWeight_active_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Dupli Object", "");
 
        prop= RNA_def_property(srna, "active_dupliweight_index", PROP_INT, PROP_UNSIGNED);
@@ -1981,13 +1981,13 @@ static void rna_def_particle_settings(BlenderRNA *brna)
        prop= RNA_def_property(srna, "force_field_1", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "pd");
        RNA_def_property_struct_type(prop, "FieldSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Particle_field1_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Particle_field1_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Force Field 1", "");
 
        prop= RNA_def_property(srna, "force_field_2", PROP_POINTER, PROP_NONE);
        RNA_def_property_pointer_sdna(prop, NULL, "pd2");
        RNA_def_property_struct_type(prop, "FieldSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_Particle_field2_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Particle_field2_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Force Field 2", "");
 }
 
@@ -2069,7 +2069,7 @@ static void rna_def_particle_system(BlenderRNA *brna)
        //RNA_def_property_pointer_sdna(prop, NULL, "part");
        RNA_def_property_struct_type(prop, "ParticleSettings");
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_NEVER_NULL);
-       RNA_def_property_pointer_funcs(prop, "rna_particle_settings_get", "rna_particle_settings_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_particle_settings_get", "rna_particle_settings_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Settings", "Particle system settings");
        RNA_def_property_update(prop, 0, "rna_Particle_reset");
 
@@ -2131,7 +2131,7 @@ static void rna_def_particle_system(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "active_particle_target", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ParticleTarget");
-       RNA_def_property_pointer_funcs(prop, "rna_ParticleSystem_active_particle_target_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_ParticleSystem_active_particle_target_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Particle Target", "");
 
        prop= RNA_def_property(srna, "active_particle_target_index", PROP_INT, PROP_UNSIGNED);
index d05a3d341ba4c5be23dd177ce3e2b1a4080fe614..37b453ad7a446e89971ceba05b0dead6fded0546 100644 (file)
@@ -632,7 +632,7 @@ static void rna_def_pose_channel_constraints(BlenderRNA *brna, PropertyRNA *cpro
        /* Collection active property */
        prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Constraint");
-       RNA_def_property_pointer_funcs(prop, "rna_PoseChannel_active_constraint_get", "rna_PoseChannel_active_constraint_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_PoseChannel_active_constraint_get", "rna_PoseChannel_active_constraint_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Constraint", "Active PoseChannel constraint");
 
@@ -970,7 +970,7 @@ static void rna_def_pose_channel(BlenderRNA *brna)
        prop= RNA_def_property(srna, "bone_group", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "BoneGroup");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_PoseChannel_bone_group_get", "rna_PoseChannel_bone_group_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_PoseChannel_bone_group_get", "rna_PoseChannel_bone_group_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Bone Group", "Bone Group this pose channel belongs to");
        RNA_def_property_editable_func(prop, "rna_PoseChannel_proxy_editable");
        RNA_def_property_update(prop, NC_OBJECT|ND_POSE, "rna_Pose_update");
@@ -1157,7 +1157,7 @@ static void rna_def_pose(BlenderRNA *brna)
        prop= RNA_def_property(srna, "active_bone_group", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "BoneGroup");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_Pose_active_bone_group_get", "rna_Pose_active_bone_group_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Pose_active_bone_group_get", "rna_Pose_active_bone_group_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Bone Group", "Active bone group for this pose");
        RNA_def_property_update(prop, NC_OBJECT|ND_POSE, "rna_Pose_update");
 
@@ -1177,7 +1177,7 @@ static void rna_def_pose(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "ik_param", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "IKParam");
-       RNA_def_property_pointer_funcs(prop, "rna_Pose_ikparam_get", NULL, "rna_Pose_ikparam_typef");
+       RNA_def_property_pointer_funcs(prop, "rna_Pose_ikparam_get", NULL, "rna_Pose_ikparam_typef", NULL);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "IK Param", "Parameters for IK solver");
        
index aa174fd97c32e4bddec3ebcd6c9660b6f08b15d4..d3c81e3f3245e4bc570405eac3141bef1aba9dd1 100644 (file)
@@ -884,19 +884,19 @@ static void rna_def_struct(BlenderRNA *brna)
        prop= RNA_def_property(srna, "base", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Struct");
-       RNA_def_property_pointer_funcs(prop, "rna_Struct_base_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Struct_base_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Base", "Struct definition this is derived from");
 
        prop= RNA_def_property(srna, "nested", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Struct");
-       RNA_def_property_pointer_funcs(prop, "rna_Struct_nested_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Struct_nested_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Nested", "Struct in which this struct is always nested, and to which it logically belongs");
 
        prop= RNA_def_property(srna, "name_property", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "StringProperty");
-       RNA_def_property_pointer_funcs(prop, "rna_Struct_name_property_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Struct_name_property_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Name Property", "Property that gives the name of the struct");
 
        prop= RNA_def_property(srna, "properties", PROP_COLLECTION, PROP_NONE);
@@ -974,7 +974,7 @@ static void rna_def_property(BlenderRNA *brna)
        prop= RNA_def_property(srna, "srna", PROP_POINTER, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Struct");
-       RNA_def_property_pointer_funcs(prop, "rna_Property_srna_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Property_srna_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Base", "Struct definition used for properties assigned to this item");
 
        prop= RNA_def_property(srna, "unit", PROP_ENUM, PROP_NONE);
@@ -1212,9 +1212,9 @@ static void rna_def_pointer_property(StructRNA *srna, PropertyType type)
        RNA_def_property_clear_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Struct");
        if(type == PROP_POINTER)
-               RNA_def_property_pointer_funcs(prop, "rna_PointerProperty_fixed_type_get", NULL, NULL);
+               RNA_def_property_pointer_funcs(prop, "rna_PointerProperty_fixed_type_get", NULL, NULL, NULL);
        else
-               RNA_def_property_pointer_funcs(prop, "rna_CollectionProperty_fixed_type_get", NULL, NULL);
+               RNA_def_property_pointer_funcs(prop, "rna_CollectionProperty_fixed_type_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Pointer Type", "Fixed pointer type, empty if variable type");
 }
 
index 027120b4f35a9aa49f2ac2631eae04c23ea671d7..acd5f7dca4283f76bf2adccc43dfa57adf66fae1 100644 (file)
@@ -1149,7 +1149,7 @@ static void rna_def_tool_settings(BlenderRNA  *brna)
        RNA_def_property_pointer_sdna(prop, NULL, "skgen_template");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_struct_type(prop, "Object");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Scene_skgen_etch_template_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Scene_skgen_etch_template_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Template", "Template armature that will be retargeted to the stroke");
 
        prop= RNA_def_property(srna, "etch_subdivision_number", PROP_INT, PROP_NONE);
@@ -2838,7 +2838,7 @@ static void rna_def_scene_objects(BlenderRNA *brna, PropertyRNA *cprop)
 
        prop= RNA_def_property(srna, "active", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Object");
-       RNA_def_property_pointer_funcs(prop, "rna_Scene_active_object_get", "rna_Scene_active_object_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Scene_active_object_get", "rna_Scene_active_object_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Active Object", "Active object for this scene");
        /* Could call: ED_base_object_activate(C, scene->basact);
@@ -2936,7 +2936,7 @@ void RNA_def_scene(BlenderRNA *brna)
        RNA_def_property_pointer_sdna(prop, NULL, "set");
        RNA_def_property_struct_type(prop, "Scene");
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_ID_SELF_CHECK);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Scene_set_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Scene_set_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Background Scene", "Background set scene");
        RNA_def_property_update(prop, NC_SCENE|NA_EDITED, NULL);
 
@@ -3091,7 +3091,7 @@ void RNA_def_scene(BlenderRNA *brna)
        prop= RNA_def_property(srna, "active_keying_set", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "KeyingSet");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_Scene_active_keying_set_get", "rna_Scene_active_keying_set_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Scene_active_keying_set_get", "rna_Scene_active_keying_set_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Active Keying Set", "Active Keying Set used to insert/delete keyframes");
        RNA_def_property_update(prop, NC_SCENE|ND_KEYINGSET, NULL);
        
index ecf2206c25cf4935591278fdc2e2c546a2a801db..cb028e6da1a92830acb2369c49fa9d37e100995c 100644 (file)
@@ -184,7 +184,7 @@ static void rna_def_screen(BlenderRNA *brna)
        
        prop= RNA_def_property(srna, "scene", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_EDITABLE|PROP_NEVER_NULL);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Screen_scene_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Screen_scene_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Scene", "Active scene to be edited in the screen");
        RNA_def_property_flag(prop, PROP_CONTEXT_UPDATE);
        RNA_def_property_update(prop, 0, "rna_Screen_scene_update");
index 604f7776d56ece5985b7c46e2e93e0228142c710..db67dba3e265864cf5ae41e27d6597c8564a5ebf 100644 (file)
@@ -253,7 +253,7 @@ static void rna_def_paint(BlenderRNA *brna)
        /* Fake property to get active brush directly, rather than integer index */
        prop= RNA_def_property(srna, "brush", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "Brush");
-       RNA_def_property_pointer_funcs(prop, "rna_Paint_active_brush_get", "rna_Paint_active_brush_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Paint_active_brush_get", "rna_Paint_active_brush_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Brush", "Active paint brush");
        RNA_def_property_update(prop, NC_BRUSH|NA_EDITED, NULL);
@@ -492,7 +492,7 @@ static void rna_def_particle_edit(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "brush", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "ParticleBrush");
-       RNA_def_property_pointer_funcs(prop, "rna_ParticleEdit_brush_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_ParticleEdit_brush_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Brush", "");
 
        prop= RNA_def_property(srna, "draw_step", PROP_INT, PROP_NONE);
@@ -569,7 +569,7 @@ static void rna_def_particle_edit(BlenderRNA *brna)
        /* dummy */
        prop= RNA_def_property(srna, "curve", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "CurveMapping");
-       RNA_def_property_pointer_funcs(prop, "rna_ParticleBrush_curve_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_ParticleBrush_curve_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Curve", "");
 }
 
index 90a520d6d92c3a7e4cb2b130965315eee0c89f78..7a130efa37c40e50b396d5e0a782c6bee172ce48 100644 (file)
@@ -382,7 +382,7 @@ static void rna_def_touch_sensor(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Material", "Only look for objects with this material");
        /* note: custom set function is ONLY to avoid rna setting a user for this. */
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Sensor_touch_material_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Sensor_touch_material_set", NULL, NULL);
        RNA_def_property_update(prop, NC_LOGIC, NULL);
 }
 
index 8bb736f7976734219424771d936d7453eff77de2..436e9f60dc7e56c15f25b08b855eee6651216c2e 100644 (file)
@@ -1136,7 +1136,7 @@ static void rna_def_space_view3d(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "current_orientation", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "TransformOrientation");
-       RNA_def_property_pointer_funcs(prop, "rna_CurrentOrientation_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_CurrentOrientation_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Current Transform Orientation", "Current Transformation orientation");
 
        prop= RNA_def_property(srna, "lock_camera_and_layers", PROP_BOOLEAN, PROP_NONE);
@@ -1161,12 +1161,12 @@ static void rna_def_space_view3d(BlenderRNA *brna)
 
        prop= RNA_def_property(srna, "region_3d", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "RegionView3D");
-       RNA_def_property_pointer_funcs(prop, "rna_SpaceView3D_region_3d_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_SpaceView3D_region_3d_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "3D Region", "3D region in this space, in case of quad view the camera region");
 
        prop= RNA_def_property(srna, "region_quadview", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "RegionView3D");
-       RNA_def_property_pointer_funcs(prop, "rna_SpaceView3D_region_quadview_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_SpaceView3D_region_quadview_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Quad View Region", "3D region that defines the quad view settings");
 
        /* region */
@@ -1284,7 +1284,7 @@ static void rna_def_space_buttons(BlenderRNA *brna)
        RNA_def_property_pointer_sdna(prop, NULL, "pinid");
        RNA_def_property_struct_type(prop, "ID");
     /* note: custom set function is ONLY to avoid rna setting a user for this. */
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceProperties_pin_id_set", "rna_SpaceProperties_pin_id_typef");
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceProperties_pin_id_set", "rna_SpaceProperties_pin_id_typef", NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_update(prop, NC_SPACE|ND_SPACE_PROPERTIES, "rna_SpaceProperties_pin_id_update");
 
@@ -1304,7 +1304,7 @@ static void rna_def_space_image(BlenderRNA *brna)
 
        /* image */
        prop= RNA_def_property(srna, "image", PROP_POINTER, PROP_NONE);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceImageEditor_image_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceImageEditor_image_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Image", "Image displayed and edited in this space");
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_update(prop, NC_SPACE|ND_SPACE_IMAGE, NULL);
@@ -1354,7 +1354,7 @@ static void rna_def_space_image(BlenderRNA *brna)
        prop= RNA_def_property(srna, "uv_editor", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "SpaceUVEditor");
-       RNA_def_property_pointer_funcs(prop, "rna_SpaceImageEditor_uvedit_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_SpaceImageEditor_uvedit_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "UV Editor", "UV editor settings");
        
        /* paint */
@@ -1532,7 +1532,7 @@ static void rna_def_space_text(BlenderRNA *brna)
        prop= RNA_def_property(srna, "text", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_ui_text(prop, "Text", "Text displayed and edited in this space");
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceTextEditor_text_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceTextEditor_text_set", NULL, NULL);
        RNA_def_property_update(prop, NC_SPACE|ND_SPACE_TEXT, NULL);
 
        /* display */
@@ -1617,7 +1617,7 @@ static void rna_def_space_dopesheet(BlenderRNA *brna)
        /* data */
        prop= RNA_def_property(srna, "action", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceDopeSheetEditor_action_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_SpaceDopeSheetEditor_action_set", NULL, NULL);
        RNA_def_property_ui_text(prop, "Action", "Action displayed and edited in this space");
        RNA_def_property_update(prop, NC_ANIMATION|ND_KEYFRAME|NA_EDITED, "rna_SpaceDopeSheetEditor_action_update");
        
index 84fd217e64ef8a0d1b5d91f768a6f08b824783ae..277a6b9e282ca09421e6db2bb424c42b84d312ce 100644 (file)
@@ -1447,7 +1447,7 @@ static void rna_def_texture_pointdensity(BlenderRNA *brna)
        prop= RNA_def_property(srna, "particle_system", PROP_POINTER, PROP_NONE);
        RNA_def_property_ui_text(prop, "Particle System", "Particle System to render as points");
        RNA_def_property_struct_type(prop, "ParticleSystem");
-       RNA_def_property_pointer_funcs(prop, "rna_PointDensity_psys_get", "rna_PointDensity_psys_set", NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_PointDensity_psys_get", "rna_PointDensity_psys_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_EDITABLE);
        RNA_def_property_update(prop, 0, "rna_Texture_update");
        
index d3b2e2fdd270e3b9cf867efb842771360dc84153..9faaf53f93ad812dbe5ff8ec9066c44f2c189b3a 100644 (file)
@@ -2844,31 +2844,31 @@ void RNA_def_userdef(BlenderRNA *brna)
        prop= RNA_def_property(srna, "view", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "UserPreferencesView");
-       RNA_def_property_pointer_funcs(prop, "rna_UserDef_view_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_UserDef_view_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "View & Controls", "Preferences related to viewing data");
 
        prop= RNA_def_property(srna, "edit", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "UserPreferencesEdit");
-       RNA_def_property_pointer_funcs(prop, "rna_UserDef_edit_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_UserDef_edit_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Edit Methods", "Settings for interacting with Blender data");
        
        prop= RNA_def_property(srna, "inputs", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "UserPreferencesInput");
-       RNA_def_property_pointer_funcs(prop, "rna_UserDef_input_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_UserDef_input_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Inputs", "Settings for input devices");
        
        prop= RNA_def_property(srna, "filepaths", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "UserPreferencesFilePaths");
-       RNA_def_property_pointer_funcs(prop, "rna_UserDef_filepaths_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_UserDef_filepaths_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "File Paths", "Default paths for external files");
        
        prop= RNA_def_property(srna, "system", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "UserPreferencesSystem");
-       RNA_def_property_pointer_funcs(prop, "rna_UserDef_system_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_UserDef_system_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "System & OpenGL", "Graphics driver and operating system settings");
        
        rna_def_userdef_view(brna);
index 7ccc990ffd3a9ca2839520450375fa1223f4cf52..eeac6813f78532267e548e56bbe8d1d0ec403444 100644 (file)
@@ -985,7 +985,7 @@ static void rna_def_operator(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "OperatorProperties");
        RNA_def_property_ui_text(prop, "Properties", "");
-       RNA_def_property_pointer_funcs(prop, "rna_Operator_properties_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Operator_properties_get", NULL, NULL, NULL);
        
        prop= RNA_def_property(srna, "has_reports", PROP_BOOLEAN, PROP_NONE);
        RNA_def_property_clear_flag(prop, PROP_EDITABLE); /* this is 'virtual' property */
@@ -1048,7 +1048,7 @@ static void rna_def_macro_operator(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "OperatorProperties");
        RNA_def_property_ui_text(prop, "Properties", "");
-       RNA_def_property_pointer_funcs(prop, "rna_Operator_properties_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_Operator_properties_get", NULL, NULL, NULL);
 
        /* Registration */
        prop= RNA_def_property(srna, "bl_idname", PROP_STRING, PROP_NONE);
@@ -1095,7 +1095,7 @@ static void rna_def_operator_type_macro(BlenderRNA *brna)
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "OperatorProperties");
        RNA_def_property_ui_text(prop, "Properties", "");
-       RNA_def_property_pointer_funcs(prop, "rna_OperatorTypeMacro_properties_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_OperatorTypeMacro_properties_get", NULL, NULL, NULL);
 }
 
 static void rna_def_operator_utils(BlenderRNA *brna)
@@ -1232,7 +1232,7 @@ static void rna_def_window(BlenderRNA *brna)
        RNA_def_property_struct_type(prop, "Screen");
        RNA_def_property_ui_text(prop, "Screen", "Active screen showing in the window");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, NULL, "rna_Window_screen_set", NULL);
+       RNA_def_property_pointer_funcs(prop, NULL, "rna_Window_screen_set", NULL, NULL);
        RNA_def_property_flag(prop, PROP_CONTEXT_UPDATE);
        RNA_def_property_update(prop, 0, "rna_Window_screen_update");
 }
@@ -1262,7 +1262,7 @@ static void rna_def_windowmanager(BlenderRNA *brna)
        prop= RNA_def_property(srna, "active_keyconfig", PROP_POINTER, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "KeyConfig");
        RNA_def_property_flag(prop, PROP_EDITABLE);
-       RNA_def_property_pointer_funcs(prop, "rna_WindowManager_active_keyconfig_get", "rna_WindowManager_active_keyconfig_set", 0);
+       RNA_def_property_pointer_funcs(prop, "rna_WindowManager_active_keyconfig_get", "rna_WindowManager_active_keyconfig_set", 0, NULL);
        RNA_def_property_ui_text(prop, "Active Key Configuration", "");
 
        prop= RNA_def_property(srna, "default_keyconfig", PROP_POINTER, PROP_NEVER_NULL);
@@ -1427,7 +1427,7 @@ static void rna_def_keyconfig(BlenderRNA *brna)
        
        prop= RNA_def_property(srna, "properties", PROP_POINTER, PROP_NONE);
        RNA_def_property_struct_type(prop, "OperatorProperties");
-       RNA_def_property_pointer_funcs(prop, "rna_KeyMapItem_properties_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_KeyMapItem_properties_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Properties", "Properties to set when the operator is called");
 
        prop= RNA_def_property(srna, "map_type", PROP_ENUM, PROP_NONE);
index 4d0170bdc186d5aa35477cbe92fbd721d488624b..f4517c8a5eebf8cba09ef931979b098853312749 100644 (file)
@@ -528,19 +528,19 @@ void RNA_def_world(BlenderRNA *brna)
        prop= RNA_def_property(srna, "lighting", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "WorldLighting");
-       RNA_def_property_pointer_funcs(prop, "rna_World_lighting_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_World_lighting_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Lighting", "World lighting settings");
 
        prop= RNA_def_property(srna, "mist", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "WorldMistSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_World_mist_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_World_mist_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Mist", "World mist settings");
 
        prop= RNA_def_property(srna, "stars", PROP_POINTER, PROP_NONE);
        RNA_def_property_flag(prop, PROP_NEVER_NULL);
        RNA_def_property_struct_type(prop, "WorldStarsSettings");
-       RNA_def_property_pointer_funcs(prop, "rna_World_stars_get", NULL, NULL);
+       RNA_def_property_pointer_funcs(prop, "rna_World_stars_get", NULL, NULL, NULL);
        RNA_def_property_ui_text(prop, "Stars", "World stars settings");
 
        rna_def_lighting(brna);