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