From df068a3bdb458b611abefb2cdf82b110b20e973c Mon Sep 17 00:00:00 2001 From: Thomas Bluemel Date: Sat, 20 Dec 2003 22:33:45 +0000 Subject: [PATCH] DefWndHandleSetCursor() sets default cursor for maximized windows' borders svn path=/trunk/; revision=7150 --- reactos/lib/user32/windows/defwnd.c | 28 +++++++++++++++++++++++----- 1 file changed, 23 insertions(+), 5 deletions(-) diff --git a/reactos/lib/user32/windows/defwnd.c b/reactos/lib/user32/windows/defwnd.c index e5982b3a937..f2f0352f3f5 100644 --- a/reactos/lib/user32/windows/defwnd.c +++ b/reactos/lib/user32/windows/defwnd.c @@ -1,4 +1,4 @@ -/* $Id: defwnd.c,v 1.111 2003/12/19 23:20:05 weiden Exp $ +/* $Id: defwnd.c,v 1.112 2003/12/20 22:33:45 weiden Exp $ * * COPYRIGHT: See COPYING in the top level directory * PROJECT: ReactOS user32.dll @@ -283,7 +283,7 @@ DefWndSetRedraw(HWND hWnd, WPARAM wParam) LRESULT -DefWndHandleSetCursor(HWND hWnd, WPARAM wParam, LPARAM lParam) +DefWndHandleSetCursor(HWND hWnd, WPARAM wParam, LPARAM lParam, ULONG Style) { /* Not for child windows. */ if (hWnd != (HWND)wParam) @@ -318,24 +318,40 @@ DefWndHandleSetCursor(HWND hWnd, WPARAM wParam, LPARAM lParam) case HTLEFT: case HTRIGHT: { + if (Style & WS_MAXIMIZE) + { + break; + } return((LRESULT)SetCursor(LoadCursorW(0, IDC_SIZEWE))); } case HTTOP: case HTBOTTOM: { + if (Style & WS_MAXIMIZE) + { + break; + } return((LRESULT)SetCursor(LoadCursorW(0, IDC_SIZENS))); } case HTTOPLEFT: case HTBOTTOMRIGHT: { + if (Style & WS_MAXIMIZE) + { + break; + } return((LRESULT)SetCursor(LoadCursorW(0, IDC_SIZENWSE))); } case HTBOTTOMLEFT: case HTTOPRIGHT: { + if (GetWindowLongW(hWnd, GWL_STYLE) & WS_MAXIMIZE) + { + break; + } return((LRESULT)SetCursor(LoadCursorW(0, IDC_SIZENESW))); } } @@ -416,7 +432,7 @@ DefWndStartSizeMove(HWND hWnd, WPARAM wParam, POINT *capturePoint) *capturePoint = pt; } SetCursorPos( pt.x, pt.y ); - DefWndHandleSetCursor(hWnd, (WPARAM)hWnd, MAKELONG(hittest, WM_MOUSEMOVE)); + DefWndHandleSetCursor(hWnd, (WPARAM)hWnd, MAKELONG(hittest, WM_MOUSEMOVE), Style); return hittest; } @@ -1176,7 +1192,9 @@ User32DefWindowProc(HWND hWnd, case WM_SETCURSOR: { - if (GetWindowLongW(hWnd, GWL_STYLE) & WS_CHILD) + ULONG Style = GetWindowLongW(hWnd, GWL_STYLE); + + if (Style & WS_CHILD) { if (LOWORD(lParam) < HTLEFT || LOWORD(lParam) > HTBOTTOMRIGHT) { @@ -1197,7 +1215,7 @@ User32DefWindowProc(HWND hWnd, } } } - return (DefWndHandleSetCursor(hWnd, wParam, lParam)); + return (DefWndHandleSetCursor(hWnd, wParam, lParam, Style)); } case WM_SYSCOMMAND: