[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [25451] trunk/blender/source/blender/ windowmanager: Fix #19431: gestures would sometimes draw incorrect, now ensures they
Brecht Van Lommel
brecht at blender.org
Thu Dec 17 20:55:08 CET 2009
Revision: 25451
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25451
Author: blendix
Date: 2009-12-17 20:55:08 +0100 (Thu, 17 Dec 2009)
Log Message:
-----------
Fix #19431: gestures would sometimes draw incorrect, now ensures they
are always drawn in pixel space.
Modified Paths:
--------------
trunk/blender/source/blender/windowmanager/WM_api.h
trunk/blender/source/blender/windowmanager/intern/wm_draw.c
trunk/blender/source/blender/windowmanager/intern/wm_gesture.c
trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c
Modified: trunk/blender/source/blender/windowmanager/WM_api.h
===================================================================
--- trunk/blender/source/blender/windowmanager/WM_api.h 2009-12-17 19:48:30 UTC (rev 25450)
+++ trunk/blender/source/blender/windowmanager/WM_api.h 2009-12-17 19:55:08 UTC (rev 25451)
@@ -264,6 +264,7 @@
void wmFrustum (float x1, float x2, float y1, float y2, float n, float f);
void wmOrtho (float x1, float x2, float y1, float y2, float n, float f);
void wmOrtho2 (float x1, float x2, float y1, float y2);
+void wmOrthoPixelSpace (void);
/* utilities */
void WM_set_framebuffer_index_color(int index);
Modified: trunk/blender/source/blender/windowmanager/intern/wm_draw.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_draw.c 2009-12-17 19:48:30 UTC (rev 25450)
+++ trunk/blender/source/blender/windowmanager/intern/wm_draw.c 2009-12-17 19:55:08 UTC (rev 25451)
@@ -585,7 +585,7 @@
}
}
- if(win->screen->do_draw_gesture)
+ if(screen->do_draw_gesture)
wm_gesture_draw(win);
if(wm->paintcursors.first) {
Modified: trunk/blender/source/blender/windowmanager/intern/wm_gesture.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_gesture.c 2009-12-17 19:48:30 UTC (rev 25450)
+++ trunk/blender/source/blender/windowmanager/intern/wm_gesture.c 2009-12-17 19:55:08 UTC (rev 25451)
@@ -248,6 +248,7 @@
for(; gt; gt= gt->next) {
/* all in subwindow space */
wmSubWindowSet(win, gt->swinid);
+ wmOrthoPixelSpace();
if(gt->type==WM_GESTURE_RECT)
wm_gesture_draw_rect(win, gt);
Modified: trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c
===================================================================
--- trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c 2009-12-17 19:48:30 UTC (rev 25450)
+++ trunk/blender/source/blender/windowmanager/intern/wm_subwindow.c 2009-12-17 19:55:08 UTC (rev 25451)
@@ -405,7 +405,17 @@
wmOrtho(x1, x2, y1, y2, -100, 100);
}
+void wmOrthoPixelSpace(void)
+{
+ if(_curswin) {
+ int width, height;
+ wm_subwindow_getsize(_curwindow, _curswin->swinid, &width, &height);
+ wmOrtho2(-0.375, (float)width-0.375, -0.375, (float)height-0.375);
+ wmLoadIdentity();
+ }
+}
+
/* *************************** Framebuffer color depth, for selection codes ********************** */
static int wm_get_colordepth(void)
More information about the Bf-blender-cvs
mailing list