Use an X context to associated the x11drv private window data to a
[wine] / include / win.h
index f18e2d1..eb98569 100644 (file)
@@ -28,8 +28,6 @@
 #include <winuser.h>
 #include <wine/windef16.h>
 
-#include <user.h>
-
 #define WND_MAGIC     0x444e4957  /* 'WIND' */
 
 struct tagCLASS;
@@ -52,8 +50,6 @@ typedef struct tagWND
     void          *pVScroll;      /* Vertical scroll-bar info */
     void          *pHScroll;      /* Horizontal scroll-bar info */
     struct tagDCE *dce;           /* Window DCE (if CS_OWNDC or CS_CLASSDC) */
-    HRGN           hrgnUpdate;    /* Update region */
-    HRGN           hrgnWnd;       /* window's region */
     DWORD          dwStyle;       /* Window style (from CreateWindow) */
     DWORD          dwExStyle;     /* Extended style (from CreateWindowEx) */
     DWORD          clsStyle;      /* Class style at window creation */
@@ -66,30 +62,17 @@ typedef struct tagWND
     int            cbWndExtra;    /* class cbWndExtra at window creation */
     int            irefCount;     /* window's reference count*/
     DWORD          userdata;      /* User private data */
-    void          *pDriverData;   /* Window driver data */
     DWORD          wExtra[1];     /* Window extra bytes */
 } WND;
 
-typedef struct
-{
-    RECT16        rectNormal;
-    POINT16       ptIconPos;
-    POINT16       ptMaxPos;
-    HWND           hwndIconTitle;
-} INTERNALPOS, *LPINTERNALPOS;
-
   /* WND flags values */
-#define WIN_NEEDS_BEGINPAINT   0x0001 /* WM_PAINT sent to window */
-#define WIN_NEEDS_ERASEBKGND   0x0002 /* WM_ERASEBKGND must be sent to window*/
-#define WIN_NEEDS_NCPAINT      0x0004 /* WM_NCPAINT must be sent to window */
-#define WIN_RESTORE_MAX        0x0008 /* Maximize when restoring */
-#define WIN_INTERNAL_PAINT     0x0010 /* Internal WM_PAINT message pending */
-#define WIN_NEED_SIZE          0x0040 /* Internal WM_SIZE is needed */
-#define WIN_NCACTIVATED        0x0080 /* last WM_NCACTIVATE was positive */
-#define WIN_ISDIALOG           0x0200 /* Window is a dialog */
-#define WIN_ISWIN32            0x0400 /* Understands Win32 messages */
-#define WIN_NEEDS_SHOW_OWNEDPOPUP 0x0800 /* WM_SHOWWINDOW:SC_SHOW must be sent in the next ShowOwnedPopup call */
-#define WIN_NEEDS_INTERNALSOP  0x1000 /* Window was hidden by WIN_InternalShowOwnedPopups */
+#define WIN_RESTORE_MAX           0x0001 /* Maximize when restoring */
+#define WIN_NEED_SIZE             0x0002 /* Internal WM_SIZE is needed */
+#define WIN_NCACTIVATED           0x0004 /* last WM_NCACTIVATE was positive */
+#define WIN_ISMDICLIENT           0x0008 /* Window is an MDIClient */
+#define WIN_ISDIALOG              0x0010 /* Window is a dialog */
+#define WIN_ISWIN32               0x0020 /* Understands Win32 messages */
+#define WIN_NEEDS_SHOW_OWNEDPOPUP 0x0040 /* WM_SHOWWINDOW:SC_SHOW must be sent in the next ShowOwnedPopup call */
 
   /* Window functions */
 extern WND *WIN_GetPtr( HWND hwnd );
@@ -103,9 +86,8 @@ extern HWND WIN_IsCurrentThread( HWND hwnd );
 extern void WIN_LinkWindow( HWND hwnd, HWND parent, HWND hwndInsertAfter );
 extern void WIN_UnlinkWindow( HWND hwnd );
 extern HWND WIN_SetOwner( HWND hwnd, HWND owner );
-extern LONG WIN_SetStyle( HWND hwnd, LONG style );
+extern ULONG WIN_SetStyle( HWND hwnd, ULONG set_bits, ULONG clear_bits );
 extern LONG WIN_SetExStyle( HWND hwnd, LONG style );
-extern void WIN_SetRectangles( HWND hwnd, const RECT *rectWindow, const RECT *rectClient );
 extern BOOL WIN_GetRectangles( HWND hwnd, RECT *rectWindow, RECT *rectClient );
 extern LRESULT WIN_DestroyWindow( HWND hwnd );
 extern void WIN_DestroyThreadWindows( HWND hwnd );
@@ -113,7 +95,15 @@ extern BOOL WIN_CreateDesktopWindow(void);
 extern BOOL WIN_IsWindowDrawable( HWND hwnd, BOOL );
 extern HWND *WIN_ListParents( HWND hwnd );
 extern HWND *WIN_ListChildren( HWND hwnd );
-extern BOOL WIN_InternalShowOwnedPopups( HWND owner, BOOL fShow, BOOL unmanagedOnly );
+extern void MDI_CalcDefaultChildPos( HWND hwndClient, INT total, LPPOINT lpPos, INT delta );
+
+/* internal SendInput codes (FIXME) */
+#define WINE_INTERNAL_INPUT_MOUSE    (16+INPUT_MOUSE)
+#define WINE_INTERNAL_INPUT_KEYBOARD (16+INPUT_KEYBOARD)
+
+/* user lock */
+extern void USER_Lock(void);
+extern void USER_Unlock(void);
 
 inline static HWND WIN_GetFullHandle( HWND hwnd )
 {
@@ -121,12 +111,6 @@ inline static HWND WIN_GetFullHandle( HWND hwnd )
     return hwnd;
 }
 
-inline static WND *WIN_FindWndPtr16( HWND16 hwnd )
-{
-    /* don't bother with full conversion */
-    return WIN_FindWndPtr( (HWND)(ULONG_PTR)hwnd );
-}
-
 /* to release pointers retrieved by WIN_GetPtr; do not confuse with WIN_ReleaseWndPtr!! */
 inline static void WIN_ReleasePtr( WND *ptr )
 {
@@ -135,14 +119,6 @@ inline static void WIN_ReleasePtr( WND *ptr )
 
 #define WND_OTHER_PROCESS ((WND *)1)  /* returned by WIN_GetPtr on unknown window handles */
 
-extern HBRUSH DEFWND_ControlColor( HDC hDC, UINT ctlType );  /* windows/defwnd.c */
-
-extern BOOL FOCUS_MouseActivate( HWND hwnd );
-
-/* check if hwnd is a broadcast magic handle */
-inline static BOOL is_broadcast( HWND hwnd )
-{
-    return (hwnd == HWND_BROADCAST || hwnd == HWND_TOPMOST);
-}
+extern LRESULT HOOK_CallHooks( INT id, INT code, WPARAM wparam, LPARAM lparam, BOOL unicode );
 
 #endif  /* __WINE_WIN_H */