diff options
author | Campbell Barton <ideasman42@gmail.com> | 2012-06-26 14:14:50 +0400 |
---|---|---|
committer | Campbell Barton <ideasman42@gmail.com> | 2012-06-26 14:14:50 +0400 |
commit | 79ab7f95f90aba459a3b3882c52b31e01250e6b1 (patch) | |
tree | 436a5a89b1a787d7533de68a06d93c35c851cdb6 /source/blender/editors/animation | |
parent | cd6ed0bee5c1bc7b73eae5f869b13b121aa00a4b (diff) |
mask and grease pencil now display in the dope sheet summery
Diffstat (limited to 'source/blender/editors/animation')
-rw-r--r-- | source/blender/editors/animation/anim_filter.c | 6 | ||||
-rw-r--r-- | source/blender/editors/animation/keyframes_draw.c | 12 |
2 files changed, 14 insertions, 4 deletions
diff --git a/source/blender/editors/animation/anim_filter.c b/source/blender/editors/animation/anim_filter.c index 46e1eb98dae..a6d1ac64bbe 100644 --- a/source/blender/editors/animation/anim_filter.c +++ b/source/blender/editors/animation/anim_filter.c @@ -2397,13 +2397,15 @@ size_t ANIM_animdata_filter(bAnimContext *ac, ListBase *anim_data, int filter_mo case ANIMCONT_GPENCIL: { - items = animdata_filter_gpencil(anim_data, data, filter_mode); + if (animdata_filter_dopesheet_summary(ac, anim_data, filter_mode, &items)) + items = animdata_filter_gpencil(anim_data, data, filter_mode); } break; case ANIMCONT_MASK: { - items = animdata_filter_mask(anim_data, data, filter_mode); + if (animdata_filter_dopesheet_summary(ac, anim_data, filter_mode, &items)) + items = animdata_filter_mask(anim_data, data, filter_mode); } break; diff --git a/source/blender/editors/animation/keyframes_draw.c b/source/blender/editors/animation/keyframes_draw.c index e6fc4d5a168..46a89963ad9 100644 --- a/source/blender/editors/animation/keyframes_draw.c +++ b/source/blender/editors/animation/keyframes_draw.c @@ -847,9 +847,17 @@ void summary_to_keylist(bAnimContext *ac, DLRBT_Tree *keys, DLRBT_Tree *blocks) ANIM_animdata_filter(ac, &anim_data, filter, ac->data, ac->datatype); /* loop through each F-Curve, grabbing the keyframes */ - for (ale = anim_data.first; ale; ale = ale->next) + for (ale = anim_data.first; ale; ale = ale->next) { fcurve_to_keylist(ale->adt, ale->data, keys, blocks); - + + if (ale->datatype == ALE_MASKLAY) { + mask_to_keylist(ac->ads, ale->data, keys); + } + else if (ale->datatype == ALE_GPFRAME) { + gpl_to_keylist(ac->ads, ale->data, keys); + } + } + BLI_freelistN(&anim_data); } } |