Accept SIZE_MAXIMIZED as one of statuses of MDI windows

Dmitry Timoshkov dmitry at baikal.ru
Sat Aug 2 09:50:29 CDT 2003


Hello,

Changelog:
    Dmitry Timoshkov <dmitry at codeweavers.com>
    Accept SIZE_MAXIMIZED as one of statuses of MDI windows.

--- cvs/hq/wine/dlls/comctl32/status.c	Thu Jan  9 20:46:02 2003
+++ wine/dlls/comctl32/status.c	Sat Aug  2 23:17:44 2003
@@ -884,7 +884,7 @@ STATUSBAR_WMCreate (HWND hwnd, LPCREATES
         if (GetWindowLongW (lpCreate->hwndParent, GWL_EXSTYLE) & WS_EX_MANAGED)
             SetWindowLongW (hwnd, GWL_STYLE, dwStyle & ~SBARS_SIZEGRIP);
 
-    if ((hdc = GetDC (0))) {
+    if ((hdc = GetDC (hwnd))) {
 	TEXTMETRICW tm;
 	HFONT hOldFont;
 
@@ -892,7 +892,7 @@ STATUSBAR_WMCreate (HWND hwnd, LPCREATES
 	GetTextMetricsW (hdc, &tm);
 	textHeight = tm.tmHeight;
 	SelectObject (hdc, hOldFont);
-	ReleaseDC (0, hdc);
+	ReleaseDC (hwnd, hdc);
     }
     TRACE("    textHeight=%d\n", textHeight);
 
@@ -1059,10 +1059,12 @@ STATUSBAR_WMSize (STATUSWINDOWINFO *info
     /* Need to resize width to match parent */
     TRACE("flags %04x\n", flags);
 
-    if (flags != SIZE_RESTORED) {
-	WARN("flags MUST be SIZE_RESTORED\n");
+    if (flags != SIZE_RESTORED && flags != SIZE_MAXIMIZED)
+    {
+	WARN("flags MUST be SIZE_RESTORED or SIZE_MAXIMIZED\n");
 	return FALSE;
     }
+
     if (GetWindowLongW(infoPtr->Self, GWL_STYLE) & CCS_NORESIZE) return FALSE;
 
     /* width and height don't apply */
@@ -1070,9 +1072,10 @@ STATUSBAR_WMSize (STATUSWINDOWINFO *info
     width = parent_rect.right - parent_rect.left;
     x = parent_rect.left;
     y = parent_rect.bottom - infoPtr->height;
-    MoveWindow (infoPtr->Self, parent_rect.left,
-		parent_rect.bottom - infoPtr->height,
-		width, infoPtr->height, TRUE);
+    SetWindowPos(infoPtr->Self, HWND_TOP,
+                 parent_rect.left, parent_rect.bottom - infoPtr->height,
+                 width, infoPtr->height, SWP_NOZORDER);
+
     STATUSBAR_SetPartBounds (infoPtr);
     return TRUE;
 }






More information about the wine-patches mailing list