diff options
author | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-08-12 17:24:29 +0400 |
---|---|---|
committer | Sergey Sharybin <sergey.vfx@gmail.com> | 2012-08-12 17:24:29 +0400 |
commit | 51fafdee0c650b991ba9bd65f488cfeba0339cdf (patch) | |
tree | faa795bd79a2b9fa0983885299010ac4a56177b5 /source/blender/editors/space_sequencer/space_sequencer.c | |
parent | ed564d7cb7f39853b2c79ac09cc9e010bd371576 (diff) |
Sequencer: overlay display type options
Before this overlay would happen only for defined rectangle area,
now it's possible to show current / reference frames only, which
makes it possible to do more real slit view involving even displaying
frames on different monitors.
Still some work need to be done to clean interface up and support
displaying color information for reference shot.
Diffstat (limited to 'source/blender/editors/space_sequencer/space_sequencer.c')
-rw-r--r-- | source/blender/editors/space_sequencer/space_sequencer.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/source/blender/editors/space_sequencer/space_sequencer.c b/source/blender/editors/space_sequencer/space_sequencer.c index 34ca26a3176..f7362aab7aa 100644 --- a/source/blender/editors/space_sequencer/space_sequencer.c +++ b/source/blender/editors/space_sequencer/space_sequencer.c @@ -487,13 +487,15 @@ static void sequencer_preview_area_draw(const bContext *C, ARegion *ar) ScrArea *sa = CTX_wm_area(C); SpaceSeq *sseq = sa->spacedata.first; Scene *scene = CTX_data_scene(C); + int show_split = scene->ed && scene->ed->over_flag & SEQ_EDIT_OVERLAY_SHOW && sseq->mainb == SEQ_DRAW_IMG_IMBUF; /* XXX temp fix for wrong setting in sseq->mainb */ if (sseq->mainb == SEQ_DRAW_SEQUENCE) sseq->mainb = SEQ_DRAW_IMG_IMBUF; - draw_image_seq(C, scene, ar, sseq, scene->r.cfra, 0); + if (!show_split || sseq->overlay_type != SEQ_DRAW_OVERLAY_REFERENCE) + draw_image_seq(C, scene, ar, sseq, scene->r.cfra, 0, FALSE); - if (scene->ed && scene->ed->over_flag & SEQ_EDIT_OVERLAY_SHOW && sseq->mainb == SEQ_DRAW_IMG_IMBUF) { + if (show_split && sseq->overlay_type != SEQ_DRAW_OVERLAY_CURRENT) { int over_cfra; if (scene->ed->over_flag & SEQ_EDIT_OVERLAY_ABS) @@ -501,8 +503,8 @@ static void sequencer_preview_area_draw(const bContext *C, ARegion *ar) else over_cfra = scene->r.cfra + scene->ed->over_ofs; - if (over_cfra != scene->r.cfra) - draw_image_seq(C, scene, ar, sseq, scene->r.cfra, over_cfra - scene->r.cfra); + if (over_cfra != scene->r.cfra || sseq->overlay_type != SEQ_DRAW_OVERLAY_RECT) + draw_image_seq(C, scene, ar, sseq, scene->r.cfra, over_cfra - scene->r.cfra, TRUE); } } |