Made request tracing more robust against bogus lengths.
[wine.git] / include / winpos.h
blobb6a9a211e86208ae813e2630b782f797c40282d2
1 /*
2 * *DeferWindowPos() structure and definitions
4 * Copyright 1994 Alexandre Julliard
5 */
7 #ifndef __WINE_WINPOS_H
8 #define __WINE_WINPOS_H
10 #include "windef.h"
11 #include "wingdi.h"
12 #include "winuser.h"
14 struct tagWND;
16 #define DWP_MAGIC ((INT)('W' | ('P' << 8) | ('O' << 16) | ('S' << 24)))
18 /* undocumented SWP flags - from SDK 3.1 */
19 #define SWP_NOCLIENTSIZE 0x0800
20 #define SWP_NOCLIENTMOVE 0x1000
22 /* Wine extra SWP flag */
23 #define SWP_WINE_NOHOSTMOVE 0x80000000
25 struct tagWINDOWPOS16;
27 typedef struct
29 INT actualCount;
30 INT suggestedCount;
31 BOOL valid;
32 INT wMagic;
33 HWND hwndParent;
34 WINDOWPOS winPos[1];
35 } DWP;
37 extern BOOL WINPOS_RedrawIconTitle( HWND hWnd );
38 extern BOOL WINPOS_ShowIconTitle( struct tagWND* pWnd, BOOL bShow );
39 extern void WINPOS_GetMinMaxInfo( struct tagWND* pWnd, POINT *maxSize,
40 POINT *maxPos, POINT *minTrack,
41 POINT *maxTrack );
42 extern UINT WINPOS_MinMaximize( struct tagWND* pWnd, UINT16 cmd, LPRECT16 lpPos);
43 extern BOOL WINPOS_SetActiveWindow( HWND hWnd, BOOL fMouse,
44 BOOL fChangeFocus );
45 extern BOOL WINPOS_ChangeActiveWindow( HWND hwnd, BOOL mouseMsg );
46 extern LONG WINPOS_SendNCCalcSize(HWND hwnd, BOOL calcValidRect,
47 RECT *newWindowRect, RECT *oldWindowRect,
48 RECT *oldClientRect, WINDOWPOS *winpos,
49 RECT *newClientRect );
50 extern LONG WINPOS_HandleWindowPosChanging16(struct tagWND *wndPtr, struct tagWINDOWPOS16 *winpos);
51 extern LONG WINPOS_HandleWindowPosChanging(struct tagWND *wndPtr, WINDOWPOS *winpos);
52 extern INT16 WINPOS_WindowFromPoint( struct tagWND* scopeWnd, POINT16 pt, struct tagWND **ppWnd );
53 extern void WINPOS_CheckInternalPos( struct tagWND* wndPtr );
54 extern BOOL WINPOS_ActivateOtherWindow(struct tagWND* pWnd);
55 extern BOOL WINPOS_CreateInternalPosAtom(void);
57 #endif /* __WINE_WINPOS_H */