Merge from amd64-branch:
[reactos.git] / reactos / subsystems / win32 / win32k / include / winpos.h
1 #ifndef _WIN32K_WINPOS_H
2 #define _WIN32K_WINPOS_H
3
4 /* Undocumented flags. */
5 #define SWP_NOCLIENTMOVE 0x0800
6 #define SWP_NOCLIENTSIZE 0x1000
7
8 #define IntPtInWindow(WndObject,x,y) \
9 ((x) >= (WndObject)->Wnd->rcWindow.left && \
10 (x) < (WndObject)->Wnd->rcWindow.right && \
11 (y) >= (WndObject)->Wnd->rcWindow.top && \
12 (y) < (WndObject)->Wnd->rcWindow.bottom && \
13 (!(WndObject)->hrgnClip || ((WndObject)->Wnd->style & WS_MINIMIZE) || \
14 NtGdiPtInRegion((WndObject)->hrgnClip, (INT)((x) - (WndObject)->Wnd->rcWindow.left), \
15 (INT)((y) - (WndObject)->Wnd->rcWindow.top))))
16
17 UINT
18 FASTCALL co_WinPosArrangeIconicWindows(PWINDOW_OBJECT parent);
19 BOOL FASTCALL
20 IntGetClientOrigin(PWINDOW_OBJECT Window, LPPOINT Point);
21 LRESULT FASTCALL
22 co_WinPosGetNonClientSize(PWINDOW_OBJECT Window, RECTL* WindowRect, RECTL* ClientRect);
23 UINT FASTCALL
24 co_WinPosGetMinMaxInfo(PWINDOW_OBJECT Window, POINT* MaxSize, POINT* MaxPos,
25 POINT* MinTrack, POINT* MaxTrack);
26 UINT FASTCALL
27 co_WinPosMinMaximize(PWINDOW_OBJECT WindowObject, UINT ShowFlag, RECTL* NewPos);
28 BOOLEAN FASTCALL
29 co_WinPosSetWindowPos(PWINDOW_OBJECT Wnd, HWND WndInsertAfter, INT x, INT y, INT cx,
30 INT cy, UINT flags);
31 BOOLEAN FASTCALL
32 co_WinPosShowWindow(PWINDOW_OBJECT Window, INT Cmd);
33 USHORT FASTCALL
34 co_WinPosWindowFromPoint(PWINDOW_OBJECT ScopeWin, PUSER_MESSAGE_QUEUE OnlyHitTests, POINT *WinPoint,
35 PWINDOW_OBJECT* Window);
36 VOID FASTCALL co_WinPosActivateOtherWindow(PWINDOW_OBJECT Window);
37
38 VOID FASTCALL WinPosInitInternalPos(PWINDOW_OBJECT WindowObject,
39 POINT *pt, RECTL *RestoreRect);
40
41 #endif /* _WIN32K_WINPOS_H */