Commit: 7975c0d35ac51c915140c6ebd78c981f9e37549b
Author: Campbell Barton
Date:   Mon Feb 16 13:19:22 2015 +1100
Branches: master
https://developer.blender.org/rB7975c0d35ac51c915140c6ebd78c981f9e37549b

cleanup: split VSE view-size into own function

===================================================================

M       source/blender/editors/space_sequencer/sequencer_draw.c

===================================================================

diff --git a/source/blender/editors/space_sequencer/sequencer_draw.c 
b/source/blender/editors/space_sequencer/sequencer_draw.c
index 93eb5a1..b63c46c 100644
--- a/source/blender/editors/space_sequencer/sequencer_draw.c
+++ b/source/blender/editors/space_sequencer/sequencer_draw.c
@@ -952,6 +952,32 @@ static ImBuf *sequencer_make_scope(Scene *scene, ImBuf 
*ibuf, ImBuf *(*make_scop
        return scope;
 }
 
+static void sequencer_display_size(Scene *scene, SpaceSeq *sseq, float 
r_viewrect[2])
+{
+       float render_size, proxy_size;
+
+       if (sseq->render_size == SEQ_PROXY_RENDER_SIZE_SCENE) {
+               render_size = (float)scene->r.size / 100.0f;
+               proxy_size = 1.0f;
+       }
+       else {
+               render_size = (float)sseq->render_size / 100.0f;
+               proxy_size = render_size;
+       }
+
+       r_viewrect[0] = (render_size * (float)scene->r.xsch);
+       r_viewrect[1] = (render_size * (float)scene->r.ysch);
+
+       /* rectx = viewrectx + 0.5f; */ /* UNUSED */
+       /* recty = viewrecty + 0.5f; */ /* UNUSED */
+
+       if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) {
+               r_viewrect[0] *= scene->r.xasp / scene->r.yasp;
+               r_viewrect[0] /= proxy_size;
+               r_viewrect[1] /= proxy_size;
+       }
+}
+
 void draw_image_seq(const bContext *C, Scene *scene, ARegion *ar, SpaceSeq 
*sseq, int cfra, int frame_ofs, bool draw_overlay, bool draw_backdrop)
 {
        struct Main *bmain = CTX_data_main(C);
@@ -959,9 +985,7 @@ void draw_image_seq(const bContext *C, Scene *scene, 
ARegion *ar, SpaceSeq *sseq
        struct ImBuf *scope = NULL;
        struct View2D *v2d = &ar->v2d;
        /* int rectx, recty; */ /* UNUSED */
-       float viewrectx, viewrecty;
-       float render_size;
-       float proxy_size;
+       float viewrect[2];
        float col[3];
        GLuint texid;
        GLuint last_texid;
@@ -1007,28 +1031,7 @@ void draw_image_seq(const bContext *C, Scene *scene, 
ARegion *ar, SpaceSeq *sseq
        if (ibuf->rect == NULL && ibuf->rect_float == NULL)
                return;
 
-
-       if (sseq->render_size == SEQ_PROXY_RENDER_SIZE_SCENE) {
-               render_size = scene->r.size;
-               proxy_size = 100.0f;
-       }
-       else {
-               render_size = sseq->render_size;
-               proxy_size = render_size;
-       }
-
-       viewrectx = (render_size * (float)scene->r.xsch) / 100.0f;
-       viewrecty = (render_size * (float)scene->r.ysch) / 100.0f;
-
-       /* rectx = viewrectx + 0.5f; */ /* UNUSED */
-       /* recty = viewrecty + 0.5f; */ /* UNUSED */
-
-       if (sseq->mainb == SEQ_DRAW_IMG_IMBUF) {
-               viewrectx *= scene->r.xasp / scene->r.yasp;
-               viewrectx /= proxy_size / 100.0f;
-               viewrecty /= proxy_size / 100.0f;
-       }
-
+       sequencer_display_size(scene, sseq, viewrect);
 
        if (sseq->mainb != SEQ_DRAW_IMG_IMBUF || sseq->zebra != 0) {
                SequencerScopes *scopes = &sseq->scopes;
@@ -1076,8 +1079,8 @@ void draw_image_seq(const bContext *C, Scene *scene, 
ARegion *ar, SpaceSeq *sseq
                /* future files may have new scopes we don't catch above */
                if (scope) {
                        scopes->reference_ibuf = ibuf;
-                       viewrectx = scope->x;
-                       viewrecty = scope->y;
+                       viewrect[0] = scope->x;
+                       viewrect[1] = scope->y;
                }
                else {
                        scopes->reference_ibuf = NULL;
@@ -1088,7 +1091,7 @@ void draw_image_seq(const bContext *C, Scene *scene, 
ARegion *ar, SpaceSeq *sseq
        glColor4ub(255, 255, 255, 255);
 
        if (!draw_backdrop) {
-               UI_view2d_totRect_set(v2d, viewrectx + 0.5f, viewrecty + 0.5f);
+               UI_view2d_totRect_set(v2d, viewrect[0] + 0.5f, viewrect[1] + 
0.5f);
                UI_view2d_curRect_validate(v2d);
                
                /* setting up the view - actual drawing starts here */
@@ -1227,7 +1230,7 @@ void draw_image_seq(const bContext *C, Scene *scene, 
ARegion *ar, SpaceSeq *sseq
        }
        else if (draw_backdrop) {
                float aspect = BLI_rcti_size_x(&ar->winrct) / 
(float)BLI_rcti_size_y(&ar->winrct);      
-               float image_aspect = viewrectx / viewrecty;
+               float image_aspect = viewrect[0] / viewrect[1];
                float imagex, imagey;
                
                if (aspect >= image_aspect) {

_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to