diff options
author | Ton Roosendaal <ton@blender.org> | 2006-04-17 21:35:20 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2006-04-17 21:35:20 +0400 |
commit | 5768e9a9dda8ec941195f0e978549a0e31b0caf4 (patch) | |
tree | 127cbbfb3b9fd982bbc6ae3f0acfec25c370304a /source/blender/src/editipo.c | |
parent | 420b6ba5e471fa224f30d1c254b2e4733a3c0e32 (diff) |
Bugfix #3683
When the 'reference shape key' (drawn yellow) was not the first key, the
channels as drawn in IpoWindow didn't match the actual shape keys.
This was caused by an exception in code that skips drawing the reference
shape when 'relative' was used.
Now I've added a rule that the first shape in a list always becomes the
reference, that way you can also edit it. To keep backwards compatibility,
this is only activated on translating the shape key lines.
Diffstat (limited to 'source/blender/src/editipo.c')
-rw-r--r-- | source/blender/src/editipo.c | 14 |
1 files changed, 2 insertions, 12 deletions
diff --git a/source/blender/src/editipo.c b/source/blender/src/editipo.c index c119f1a5e06..52734faa99c 100644 --- a/source/blender/src/editipo.c +++ b/source/blender/src/editipo.c @@ -527,18 +527,8 @@ static void make_key_editipo(SpaceIpo *si) si->totipo= BLI_countlist(&key->block); ei= si->editipo= MEM_callocN(si->totipo*sizeof(EditIpo), "editipo"); - for(a=0; a<si->totipo; a++, ei++) { - /* we put refkey first, the rest in order of list */ - if(a==0) kb= key->refkey; - else { - if(a==1) - kb= key->block.first; - else - kb= kb->next; - if(kb==key->refkey) - kb= kb->next; - } - + for(a=0, kb= key->block.first; a<si->totipo; a++, ei++, kb= kb->next) { + if(kb->name[0] != 0) strncpy(ei->name, kb->name, 31); // length both same ei->adrcode= kb->adrcode; |