[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [41430] trunk/blender/source/blender: macro to check if an object type supports vgroups

Campbell Barton ideasman42 at gmail.com
Tue Nov 1 07:45:37 CET 2011


Revision: 41430
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=41430
Author:   campbellbarton
Date:     2011-11-01 06:45:36 +0000 (Tue, 01 Nov 2011)
Log Message:
-----------
macro to check if an object type supports vgroups

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/constraint.c
    trunk/blender/source/blender/blenkernel/intern/key.c
    trunk/blender/source/blender/editors/object/object_vgroup.c
    trunk/blender/source/blender/makesdna/DNA_object_types.h

Modified: trunk/blender/source/blender/blenkernel/intern/constraint.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/constraint.c	2011-11-01 06:26:55 UTC (rev 41429)
+++ trunk/blender/source/blender/blenkernel/intern/constraint.c	2011-11-01 06:45:36 UTC (rev 41430)
@@ -703,7 +703,7 @@
 				ct->type = CONSTRAINT_OBTYPE_BONE; \
 				ct->rotOrder= (pchan) ? (pchan->rotmode) : EULER_ORDER_DEFAULT; \
 			}\
-			else if (ELEM(ct->tar->type, OB_MESH, OB_LATTICE) && (ct->subtarget[0])) { \
+			else if (OB_TYPE_SUPPORT_VGROUP(ct->tar->type) && (ct->subtarget[0])) { \
 				ct->type = CONSTRAINT_OBTYPE_VERT; \
 				ct->rotOrder = EULER_ORDER_DEFAULT; \
 			} \

Modified: trunk/blender/source/blender/blenkernel/intern/key.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/key.c	2011-11-01 06:26:55 UTC (rev 41429)
+++ trunk/blender/source/blender/blenkernel/intern/key.c	2011-11-01 06:45:36 UTC (rev 41430)
@@ -1381,7 +1381,7 @@
 			ob->shapenr= 1;
 		}
 		
-		if(ELEM(ob->type, OB_MESH, OB_LATTICE)) {
+		if (OB_TYPE_SUPPORT_VGROUP(ob->type)) {
 			float *weights= get_weights_array(ob, kb->vgroup);
 
 			cp_key(0, tot, tot, out, key, actkb, kb, weights, 0);

Modified: trunk/blender/source/blender/editors/object/object_vgroup.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_vgroup.c	2011-11-01 06:26:55 UTC (rev 41429)
+++ trunk/blender/source/blender/editors/object/object_vgroup.c	2011-11-01 06:45:36 UTC (rev 41430)
@@ -99,8 +99,7 @@
 bDeformGroup *ED_vgroup_add_name(Object *ob, const char *name)
 {
 	bDeformGroup *defgroup;
-	
-	if(!ob || !ELEM(ob->type, OB_MESH, OB_LATTICE))
+	if(!ob || !OB_TYPE_SUPPORT_VGROUP(ob->type))
 		return NULL;
 	
 	defgroup = MEM_callocN(sizeof(bDeformGroup), "add deformGroup");
@@ -2013,7 +2012,7 @@
 {
 	Object *ob= CTX_data_pointer_get_type(C, "object", &RNA_Object).data;
 	ID *data= (ob)? ob->data: NULL;
-	return (ob && !ob->id.lib && ELEM(ob->type, OB_MESH, OB_LATTICE) && data && !data->lib);
+	return (ob && !ob->id.lib && OB_TYPE_SUPPORT_VGROUP(ob->type) && data && !data->lib);
 }
 
 static int vertex_group_poll_edit(bContext *C)

Modified: trunk/blender/source/blender/makesdna/DNA_object_types.h
===================================================================
--- trunk/blender/source/blender/makesdna/DNA_object_types.h	2011-11-01 06:26:55 UTC (rev 41429)
+++ trunk/blender/source/blender/makesdna/DNA_object_types.h	2011-11-01 06:45:36 UTC (rev 41430)
@@ -321,6 +321,7 @@
 
 /* check if the object type supports materials */
 #define OB_TYPE_SUPPORT_MATERIAL(_type) ((_type)  >= OB_MESH && (_type) <= OB_MBALL)
+#define OB_TYPE_SUPPORT_VGROUP(_type)   (ELEM(_type, OB_MESH, OB_LATTICE))
 
 /* partype: first 4 bits: type */
 #define PARTYPE			15




More information about the Bf-blender-cvs mailing list