Fix typo in OUTLINETEXTMETRIC definition.
[wine.git] / include / dce.h
blobb32ea653649158538b9ac8a530dfb766c8c4a951
1 /*
2 * USER DCE definitions
4 * Copyright 1993 Alexandre Julliard
5 */
7 #ifndef __WINE_DCE_H
8 #define __WINE_DCE_H
10 #include "windef.h"
12 struct tagWND;
14 /* additional DCX flags
17 #define DCX_NORESETATTR 0x00000004
18 #define DCX_EXCLUDEUPDATE 0x00000100
19 #define DCX_INTERSECTUPDATE 0x00000200
20 #define DCX_LOCKWINDOWUPDATE 0x00000400
21 #define DCX_NORECOMPUTE 0x00100000
22 #define DCX_VALIDATE 0x00200000
24 #define DCX_DCEEMPTY 0x00000800
25 #define DCX_DCEBUSY 0x00001000
26 #define DCX_DCEDIRTY 0x00002000
27 #define DCX_WINDOWPAINT 0x00020000
28 #define DCX_KEEPCLIPRGN 0x00040000
29 #define DCX_NOCLIPCHILDREN 0x00080000
31 typedef enum
33 DCE_CACHE_DC, /* This is a cached DC (allocated by USER) */
34 DCE_CLASS_DC, /* This is a class DC (style CS_CLASSDC) */
35 DCE_WINDOW_DC /* This is a window DC (style CS_OWNDC) */
36 } DCE_TYPE;
39 typedef struct tagDCE
41 struct tagDCE *next;
42 HDC hDC;
43 HWND hwndCurrent;
44 HWND hwndDC;
45 HRGN hClipRgn;
46 DCE_TYPE type;
47 DWORD DCXflags;
48 } DCE;
51 extern void DCE_Init(void);
52 extern DCE* DCE_AllocDCE( HWND hWnd, DCE_TYPE type );
53 extern DCE* DCE_FreeDCE( DCE *dce );
54 extern void DCE_FreeWindowDCE( struct tagWND* );
55 extern INT DCE_ExcludeRgn( HDC, struct tagWND*, HRGN );
56 extern HRGN DCE_GetVisRgn( HWND, WORD, HWND, WORD );
57 extern BOOL DCE_InvalidateDCE( struct tagWND*, const RECT* );
59 #endif /* __WINE_DCE_H */