From bafc50df9b826851bd2e6ccaa5ef6665cd3cee29 Mon Sep 17 00:00:00 2001 From: Joshua Leung Date: Tue, 20 Mar 2007 11:11:32 +0000 Subject: [PATCH] NLA: Some more action channel protection stuff --- source/blender/src/editnla.c | 27 ++++++++++++++++----------- 1 file changed, 16 insertions(+), 11 deletions(-) diff --git a/source/blender/src/editnla.c b/source/blender/src/editnla.c index 4b3f4cca4b4..a3d46c19bc7 100644 --- a/source/blender/src/editnla.c +++ b/source/blender/src/editnla.c @@ -825,12 +825,14 @@ void transform_nlachannel_keys(int mode, int dummy) i= fullselect_ipo_keys(chan->ipo); if(i) base->flag |= BA_HAS_RECALC_OB|BA_HAS_RECALC_DATA; tvtot+=i; - } - - /* Check action constraint ipos */ - for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { - if (EDITABLE_CONCHAN(conchan)) - tvtot+=fullselect_ipo_keys(conchan->ipo); + + /* Check action constraint ipos */ + if (EXPANDED_ACHAN(chan)) { + for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { + if (EDITABLE_CONCHAN(conchan)) + tvtot+=fullselect_ipo_keys(conchan->ipo); + } + } } } } @@ -877,13 +879,16 @@ void transform_nlachannel_keys(int mode, int dummy) /* can include - no selected strip is action */ if(strip==NULL) { for (chan=base->object->action->chanbase.first; chan; chan=chan->next){ - if (EDITABLE_ACHAN(chan)) + if (EDITABLE_ACHAN(chan)) { tvtot=add_trans_ipo_keys(chan->ipo, tv, tvtot); - /* Manipulate action constraint ipos */ - for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { - if (EDITABLE_CONCHAN(conchan)) - tvtot=add_trans_ipo_keys(conchan->ipo, tv, tvtot); + /* Manipulate action constraint ipos */ + if (EXPANDED_ACHAN(chan)) { + for (conchan=chan->constraintChannels.first; conchan; conchan=conchan->next) { + if (EDITABLE_CONCHAN(conchan)) + tvtot=add_trans_ipo_keys(conchan->ipo, tv, tvtot); + } + } } } }