[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [24150] trunk/blender/source/blender/ editors: use objects rather then bases where possible, use context rather then OBACT macro

Campbell Barton ideasman42 at gmail.com
Thu Oct 29 10:14:20 CET 2009


Revision: 24150
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=24150
Author:   campbellbarton
Date:     2009-10-29 10:14:20 +0100 (Thu, 29 Oct 2009)

Log Message:
-----------
use objects rather then bases where possible, use context rather then OBACT macro

Modified Paths:
--------------
    trunk/blender/source/blender/editors/animation/keyframing.c
    trunk/blender/source/blender/editors/animation/keyingsets.c
    trunk/blender/source/blender/editors/object/object_add.c
    trunk/blender/source/blender/editors/object/object_edit.c
    trunk/blender/source/blender/editors/object/object_relations.c
    trunk/blender/source/blender/editors/object/object_transform.c
    trunk/blender/source/blender/editors/space_view3d/view3d_snap.c

Modified: trunk/blender/source/blender/editors/animation/keyframing.c
===================================================================
--- trunk/blender/source/blender/editors/animation/keyframing.c	2009-10-28 23:47:56 UTC (rev 24149)
+++ trunk/blender/source/blender/editors/animation/keyframing.c	2009-10-29 09:14:20 UTC (rev 24150)
@@ -1187,9 +1187,8 @@
 	float cfra= (float)CFRA; // XXX for now, don't bother about all the yucky offset crap
 	
 	// XXX more comprehensive tests will be needed
-	CTX_DATA_BEGIN(C, Base*, base, selected_bases) 
+	CTX_DATA_BEGIN(C, Object*, ob, selected_objects) 
 	{
-		Object *ob= base->object;
 		ID *id= (ID *)ob;
 		FCurve *fcu, *fcn;
 		short success= 0;

Modified: trunk/blender/source/blender/editors/animation/keyingsets.c
===================================================================
--- trunk/blender/source/blender/editors/animation/keyingsets.c	2009-10-28 23:47:56 UTC (rev 24149)
+++ trunk/blender/source/blender/editors/animation/keyingsets.c	2009-10-29 09:14:20 UTC (rev 24150)
@@ -1238,10 +1238,8 @@
 	}
 	else {
 		/* Object Mode: Selected objects */
-		CTX_DATA_BEGIN(C, Base*, base, selected_bases) 
-		{
-			Object *ob= base->object;
-			
+		CTX_DATA_BEGIN(C, Object*, ob, selected_objects) 
+		{			
 			/* add a new keying-source */
 			cks= MEM_callocN(sizeof(bCommonKeySrc), "bCommonKeySrc");
 			BLI_addtail(dsources, cks);

Modified: trunk/blender/source/blender/editors/object/object_add.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_add.c	2009-10-28 23:47:56 UTC (rev 24149)
+++ trunk/blender/source/blender/editors/object/object_add.c	2009-10-29 09:14:20 UTC (rev 24150)
@@ -747,8 +747,7 @@
 	int a;
 	
 	/* XXX check object pointers */
-	CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-		ob= base->object;
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
 		relink_constraints(&ob->constraints);
 		if (ob->pose){
 			bPoseChannel *chan;

Modified: trunk/blender/source/blender/editors/object/object_edit.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_edit.c	2009-10-28 23:47:56 UTC (rev 24149)
+++ trunk/blender/source/blender/editors/object/object_edit.c	2009-10-29 09:14:20 UTC (rev 24150)
@@ -1604,14 +1604,12 @@
 
 static int shade_smooth_exec(bContext *C, wmOperator *op)
 {
-	Object *ob;
 	Curve *cu;
 	Nurb *nu;
 	int clear= (strcmp(op->idname, "OBJECT_OT_shade_flat") == 0);
 	int done= 0;
 
-	CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-		ob= base->object;
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
 
 		if(ob->type==OB_MESH) {
 			mesh_set_smooth_flag(ob, !clear);
@@ -1867,7 +1865,6 @@
 
 void ofs_timeoffs(Scene *scene, View3D *v3d)
 {
-	Base *base;
 	float offset=0.0f;
 
 	if(BASACT==0 || v3d==NULL) return;
@@ -1875,13 +1872,12 @@
 // XXX	if(fbutton(&offset, -10000.0f, 10000.0f, 10, 10, "Offset")==0) return;
 
 	/* make array of all bases, xco yco (screen) */
-	for(base= FIRSTBASE; base; base= base->next) {
-		if(TESTBASELIB(v3d, base)) {
-			base->object->sf += offset;
-			if (base->object->sf < -MAXFRAMEF)		base->object->sf = -MAXFRAMEF;
-			else if (base->object->sf > MAXFRAMEF)	base->object->sf = MAXFRAMEF;
-		}
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
+		ob->sf += offset;
+		if (ob->sf < -MAXFRAMEF)		ob->sf = -MAXFRAMEF;
+		else if (ob->sf > MAXFRAMEF)	ob->sf = MAXFRAMEF;
 	}
+	CTX_DATA_END;
 
 }
 

Modified: trunk/blender/source/blender/editors/object/object_relations.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_relations.c	2009-10-28 23:47:56 UTC (rev 24149)
+++ trunk/blender/source/blender/editors/object/object_relations.c	2009-10-29 09:14:20 UTC (rev 24150)
@@ -915,28 +915,30 @@
 static int track_set_exec(bContext *C, wmOperator *op)
 {
 	Scene *scene= CTX_data_scene(C);
+	Object *obact= CTX_data_active_object(C); 
+	
 	int type= RNA_enum_get(op->ptr, "type");
-		
+	
 	if(type == 1) {
 		bConstraint *con;
 		bTrackToConstraint *data;
 
-		CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-			if(base!=BASACT) {
+		CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
+			if(ob!=obact) {
 				con = add_new_constraint(CONSTRAINT_TYPE_TRACKTO);
 				strcpy (con->name, "AutoTrack");
 
 				data = con->data;
-				data->tar = BASACT->object;
-				base->object->recalc |= OB_RECALC;
+				data->tar = obact;
+				ob->recalc |= OB_RECALC;
 				
 				/* Lamp and Camera track differently by default */
-				if (base->object->type == OB_LAMP || base->object->type == OB_CAMERA) {
+				if (ob->type == OB_LAMP || ob->type == OB_CAMERA) {
 					data->reserved1 = TRACK_nZ;
 					data->reserved2 = UP_Y;
 				}
 
-				add_constraint_to_object(con, base->object);
+				add_constraint_to_object(con, ob);
 			}
 		}
 		CTX_DATA_END;
@@ -945,31 +947,31 @@
 		bConstraint *con;
 		bLockTrackConstraint *data;
 
-		CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-			if(base!=BASACT) {
+		CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
+			if(ob!=obact) {
 				con = add_new_constraint(CONSTRAINT_TYPE_LOCKTRACK);
 				strcpy (con->name, "AutoTrack");
 
 				data = con->data;
-				data->tar = BASACT->object;
-				base->object->recalc |= OB_RECALC;
+				data->tar = obact;
+				ob->recalc |= OB_RECALC;
 				
 				/* Lamp and Camera track differently by default */
-				if (base->object->type == OB_LAMP || base->object->type == OB_CAMERA) {
+				if (ob->type == OB_LAMP || ob->type == OB_CAMERA) {
 					data->trackflag = TRACK_nZ;
 					data->lockflag = LOCK_Y;
 				}
 
-				add_constraint_to_object(con, base->object);
+				add_constraint_to_object(con, ob);
 			}
 		}
 		CTX_DATA_END;
 	}
 	else {
-		CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-			if(base!=BASACT) {
-				base->object->track= BASACT->object;
-				base->object->recalc |= OB_RECALC;
+		CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
+			if(ob!=obact) {
+				ob->track= obact;
+				ob->recalc |= OB_RECALC;
 			}
 		}
 		CTX_DATA_END;

Modified: trunk/blender/source/blender/editors/object/object_transform.c
===================================================================
--- trunk/blender/source/blender/editors/object/object_transform.c	2009-10-28 23:47:56 UTC (rev 24149)
+++ trunk/blender/source/blender/editors/object/object_transform.c	2009-10-29 09:14:20 UTC (rev 24150)
@@ -347,7 +347,6 @@
 {
 	Main *bmain= CTX_data_main(C);
 	Scene *scene= CTX_data_scene(C);
-	Object *ob;
 	bArmature *arm;
 	Mesh *me;
 	Curve *cu;
@@ -359,8 +358,7 @@
 	int a, change = 0;
 	
 	/* first check if we can execute */
-	CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-		ob= base->object;
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
 
 		if(ob->type==OB_MESH) {
 			me= ob->data;
@@ -394,8 +392,7 @@
 	CTX_DATA_END;
 	
 	/* now execute */
-	CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-		ob= base->object;
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
 
 		/* calculate rotation/scale matrix */
 		if(apply_scale && apply_rot)
@@ -669,7 +666,6 @@
 	ScrArea *sa= CTX_wm_area(C);
 	View3D *v3d= sa->spacedata.first;
 	Object *obedit= CTX_data_edit_object(C);
-	Object *ob;
 	Mesh *me, *tme;
 	Curve *cu;
 /*	BezTriple *bezt;
@@ -733,8 +729,8 @@
 	}
 	
 	/* reset flags */
-	CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-			base->object->flag &= ~OB_DONE;
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
+			ob->flag &= ~OB_DONE;
 	}
 	CTX_DATA_END;
 	
@@ -742,18 +738,18 @@
 		me->flag &= ~ME_ISDONE;
 	}
 	
-	CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-		if((base->object->flag & OB_DONE)==0) {
-			base->object->flag |= OB_DONE;
+	CTX_DATA_BEGIN(C, Object*, ob, selected_editable_objects) {
+		if((ob->flag & OB_DONE)==0) {
+			ob->flag |= OB_DONE;
 				
-			if(obedit==NULL && (me=get_mesh(base->object)) ) {
+			if(obedit==NULL && (me=get_mesh(ob)) ) {
 				if (me->id.lib) {
 					tot_lib_error++;
 				} else {
 					if(centermode==2) {
 						VECCOPY(cent, give_cursor(scene, v3d));
-						Mat4Invert(base->object->imat, base->object->obmat);
-						Mat4MulVecfl(base->object->imat, cent);
+						Mat4Invert(ob->imat, ob->obmat);
+						Mat4MulVecfl(ob->imat, cent);
 					} else {
 						INIT_MINMAX(min, max);
 						mvert= me->mvert;
@@ -785,37 +781,36 @@
 					me->flag |= ME_ISDONE;
 						
 					if(centermode) {
-						Mat3CpyMat4(omat, base->object->obmat);
+						Mat3CpyMat4(omat, ob->obmat);
 						
 						VECCOPY(centn, cent);
 						Mat3MulVecfl(omat, centn);
-						base->object->loc[0]+= centn[0];
-						base->object->loc[1]+= centn[1];
-						base->object->loc[2]+= centn[2];
+						ob->loc[0]+= centn[0];
+						ob->loc[1]+= centn[1];
+						ob->loc[2]+= centn[2];
 						
-						where_is_object(scene, base->object);
-						ignore_parent_tx(bmain, scene, base->object);
+						where_is_object(scene, ob);
+						ignore_parent_tx(bmain, scene, ob);
 						
 						/* other users? */
-						CTX_DATA_BEGIN(C, Base*, base, selected_editable_bases) {
-							ob = base->object;
-							if((ob->flag & OB_DONE)==0) {
-								tme= get_mesh(ob);
+						CTX_DATA_BEGIN(C, Object*, ob_other, selected_editable_objects) {
+							if((ob_other->flag & OB_DONE)==0) {
+								tme= get_mesh(ob_other);
 								
 								if(tme==me) {
 									
-									ob->flag |= OB_DONE;
-									ob->recalc= OB_RECALC_OB|OB_RECALC_DATA;
+									ob_other->flag |= OB_DONE;
+									ob_other->recalc= OB_RECALC_OB|OB_RECALC_DATA;
 
-									Mat3CpyMat4(omat, ob->obmat);
+									Mat3CpyMat4(omat, ob_other->obmat);
 									VECCOPY(centn, cent);
 									Mat3MulVecfl(omat, centn);
-									ob->loc[0]+= centn[0];
-									ob->loc[1]+= centn[1];
-									ob->loc[2]+= centn[2];
+									ob_other->loc[0]+= centn[0];
+									ob_other->loc[1]+= centn[1];
+									ob_other->loc[2]+= centn[2];
 									
-									where_is_object(scene, ob);
-									ignore_parent_tx(bmain, scene, ob);
+									where_is_object(scene, ob_other);
+									ignore_parent_tx(bmain, scene, ob_other);
 									
 									if(tme && (tme->flag & ME_ISDONE)==0) {
 										mvert= tme->mvert;
@@ -838,25 +833,23 @@
 									}
 								}
 							}
-							
-							ob= ob->id.next;
 						}
 						CTX_DATA_END;
 					}
 					tot_change++;
 				}
 			}

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list