[Win32k]
[reactos.git] / reactos / subsystems / win32 / win32k / include / winpos.h
index cee93ab..a230972 100644 (file)
@@ -1,5 +1,32 @@
 #pragma once
 
+typedef struct _CVR // Tag Ussw
+{
+  WINDOWPOS   pos;
+  LONG        xClientNew;
+  LONG        yClientNew;
+  LONG        cxClientNew;
+  LONG        cyClientNew;
+  RECT        rcBlt;
+  LONG        dxBlt;
+  LONG        dyBlt;
+  UINT        fsRE;
+  HRGN        hrgnVisOld;
+  PTHREADINFO pti;
+  HRGN        hrgnClip;
+  HRGN        hrgnInterMonitor;
+} CVR, *PCVR;
+
+typedef struct _SMWP
+{
+  HEAD head;
+  UINT bShellNotify:1;
+  UINT bHandle:1;
+  INT  ccvr;
+  INT  ccvrAlloc;
+  PCVR acvr;
+} SMWP, *PSMWP;
+
 #define IntPtInWindow(WndObject,x,y) \
   ((x) >= (WndObject)->rcWindow.left && \
    (x) < (WndObject)->rcWindow.right && \
@@ -9,6 +36,9 @@
     NtGdiPtInRegion((WndObject)->hrgnClip, (INT)((x) - (WndObject)->rcWindow.left), \
                     (INT)((y) - (WndObject)->rcWindow.top))))
 
+#define IntPtInRect(lprc,pt) \
+    ((pt.x >= (lprc)->left) && (pt.x < (lprc)->right) && (pt.y >= (lprc)->top) && (pt.y < (lprc)->bottom))
+
 UINT
 FASTCALL co_WinPosArrangeIconicWindows(PWND parent);
 BOOL FASTCALL
@@ -27,10 +57,11 @@ BOOLEAN FASTCALL
 co_WinPosShowWindow(PWND Window, INT Cmd);
 void FASTCALL
 co_WinPosSendSizeMove(PWND Window);
-USHORT FASTCALL
-co_WinPosWindowFromPoint(PWND ScopeWin, PUSER_MESSAGE_QUEUE OnlyHitTests, POINT *WinPoint,
-                     PWND* Window);
+PWND FASTCALL
+co_WinPosWindowFromPoint(PWND ScopeWin, POINT *WinPoint, USHORT* HitTest);
 VOID FASTCALL co_WinPosActivateOtherWindow(PWND Window);
 
 VOID FASTCALL WinPosInitInternalPos(PWND WindowObject,
                                     POINT *pt, RECTL *RestoreRect);
+BOOL FASTCALL IntEndDeferWindowPosEx(HDWP);
+HDWP FASTCALL IntDeferWindowPos(HDWP,HWND,HWND,INT,INT,INT,INT,UINT);