Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCampbell Barton <ideasman42@gmail.com>2012-04-16 12:04:12 +0400
committerCampbell Barton <ideasman42@gmail.com>2012-04-16 12:04:12 +0400
commit52023f9e88f7859c75720cf175e74635a83b05c7 (patch)
treefffa03258eecc95e3117e802d849a809c9e2c21c /source/blender
parent0635f8101c98d74da729d464472a4d9efa09337f (diff)
bmesh todos:
- curve undo now runs ED_curve_updateAnimPaths() again. - comment out unneeded index setting.
Diffstat (limited to 'source/blender')
-rw-r--r--source/blender/bmesh/operators/bmo_dissolve.c2
-rw-r--r--source/blender/bmesh/operators/bmo_mirror.c4
-rw-r--r--source/blender/editors/curve/editcurve.c42
-rw-r--r--source/blender/editors/include/ED_curve.h2
4 files changed, 20 insertions, 30 deletions
diff --git a/source/blender/bmesh/operators/bmo_dissolve.c b/source/blender/bmesh/operators/bmo_dissolve.c
index 7edacb45b34..29796b7dac4 100644
--- a/source/blender/bmesh/operators/bmo_dissolve.c
+++ b/source/blender/bmesh/operators/bmo_dissolve.c
@@ -52,7 +52,7 @@ static int UNUSED_FUNCTION(check_hole_in_region)(BMesh *bm, BMFace *f)
BMW_init(&regwalker, bm, BMW_ISLAND,
BMW_MASK_NOP, BMW_MASK_NOP, FACE_MARK,
- BMW_FLAG_NOP, /* BMESH_TODO - should be BMW_FLAG_TEST_HIDDEN ? */
+ BMW_FLAG_NOP,
BMW_NIL_LAY);
f2 = BMW_begin(&regwalker, f);
diff --git a/source/blender/bmesh/operators/bmo_mirror.c b/source/blender/bmesh/operators/bmo_mirror.c
index 28c9c53fa8a..1b6d64073c0 100644
--- a/source/blender/bmesh/operators/bmo_mirror.c
+++ b/source/blender/bmesh/operators/bmo_mirror.c
@@ -73,11 +73,7 @@ void bmo_mirror_exec(BMesh *bm, BMOperator *op)
BMO_ITER(v, &siter, bm, &dupeop, "newout", BM_VERT) {
BLI_array_growone(vmap);
vmap[i] = v;
-
- /* BMESH_TODO, double check this is being used, calling following operators will overwrite anyway - campbell */
- BM_elem_index_set(v2, i); /* set_dirty! */
v2 = BM_iter_step(&iter);
-
i++;
}
bm->elem_index_dirty |= BM_VERT;
diff --git a/source/blender/editors/curve/editcurve.c b/source/blender/editors/curve/editcurve.c
index 9190cd940d6..2e9aa8ec675 100644
--- a/source/blender/editors/curve/editcurve.c
+++ b/source/blender/editors/curve/editcurve.c
@@ -1015,9 +1015,8 @@ static void calc_shapeKeys(Object *obedit)
/* ********************* Amimation data *************** */
-static int curve_is_animated(Object *ob)
+static int curve_is_animated(Curve *cu)
{
- Curve *cu= (Curve*)ob->data;
AnimData *ad= BKE_animdata_from_id(&cu->id);
return ad && (ad->action || ad->drivers.first);
@@ -1063,10 +1062,9 @@ static void fcurve_remove(AnimData *ad, ListBase *orig_curves, FCurve *fcu)
free_fcurve(fcu);
}
-static void curve_rename_fcurves(Object *obedit, ListBase *orig_curves)
+static void curve_rename_fcurves(Curve *cu, ListBase *orig_curves)
{
int nu_index= 0, a, pt_index;
- Curve *cu= (Curve*)obedit->data;
EditNurb *editnurb= cu->editnurb;
Nurb *nu= editnurb->nurbs.first;
CVKeyIndex *keyIndex;
@@ -1178,17 +1176,16 @@ static void curve_rename_fcurves(Object *obedit, ListBase *orig_curves)
}
/* return 0 if animation data wasn't changed, 1 otherwise */
-int ED_curve_updateAnimPaths(Object *obedit)
+int ED_curve_updateAnimPaths(Curve *cu)
{
- Curve *cu= (Curve*)obedit->data;
AnimData *ad= BKE_animdata_from_id(&cu->id);
- if (!curve_is_animated(obedit)) return 0;
+ if (!curve_is_animated(cu)) return 0;
if (ad->action)
- curve_rename_fcurves(obedit, &ad->action->curves);
+ curve_rename_fcurves(cu, &ad->action->curves);
- curve_rename_fcurves(obedit, &ad->drivers);
+ curve_rename_fcurves(cu, &ad->drivers);
return 1;
}
@@ -1221,7 +1218,7 @@ void load_editNurb(Object *obedit)
cu->nurb= newnurb;
calc_shapeKeys(obedit);
- ED_curve_updateAnimPaths(obedit);
+ ED_curve_updateAnimPaths(obedit->data);
freeNurblist(&oldnurb);
}
@@ -1702,7 +1699,7 @@ static int deleteflagNurb(bContext *C, wmOperator *UNUSED(op), int flag)
nu= next;
}
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
return OPERATOR_FINISHED;
@@ -2017,7 +2014,7 @@ static int switch_direction_exec(bContext *C, wmOperator *UNUSED(op))
keyData_switchDirectionNurb(cu, nu);
}
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
DAG_id_tag_update(obedit->data, 0);
@@ -3191,7 +3188,7 @@ static int subdivide_exec(bContext *C, wmOperator *op)
subdividenurb(obedit, number_cuts);
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
@@ -3512,7 +3509,7 @@ static int set_spline_type_exec(bContext *C, wmOperator *op)
}
if (changed) {
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
DAG_id_tag_update(obedit->data, 0);
@@ -4104,7 +4101,7 @@ static int make_segment_exec(bContext *C, wmOperator *op)
return OPERATOR_CANCELLED;
}
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
@@ -4323,7 +4320,7 @@ static int spin_exec(bContext *C, wmOperator *op)
return OPERATOR_CANCELLED;
}
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
@@ -4626,7 +4623,7 @@ static int addvert_Nurb(bContext *C, short mode, float location[3])
if (ok) {
test2DNurb(nu);
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
@@ -4719,7 +4716,7 @@ static int extrude_exec(bContext *C, wmOperator *UNUSED(op))
}
else {
if (extrudeflagNurb(editnurb, 1)) { /* '1'= flag */
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
@@ -5640,7 +5637,7 @@ static int delete_exec(bContext *C, wmOperator *op)
keyIndex_delNurbList(editnurb, nubase);
freeNurblist(nubase);
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
}
@@ -5941,7 +5938,7 @@ static int delete_exec(bContext *C, wmOperator *op)
freeNurblist(nubase);
}
- if (ED_curve_updateAnimPaths(obedit))
+ if (ED_curve_updateAnimPaths(obedit->data))
WM_event_add_notifier(C, NC_OBJECT|ND_KEYS, obedit);
WM_event_add_notifier(C, NC_GEOM|ND_DATA, obedit->data);
@@ -6987,10 +6984,7 @@ static void undoCurve_to_editCurve(void *ucu, void *UNUSED(edata), void *cu_v)
cu->lastsel= lastsel;
cu->actnu= undoCurve->actnu;
- /* BMESH_TODO */
-#if 0
- ED_curve_updateAnimPaths(obedit);
-#endif
+ ED_curve_updateAnimPaths(cu);
}
static void *editCurve_to_undoCurve(void *UNUSED(edata), void *cu_v)
diff --git a/source/blender/editors/include/ED_curve.h b/source/blender/editors/include/ED_curve.h
index bffb5543460..50e43c46de5 100644
--- a/source/blender/editors/include/ED_curve.h
+++ b/source/blender/editors/include/ED_curve.h
@@ -87,7 +87,7 @@ int CU_select_nth(struct Object *obedit, int nth);
void ED_curve_beztcpy(struct EditNurb *editnurb, struct BezTriple *dst, struct BezTriple *src, int count);
void ED_curve_bpcpy(struct EditNurb *editnurb, struct BPoint *dst, struct BPoint *src, int count);
-int ED_curve_updateAnimPaths(struct Object *obedit);
+int ED_curve_updateAnimPaths(struct Curve *cu);
int ED_curve_actSelection(struct Curve *cu, float center[3]);