[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [23771] trunk/blender/source/blender: Use OB_MODE_EDIT as a flag everywhere, also fixed a typo which made drawing the set-scene not work right.

Campbell Barton ideasman42 at gmail.com
Sun Oct 11 21:06:38 CEST 2009


Revision: 23771
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23771
Author:   campbellbarton
Date:     2009-10-11 21:06:38 +0200 (Sun, 11 Oct 2009)

Log Message:
-----------
Use OB_MODE_EDIT as a flag everywhere, also fixed a typo which made drawing the set-scene not work right.

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/anim.c
    trunk/blender/source/blender/blenkernel/intern/object.c
    trunk/blender/source/blender/editors/mesh/editmesh_mods.c
    trunk/blender/source/blender/editors/object/object_edit.c
    trunk/blender/source/blender/editors/space_view3d/drawmesh.c
    trunk/blender/source/blender/editors/space_view3d/drawobject.c
    trunk/blender/source/blender/makesrna/intern/rna_object.c

Modified: trunk/blender/source/blender/blenkernel/intern/anim.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/anim.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/blenkernel/intern/anim.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -549,7 +549,7 @@
 					/* mballs have a different dupli handling */
 					if(ob->type!=OB_MBALL) ob->flag |= OB_DONE;	/* doesnt render */
 
-					if(par->mode==OB_MODE_EDIT) {
+					if(par->mode & OB_MODE_EDIT) {
 						dm->foreachMappedVert(dm, vertex_dupli__mapFunc, (void*) &vdd);
 					}
 					else {
@@ -760,7 +760,7 @@
 		else		go= go->next;		/* group loop */
 	}
 	
-	if(par->mode==OB_MODE_EDIT) {
+	if(par->mode & OB_MODE_EDIT) {
 		MEM_freeN(mface);
 		MEM_freeN(mvert);
 	}

Modified: trunk/blender/source/blender/blenkernel/intern/object.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/object.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/blenkernel/intern/object.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -2370,7 +2370,7 @@
 				EditMesh *em = BKE_mesh_get_editmesh(ob->data);
 
 					// here was vieweditdatamask? XXX
-				if(ob->mode==OB_MODE_EDIT) {
+				if(ob->mode & OB_MODE_EDIT) {
 					makeDerivedMesh(scene, ob, em, CD_MASK_BAREMESH);
 					BKE_mesh_end_editmesh(ob->data, em);
 				} else

Modified: trunk/blender/source/blender/editors/mesh/editmesh_mods.c
===================================================================
--- trunk/blender/source/blender/editors/mesh/editmesh_mods.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/editors/mesh/editmesh_mods.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -123,7 +123,7 @@
 	int len;
 
 	if ((scene->toolsettings->automerge) &&
-		(obedit && obedit->type==OB_MESH && obedit->mode==OB_MODE_EDIT) &&
+		(obedit && obedit->type==OB_MESH && (obedit->mode & OB_MODE_EDIT)) &&
 		(me->mr==NULL)
 	  ) {
 		Mesh *me= (Mesh*)obedit->data;

Modified: trunk/blender/source/blender/editors/object/object_edit.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_edit.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/editors/object/object_edit.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -2004,7 +2004,7 @@
 
 	/* Irritating workaround! disallow paint modes from editmode since a number of shortcuts conflict
 	 * XXX - would be much better to handle this on a keymap level */
-	if(ob->mode == OB_MODE_EDIT && ELEM6(mode, OB_MODE_SCULPT, OB_MODE_VERTEX_PAINT, OB_MODE_WEIGHT_PAINT, OB_MODE_TEXTURE_PAINT, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE)) {
+	if((ob->mode & OB_MODE_EDIT) && ELEM6(mode, OB_MODE_SCULPT, OB_MODE_VERTEX_PAINT, OB_MODE_WEIGHT_PAINT, OB_MODE_TEXTURE_PAINT, OB_MODE_PARTICLE_EDIT, OB_MODE_POSE)) {
 		return OPERATOR_PASS_THROUGH;
 	}
 

Modified: trunk/blender/source/blender/editors/space_view3d/drawmesh.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawmesh.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/editors/space_view3d/drawmesh.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -350,7 +350,7 @@
 	int istex, solidtex= 0;
 
 	// XXX scene->obedit warning
-	if(v3d->drawtype==OB_SOLID || (ob->mode==OB_MODE_EDIT && v3d->drawtype!=OB_TEXTURE)) {
+	if(v3d->drawtype==OB_SOLID || ((ob->mode & OB_MODE_EDIT) && v3d->drawtype!=OB_TEXTURE)) {
 		/* draw with default lights in solid draw mode and edit mode */
 		solidtex= 1;
 		Gtexdraw.islit= -1;
@@ -561,7 +561,7 @@
 		return;
 
 	/* don't draw when editing */
-	if(ob->mode==OB_MODE_EDIT)
+	if(ob->mode & OB_MODE_EDIT)
 		return;
 	else if(ob==OBACT)
 		if(paint_facesel_test(ob))
@@ -641,7 +641,7 @@
 	/* draw the textured mesh */
 	draw_textured_begin(scene, v3d, rv3d, ob);
 
-	if(ob->mode==OB_MODE_EDIT) {
+	if(ob->mode & OB_MODE_EDIT) {
 		glColor4f(1.0f,1.0f,1.0f,1.0f);
 		dm->drawMappedFacesTex(dm, draw_em_tf_mapped__set_draw, me->edit_mesh);
 	} else if(faceselect) {

Modified: trunk/blender/source/blender/editors/space_view3d/drawobject.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/drawobject.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/editors/space_view3d/drawobject.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -5512,7 +5512,7 @@
 	if(ob==OBACT && (ob->mode & (OB_MODE_VERTEX_PAINT|OB_MODE_WEIGHT_PAINT|OB_MODE_TEXTURE_PAINT))) {
 		if(ob->type==OB_MESH) {
 
-			if(ob->mode==OB_MODE_EDIT);
+			if(ob->mode & OB_MODE_EDIT);
 			else {
 				if(dt<OB_SOLID)
 					zbufoff= 1;
@@ -5534,7 +5534,7 @@
 	if(dt>=OB_BOUNDBOX ) {
 
 		dtx= ob->dtx;
-		if(ob->mode==OB_MODE_EDIT) {
+		if(ob->mode & OB_MODE_EDIT) {
 			// the only 2 extra drawtypes alowed in editmode
 			dtx= dtx & (OB_DRAWWIRE|OB_TEXSPACE);
 		}
@@ -5550,7 +5550,7 @@
 	
 	/* draw outline for selected solid objects, mesh does itself */
 	if((v3d->flag & V3D_SELECT_OUTLINE) && ob->type!=OB_MESH) {
-		if(dt>OB_WIRE && dt<OB_TEXTURE && ob->mode!=OB_MODE_EDIT && (flag && DRAW_SCENESET)==0) {
+		if(dt>OB_WIRE && dt<OB_TEXTURE && (ob->mode & OB_MODE_EDIT)==0 && (flag & DRAW_SCENESET)==0) {
 			if (!(ob->dtx&OB_DRAWWIRE) && (ob->flag&SELECT) && !(flag&DRAW_PICKING)) {
 				
 				drawSolidSelect(scene, v3d, ar, base);
@@ -6159,7 +6159,7 @@
 	switch( ob->type) {
 	case OB_MESH:
 	{
-		if(ob->mode==OB_MODE_EDIT) {
+		if((ob->mode & OB_MODE_EDIT)==0) {
 			Mesh *me= ob->data;
 			EditMesh *em= me->edit_mesh;
 
@@ -6215,7 +6215,7 @@
 	DerivedMesh *dm=NULL, *edm=NULL;
 	int glsl;
 	
-	if(ob->mode == OB_MODE_EDIT)
+	if(ob->mode & OB_MODE_EDIT)
 		edm= editmesh_get_derived_base(ob, me->edit_mesh);
 	else 
 		dm = mesh_get_derived_final(scene, ob, CD_MASK_BAREMESH);

Modified: trunk/blender/source/blender/makesrna/intern/rna_object.c
===================================================================
--- trunk/blender/source/blender/makesrna/intern/rna_object.c	2009-10-11 12:09:14 UTC (rev 23770)
+++ trunk/blender/source/blender/makesrna/intern/rna_object.c	2009-10-11 19:06:38 UTC (rev 23771)
@@ -416,7 +416,7 @@
 	Object *ob= (Object*)ptr->id.data;
 	ob->actcol= value+1;
 
-	if(ob->mode==OB_MODE_EDIT && ob->type==OB_MESH) {
+	if((ob->mode & OB_MODE_EDIT) && ob->type==OB_MESH) {
 		Mesh *me= ob->data;
 
 		if(me->edit_mesh)





More information about the Bf-blender-cvs mailing list