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>2010-01-10 23:23:59 +0300
committerCampbell Barton <ideasman42@gmail.com>2010-01-10 23:23:59 +0300
commit0185e248619b883aa818d136ee1b8bd4bfa9f8ef (patch)
tree86e0f20ae1be2f681735b2d21224b582f56610ba /source/blender/blenkernel/intern/anim_sys.c
parent6a15ac70b6558873dc15aa2172024477362fc33f (diff)
Make linked animdata working again, copies NLA too, as well as ObData animdata where types match
Diffstat (limited to 'source/blender/blenkernel/intern/anim_sys.c')
-rw-r--r--source/blender/blenkernel/intern/anim_sys.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/source/blender/blenkernel/intern/anim_sys.c b/source/blender/blenkernel/intern/anim_sys.c
index 8b86f6a5d1f..2a5a12cc513 100644
--- a/source/blender/blenkernel/intern/anim_sys.c
+++ b/source/blender/blenkernel/intern/anim_sys.c
@@ -203,6 +203,26 @@ AnimData *BKE_copy_animdata (AnimData *adt)
return dadt;
}
+int BKE_copy_animdata_id(struct ID *id_to, struct ID *id_from)
+{
+ AnimData *adt;
+
+ if((id_to && id_from) && (GS(id_to->name) != GS(id_from->name)))
+ return 0;
+
+ BKE_free_animdata(id_to);
+
+ adt = BKE_animdata_from_id(id_from);
+ if (adt) {
+ IdAdtTemplate *iat = (IdAdtTemplate *)id_to;
+ iat->adt= BKE_copy_animdata(adt);
+ }
+
+ return 1;
+}
+
+
+
/* Make Local -------------------------------------------- */
static void make_local_strips(ListBase *strips)