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