[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [18124] branches/blender2.5/blender/source /blender/windowmanager/intern/wm_window.c: 2.5
Andrea Weikert
elubie at gmx.net
Sun Dec 28 16:28:11 CET 2008
Revision: 18124
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=18124
Author: elubie
Date: 2008-12-28 16:28:09 +0100 (Sun, 28 Dec 2008)
Log Message:
-----------
2.5
fix for win32 firing size event with undefined size.
Modified Paths:
--------------
branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c
Modified: branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c
===================================================================
--- branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c 2008-12-28 14:41:33 UTC (rev 18123)
+++ branches/blender2.5/blender/source/blender/windowmanager/intern/wm_window.c 2008-12-28 15:28:09 UTC (rev 18124)
@@ -447,47 +447,51 @@
}
case GHOST_kEventWindowSize:
case GHOST_kEventWindowMove: {
- GHOST_RectangleHandle client_rect;
- int l, t, r, b, scr_w, scr_h;
-
- client_rect= GHOST_GetClientBounds(win->ghostwin);
- GHOST_GetRectangle(client_rect, &l, &t, &r, &b);
-
- GHOST_DisposeRectangle(client_rect);
-
- wm_get_screensize(&scr_w, &scr_h);
- win->sizex= r-l;
- win->sizey= b-t;
- win->posx= l;
- win->posy= scr_h - t - win->sizey;
+ GHOST_TWindowState state;
+ state = GHOST_GetWindowState(win->ghostwin);
- /* debug prints */
- if(0) {
- GHOST_TWindowState state;
- state = GHOST_GetWindowState(win->ghostwin);
+ /* win32: gives undefined window size when minimized */
+ if(state!=GHOST_kWindowStateMinimized) {
+ GHOST_RectangleHandle client_rect;
+ int l, t, r, b, scr_w, scr_h;
+
+ client_rect= GHOST_GetClientBounds(win->ghostwin);
+ GHOST_GetRectangle(client_rect, &l, &t, &r, &b);
+
+ GHOST_DisposeRectangle(client_rect);
+
+ wm_get_screensize(&scr_w, &scr_h);
+ win->sizex= r-l;
+ win->sizey= b-t;
+ win->posx= l;
+ win->posy= scr_h - t - win->sizey;
- if(state==GHOST_kWindowStateNormal) {
- if(G.f & G_DEBUG) printf("window state: normal\n");
+ /* debug prints */
+ if(0) {
+ state = GHOST_GetWindowState(win->ghostwin);
+
+ if(state==GHOST_kWindowStateNormal) {
+ if(G.f & G_DEBUG) printf("window state: normal\n");
+ }
+ else if(state==GHOST_kWindowStateMinimized) {
+ if(G.f & G_DEBUG) printf("window state: minimized\n");
+ }
+ else if(state==GHOST_kWindowStateMaximized) {
+ if(G.f & G_DEBUG) printf("window state: maximized\n");
+ }
+ else if(state==GHOST_kWindowStateFullScreen) {
+ if(G.f & G_DEBUG) printf("window state: fullscreen\n");
+ }
+
+ if(type!=GHOST_kEventWindowSize) {
+ if(G.f & G_DEBUG) printf("win move event pos %d %d size %d %d\n", win->posx, win->posy, win->sizex, win->sizey);
+ }
+
}
- else if(state==GHOST_kWindowStateMinimized) {
- if(G.f & G_DEBUG) printf("window state: minimized\n");
- }
- else if(state==GHOST_kWindowStateMaximized) {
- if(G.f & G_DEBUG) printf("window state: maximized\n");
- }
- else if(state==GHOST_kWindowStateFullScreen) {
- if(G.f & G_DEBUG) printf("window state: fullscreen\n");
- }
-
- if(type!=GHOST_kEventWindowSize) {
- if(G.f & G_DEBUG) printf("win move event pos %d %d size %d %d\n", win->posx, win->posy, win->sizex, win->sizey);
- }
-
+
+ wm_window_make_drawable(C, win);
+ WM_event_add_notifier(C, NC_SCREEN|NA_EDITED, NULL);
}
-
- wm_window_make_drawable(C, win);
- WM_event_add_notifier(C, NC_SCREEN|NA_EDITED, NULL);
-
break;
}
default:
More information about the Bf-blender-cvs
mailing list