Sync with trunk r43123
[reactos.git] / reactos / dll / win32 / user32 / include / window.h
1 /*
2 * COPYRIGHT: See COPYING in the top level directory
3 * PROJECT: ReactOS user32.dll
4 * FILE: include/window.h
5 * PURPOSE: Window management definitions
6 */
7 #include <windows.h>
8
9 extern COLORREF SysColors[];
10 extern HPEN SysPens[];
11 extern HBRUSH SysBrushes[];
12
13 #define NUM_SYSCOLORS 31
14
15 #define IS_ATOM(x) \
16 (((ULONG_PTR)(x) > 0x0) && ((ULONG_PTR)(x) < 0x10000))
17
18 #define UserHasAnyFrameStyle(Style, ExStyle) \
19 (((Style) & (WS_THICKFRAME | WS_DLGFRAME | WS_BORDER)) || \
20 ((ExStyle) & WS_EX_DLGMODALFRAME) || \
21 (!((Style) & (WS_CHILD | WS_POPUP))))
22
23 #define UserHasDlgFrameStyle(Style, ExStyle) \
24 (((ExStyle) & WS_EX_DLGMODALFRAME) || \
25 (((Style) & WS_DLGFRAME) && (!((Style) & WS_THICKFRAME))))
26
27 #define UserHasThickFrameStyle(Style, ExStyle) \
28 (((Style) & WS_THICKFRAME) && \
29 (!(((Style) & (WS_DLGFRAME | WS_BORDER)) == WS_DLGFRAME)))
30
31 #define UserHasThinFrameStyle(Style, ExStyle) \
32 (((Style) & WS_BORDER) || (!((Style) & (WS_CHILD | WS_POPUP))))
33
34 #define UserHasBigFrameStyle(Style, ExStyle) \
35 (((Style) & (WS_THICKFRAME | WS_DLGFRAME)) || \
36 ((ExStyle) & WS_EX_DLGMODALFRAME))
37
38
39 BOOL UserDrawSysMenuButton( HWND hWnd, HDC hDC, LPRECT, BOOL down );
40 void
41 UserGetFrameSize(ULONG Style, ULONG ExStyle, SIZE *Size);
42 void
43 UserGetInsideRectNC(PWND Wnd, RECT *rect);
44
45 DWORD
46 SCROLL_HitTest( HWND hwnd, INT nBar, POINT pt, BOOL bDragging );
47
48 LRESULT FASTCALL IntCallWindowProcW(BOOL IsAnsiProc, WNDPROC WndProc, PWND pWnd,
49 HWND hWnd, UINT Msg, WPARAM wParam,
50 LPARAM lParam);
51
52 HWND WINAPI
53 User32CreateWindowEx(DWORD dwExStyle,
54 LPCSTR lpClassName,
55 LPCSTR lpWindowName,
56 DWORD dwStyle,
57 int x,
58 int y,
59 int nWidth,
60 int nHeight,
61 HWND hWndParent,
62 HMENU hMenu,
63 HINSTANCE hInstance,
64 LPVOID lpParam,
65 BOOL Unicode);
66
67 HWND* WIN_ListChildren (HWND hWndparent);
68 ULONG_PTR FASTCALL IntGetWndProc(PWND, BOOL);
69 DWORD WINAPI GetRealWindowOwner(HWND);