diff options
author | Ton Roosendaal <ton@blender.org> | 2003-06-13 20:51:22 +0400 |
---|---|---|
committer | Ton Roosendaal <ton@blender.org> | 2003-06-13 20:51:22 +0400 |
commit | 2f56a9b0ca93e88370113c2981ad1a2cc8e7837e (patch) | |
tree | 4f8f3552c74bcccd70fbf0c0b669848d7791c6c8 /source | |
parent | 2b3bc332e42fdfbf3205efbc08fd8f98bce4dba1 (diff) |
- fixed bug #228
dispview mode now doesnt disappear immedately after render
oh, what i hated that one!
Diffstat (limited to 'source')
-rw-r--r-- | source/blender/src/mainqueue.c | 3 | ||||
-rw-r--r-- | source/blender/src/renderwin.c | 10 | ||||
-rw-r--r-- | source/blender/src/swapbuffers.c | 4 |
3 files changed, 9 insertions, 8 deletions
diff --git a/source/blender/src/mainqueue.c b/source/blender/src/mainqueue.c index 697eef1322a..012805db01d 100644 --- a/source/blender/src/mainqueue.c +++ b/source/blender/src/mainqueue.c @@ -135,8 +135,7 @@ void mainqenter_ext(unsigned short event, short val, char ascii) return; if (nevents<MAXQUEUE) { - memmove(mainqueue+1, mainqueue, sizeof(*mainqueue)*nevents); - + memmove(mainqueue+1, mainqueue, sizeof(*mainqueue)*nevents); mainqueue[0].event= event; mainqueue[0].val= val; mainqueue[0].ascii= ascii; diff --git a/source/blender/src/renderwin.c b/source/blender/src/renderwin.c index a8852751149..3d30dfff0af 100644 --- a/source/blender/src/renderwin.c +++ b/source/blender/src/renderwin.c @@ -596,10 +596,9 @@ static void renderview_progress_display_cb(int y1, int y2, int w, int h, unsigne glFlush(); glDrawBuffer(GL_BACK); - v3d->flag |= V3D_DISPIMAGE; - v3d->area->win_swap= WIN_FRONT_OK; + } } @@ -781,7 +780,8 @@ static void do_render(View3D *ogl_render_view3d, int anim, int force_dispwin) else { RE_initrender(ogl_render_view3d); } - update_for_newframe(); + + if(anim) update_for_newframe(); // only when anim, causes redraw event which frustrates dispview R.flag= 0; if (render_win) window_set_cursor(render_win->win, CURSOR_STD); @@ -791,7 +791,9 @@ static void do_render(View3D *ogl_render_view3d, int anim, int force_dispwin) G.afbreek= 0; end_test_break_callback(); - mainwindow_make_active(); + if (R.displaymode == R_DISPLAYWIN) // when in dispview it destroys the image + mainwindow_make_active(); + } /* finds area with a 'dispview' set */ diff --git a/source/blender/src/swapbuffers.c b/source/blender/src/swapbuffers.c index be3523e67ad..8cc25254a29 100644 --- a/source/blender/src/swapbuffers.c +++ b/source/blender/src/swapbuffers.c @@ -104,12 +104,12 @@ static void screen_swapbuffers_REDRAW(bScreen *sc) sa= sc->areabase.first; while(sa) { if(sa->win && (sa->win_swap & WIN_FRONT_OK)==0) break; - if(!sa->headertype) sa->head_swap= WIN_EQUAL; + if(sa->headertype==0) sa->head_swap= WIN_EQUAL; if((sa->head_swap & WIN_FRONT_OK)==0) break; sa= sa->next; } if(sa==0) return; - + sa= sc->areabase.first; while(sa) { swap= sa->win_swap; |