diff options
author | Joshua Leung <aligorith@gmail.com> | 2011-01-11 01:31:34 +0300 |
---|---|---|
committer | Joshua Leung <aligorith@gmail.com> | 2011-01-11 01:31:34 +0300 |
commit | ac4eb52abfafe1ca44dbaa1f20b356e272a3daf9 (patch) | |
tree | cbff57a36ea93e8e267351babde4c5f93e2bc94a /source/blender/editors/space_action | |
parent | cf25b10eb5bb61662ce0db6b3ef54a3e3e73a328 (diff) |
- Local Markers are now taken into account correctly for operators
that used markers. I might've missed a few still, but at least a few
more cases will work now
- Accidentally broke keyframe selection on group channels in gpencil
commit, after misreading a call name.
Diffstat (limited to 'source/blender/editors/space_action')
-rw-r--r-- | source/blender/editors/space_action/action_select.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/source/blender/editors/space_action/action_select.c b/source/blender/editors/space_action/action_select.c index ea9ef7f8ee6..1ae26421152 100644 --- a/source/blender/editors/space_action/action_select.c +++ b/source/blender/editors/space_action/action_select.c @@ -744,10 +744,10 @@ static void actkeys_mselect_single (bAnimContext *ac, bAnimListElem *ale, short ked.f1= selx; /* select the nominated keyframe on the given frame */ - if (ale->type == ANIMTYPE_FCURVE) - ANIM_animchannel_keyframes_loop(&ked, ale, ok_cb, select_cb, NULL, ds_filter); - else if (ale->type == ANIMTYPE_GPLAYER) + if (ale->type == ANIMTYPE_GPLAYER) select_gpencil_frame(ale->data, selx, select_mode); + else + ANIM_animchannel_keyframes_loop(&ked, ale, ok_cb, select_cb, NULL, ds_filter); } /* Option 2) Selects all the keyframes on either side of the current frame (depends on which side the mouse is on) */ @@ -806,14 +806,14 @@ static void actkeys_mselect_leftright (bAnimContext *ac, short leftright, short } /* Sync marker support */ - // FIXME: this doesn't work for local pose markers! - if ((select_mode==SELECT_ADD) && (ac->spacetype==SPACE_ACTION) && ELEM(leftright, ACTKEYS_LRSEL_LEFT, ACTKEYS_LRSEL_RIGHT)) { + if ((select_mode==SELECT_ADD) && ELEM(leftright, ACTKEYS_LRSEL_LEFT, ACTKEYS_LRSEL_RIGHT)) { SpaceAction *saction= ac->sa->spacedata.first; - if (saction && (saction->flag & SACTION_MARKERS_MOVE)) { + if ((saction) && (saction->flag & SACTION_MARKERS_MOVE)) { + ListBase *markers = ED_animcontext_get_markers(ac); TimeMarker *marker; - for (marker= scene->markers.first; marker; marker= marker->next) { + for (marker= markers->first; marker; marker= marker->next) { if( ((leftright == ACTKEYS_LRSEL_LEFT) && (marker->frame < CFRA)) || ((leftright == ACTKEYS_LRSEL_RIGHT) && (marker->frame >= CFRA)) ) { |