| 1 | /* $Id: dce.h,v 1.1 1999-05-24 20:19:10 ktk Exp $ */ | 
|---|
| 2 |  | 
|---|
| 3 | /* | 
|---|
| 4 | * USER DCE definitions | 
|---|
| 5 | * | 
|---|
| 6 | * Copyright 1993 Alexandre Julliard | 
|---|
| 7 | */ | 
|---|
| 8 |  | 
|---|
| 9 | #ifndef __WINE_DCE_H | 
|---|
| 10 | #define __WINE_DCE_H | 
|---|
| 11 |  | 
|---|
| 12 | #include "win.h" | 
|---|
| 13 |  | 
|---|
| 14 | /* additional DCX flags | 
|---|
| 15 | */ | 
|---|
| 16 |  | 
|---|
| 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 | 
|---|
| 23 |  | 
|---|
| 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 | 
|---|
| 30 |  | 
|---|
| 31 | typedef enum | 
|---|
| 32 | { | 
|---|
| 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; | 
|---|
| 37 |  | 
|---|
| 38 |  | 
|---|
| 39 | typedef struct tagDCE | 
|---|
| 40 | { | 
|---|
| 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; | 
|---|
| 49 |  | 
|---|
| 50 |  | 
|---|
| 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( WND* ); | 
|---|
| 55 | extern INT16 DCE_ExcludeRgn( HDC, WND*, HRGN ); | 
|---|
| 56 | extern HRGN DCE_GetVisRgn( HWND, WORD, HWND, WORD ); | 
|---|
| 57 | extern BOOL DCE_InvalidateDCE( WND*, const RECT* ); | 
|---|
| 58 |  | 
|---|
| 59 | #endif  /* __WINE_DCE_H */ | 
|---|