Release 0.5
[wine/multimedia.git] / include / win.h
blobb90675db260818344903090669211c31719cabb4
1 /*
2 * Window definitions
4 * Copyright 1993 Alexandre Julliard
5 */
7 #ifndef WIN_H
8 #define WIN_H
10 #include <X11/Intrinsic.h>
12 #include "windows.h"
13 #include "menu.h"
15 #define WND_MAGIC 0x444e4957 /* 'WIND' */
18 typedef struct tagWND
20 HWND hwndNext; /* Next sibling */
21 HWND hwndChild; /* First child */
22 DWORD dwMagic; /* Magic number (must be WND_MAGIC) */
23 HWND hwndParent; /* Window parent (from CreateWindow) */
24 HWND hwndOwner; /* Window owner */
25 HCLASS hClass; /* Window class */
26 HANDLE hInstance; /* Window hInstance (from CreateWindow) */
27 RECT rectClient; /* Client area rel. to parent client area */
28 RECT rectWindow; /* Whole window rel. to parent client area */
29 HANDLE hmemTaskQ; /* Task queue global memory handle */
30 HRGN hrgnUpdate; /* Update region */
31 HWND hwndLastActive; /* Last active popup hwnd */
32 FARPROC lpfnWndProc; /* Window procedure */
33 DWORD dwStyle; /* Window style (from CreateWindow) */
34 DWORD dwExStyle; /* Extended style (from CreateWindowEx) */
35 HANDLE hdce; /* Window DCE (if CS_OWNDC or CS_CLASSDC) */
36 HMENU hmenuSystem; /* System menu */
37 HCURSOR hCursor; /* Window Current Cursor */
38 HWND hWndVScroll; /* Verti. ScrollBar handle of the window */
39 HWND hWndHScroll; /* Horiz. ScrollBar handle of the window */
40 WORD wIDmenu; /* ID or hmenu (from CreateWindow) */
41 HANDLE hText; /* Handle of window text */
42 WORD flags; /* Misc. flags */
43 Widget shellWidget; /* For top-level windows */
44 Widget winWidget; /* For all windows */
45 Widget compositeWidget;/* For top-level windows */
46 Window window; /* X window */
47 LPMENUBAR menuBarPtr; /* Menu bar */
48 WORD wExtra[1]; /* Window extra bytes */
49 } WND;
51 /* WND flags values */
52 #define WIN_ERASE_UPDATERGN 0x01 /* Update region needs erasing */
53 #define WIN_NEEDS_BEGINPAINT 0x02 /* WM_PAINT sent to window */
54 #define WIN_GOT_SIZEMSG 0x04 /* WM_SIZE has been sent to the window */
55 #define WIN_OWN_DC 0x08 /* Win class has style CS_OWNDC */
56 #define WIN_CLASS_DC 0x10 /* Win class has style CS_CLASSDC */
58 /* Window functions */
59 WND *WIN_FindWndPtr( HWND hwnd );
60 BOOL WIN_UnlinkWindow( HWND hwnd );
61 BOOL WIN_LinkWindow( HWND hwnd, HWND hwndInsertAfter );
62 HWND WIN_FindWinToRepaint( HWND hwnd );
65 #endif /* WIN_H */