diff options
author | Campbell Barton <ideasman42@gmail.com> | 2010-08-03 10:51:36 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2010-08-03 10:51:36 +0400 |
commit | 109a3b319830e6680c8d4eaf0d7076cfb1e7729c (patch) | |
tree | de4eec8a3eeb8b737a3224a17272b0b598046346 /source/blender/makesrna/intern/rna_object.c | |
parent | 6d0769bc4216e79939c06888a8109796dc4824e5 (diff) |
pointer poll functions for object's, mainly for modifiers, constraints.
Lattice modifier only shows lattices types, Shrink wrap only meshes etc.
Diffstat (limited to 'source/blender/makesrna/intern/rna_object.c')
-rw-r--r-- | source/blender/makesrna/intern/rna_object.c | 34 |
1 files changed, 30 insertions, 4 deletions
diff --git a/source/blender/makesrna/intern/rna_object.c b/source/blender/makesrna/intern/rna_object.c index 92bda4c5f74..51e2fc38014 100644 --- a/source/blender/makesrna/intern/rna_object.c +++ b/source/blender/makesrna/intern/rna_object.c @@ -129,18 +129,18 @@ EnumPropertyItem object_type_curve_items[] = { #include "ED_object.h" #include "ED_particle.h" -void rna_Object_internal_update(Main *bmain, Scene *scene, PointerRNA *ptr) +static void rna_Object_internal_update(Main *bmain, Scene *scene, PointerRNA *ptr) { DAG_id_flush_update(ptr->id.data, OB_RECALC_OB); } -void rna_Object_matrix_world_update(Main *bmain, Scene *scene, PointerRNA *ptr) +static void rna_Object_matrix_world_update(Main *bmain, Scene *scene, PointerRNA *ptr) { object_apply_mat4(ptr->id.data, ((Object *)ptr->id.data)->obmat); rna_Object_internal_update(bmain, scene, ptr); } -void rna_Object_matrix_local_get(PointerRNA *ptr, float values[16]) +static void rna_Object_matrix_local_get(PointerRNA *ptr, float values[16]) { Object *ob= ptr->id.data; @@ -154,7 +154,7 @@ void rna_Object_matrix_local_get(PointerRNA *ptr, float values[16]) } } -void rna_Object_matrix_local_set(PointerRNA *ptr, const float values[16]) +static void rna_Object_matrix_local_set(PointerRNA *ptr, const float values[16]) { Object *ob= ptr->id.data; @@ -1052,6 +1052,32 @@ static void rna_Object_boundbox_get(PointerRNA *ptr, float *values) } +/* generic poll functions */ +int rna_Lattice_object_poll(PointerRNA *ptr, PointerRNA value) +{ + return ((Object *)value.id.data)->type == OB_LATTICE; +} + +int rna_Curve_object_poll(PointerRNA *ptr, PointerRNA value) +{ + return ((Object *)value.id.data)->type == OB_CURVE; +} + +int rna_Armature_object_poll(PointerRNA *ptr, PointerRNA value) +{ + return ((Object *)value.id.data)->type == OB_ARMATURE; +} + +int rna_Mesh_object_poll(PointerRNA *ptr, PointerRNA value) +{ + return ((Object *)value.id.data)->type == OB_MESH; +} + +int rna_Camera_object_poll(PointerRNA *ptr, PointerRNA value) +{ + return ((Object *)value.id.data)->type == OB_CAMERA; +} + #else static void rna_def_vertex_group(BlenderRNA *brna) |