[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