[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [13303] trunk/blender/source/blender/src/ editaction.c: Bugfix for Action-Groups:

Joshua Leung aligorith at gmail.com
Sun Jan 20 04:16:21 CET 2008


Revision: 13303
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=13303
Author:   aligorith
Date:     2008-01-20 04:16:19 +0100 (Sun, 20 Jan 2008)

Log Message:
-----------
Bugfix for Action-Groups:

The way the end of a group's channels was being detected was wrong in many places, resulting in the group's last channel often being skipped.

Modified Paths:
--------------
    trunk/blender/source/blender/src/editaction.c

Modified: trunk/blender/source/blender/src/editaction.c
===================================================================
--- trunk/blender/source/blender/src/editaction.c	2008-01-20 02:55:35 UTC (rev 13302)
+++ trunk/blender/source/blender/src/editaction.c	2008-01-20 03:16:19 UTC (rev 13303)
@@ -1390,7 +1390,7 @@
 			
 			/* remove if group is selected */
 			if (SEL_AGRP(agrp)) {
-				for (chan= agrp->channels.first; chan && chan!=agrp->channels.last; chan= nchan) {
+				for (chan= agrp->channels.first; chan && chan->grp==agrp; chan= nchan) {
 					nchan= chan->next;
 					
 					action_groups_removeachan(act, chan);
@@ -2893,7 +2893,7 @@
 					bActionChannel *achan;
 					bConstraintChannel *conchan;
 					
-					for (achan= agrp->channels.first; achan && achan!=agrp->channels.last; achan= achan->next) {
+					for (achan= agrp->channels.first; achan && achan->grp==agrp; achan= achan->next) {
 						borderselect_ipo_key(achan->ipo, rectf.xmin, rectf.xmax, selectmode);
 						
 						for (conchan=achan->constraintChannels.first; conchan; conchan=conchan->next)
@@ -2914,7 +2914,7 @@
 						bActionChannel *achan;
 						bConstraintChannel *conchan;
 						
-						for (achan= agrp->channels.first; achan && achan!=agrp->channels.last; achan= achan->next) {
+						for (achan= agrp->channels.first; achan && achan->grp==agrp; achan= achan->next) {
 							select_ipo_bezier_keys(achan->ipo, selectmode);
 							
 							for (conchan=achan->constraintChannels.first; conchan; conchan=conchan->next)
@@ -2936,7 +2936,7 @@
 						bActionChannel *achan;
 						bConstraintChannel *conchan;
 						
-						for (achan= agrp->channels.first; achan && achan!=agrp->channels.last; achan= achan->next) {
+						for (achan= agrp->channels.first; achan && achan->grp==agrp; achan= achan->next) {
 							select_ipo_bezier_keys(achan->ipo, selectmode);
 							
 							for (conchan=achan->constraintChannels.first; conchan; conchan=conchan->next)
@@ -3087,7 +3087,7 @@
 		else if (achan)
 			select_ipo_key(achan->ipo, selx, selectmode);
 		else if (agrp) {
-			for (achan= agrp->channels.first; achan && achan!=agrp->channels.last; achan= achan->next) {
+			for (achan= agrp->channels.first; achan && achan->grp==agrp; achan= achan->next) {
 				select_ipo_key(achan->ipo, selx, selectmode);
 				
 				for (conchan=achan->constraintChannels.first; conchan; conchan=conchan->next)





More information about the Bf-blender-cvs mailing list