Moved scrollbar tracking code to scroll.c.
[wine] / include / dce.h
1 /*
2  * USER DCE definitions
3  *
4  * Copyright 1993 Alexandre Julliard
5  */
6
7 #ifndef __WINE_DCE_H
8 #define __WINE_DCE_H
9
10 #include "windef.h"
11
12 /* internal DCX flags */
13 #define DCX_DCEEMPTY            0x00000800
14 #define DCX_DCEBUSY             0x00001000
15 #define DCX_DCEDIRTY            0x00002000
16 #define DCX_WINDOWPAINT         0x00020000
17 #define DCX_KEEPCLIPRGN         0x00040000
18 #define DCX_NOCLIPCHILDREN      0x00080000
19
20 typedef enum
21 {
22     DCE_CACHE_DC,   /* This is a cached DC (allocated by USER) */
23     DCE_CLASS_DC,   /* This is a class DC (style CS_CLASSDC) */
24     DCE_WINDOW_DC   /* This is a window DC (style CS_OWNDC) */
25 } DCE_TYPE;
26
27
28 typedef struct tagDCE
29 {
30     struct tagDCE *next;
31     HDC          hDC;
32     HWND         hwndCurrent;
33     HWND         hwndDC;
34     HRGN         hClipRgn;
35     DCE_TYPE       type;
36     DWORD          DCXflags;
37 } DCE;
38
39 extern DCE*  DCE_AllocDCE( HWND hWnd, DCE_TYPE type );
40 extern DCE*  DCE_FreeDCE( DCE *dce );
41 extern void  DCE_FreeWindowDCE( HWND );
42 extern INT  DCE_ExcludeRgn( HDC, HWND, HRGN );
43 extern BOOL DCE_InvalidateDCE( HWND, const RECT* );
44
45 #endif  /* __WINE_DCE_H */