[NETSTAT]
[reactos.git] / rostests / apitests / gdi32api / gdi.h
1 #ifndef _WIN32_WINNT
2 #define _WIN32_WINNT 0x0501
3 #endif
4
5
6 typedef PGDI_TABLE_ENTRY (CALLBACK * GDIQUERYPROC) (void);
7
8 /* GDI handle table can hold 0x4000 handles */
9 #define GDI_HANDLE_COUNT 0x10000
10 #define GDI_GLOBAL_PROCESS (0x0)
11
12 /* Handle Masks and shifts */
13 #define GDI_HANDLE_INDEX_MASK (GDI_HANDLE_COUNT - 1)
14 #define GDI_HANDLE_TYPE_MASK 0x007f0000
15 #define GDI_HANDLE_STOCK_MASK 0x00800000
16 #define GDI_HANDLE_REUSE_MASK 0xff000000
17 #define GDI_HANDLE_REUSECNT_SHIFT 24
18
19
20 #define GDI_OBJECT_TYPE_DC 0x00010000
21 #define GDI_OBJECT_TYPE_REGION 0x00040000
22 #define GDI_OBJECT_TYPE_BITMAP 0x00050000
23 #define GDI_OBJECT_TYPE_PALETTE 0x00080000
24 #define GDI_OBJECT_TYPE_FONT 0x000a0000
25 #define GDI_OBJECT_TYPE_BRUSH 0x00100000
26 #define GDI_OBJECT_TYPE_EMF 0x00210000
27 #define GDI_OBJECT_TYPE_PEN 0x00300000
28 #define GDI_OBJECT_TYPE_EXTPEN 0x00500000
29 #define GDI_OBJECT_TYPE_COLORSPACE 0x00090000
30 #define GDI_OBJECT_TYPE_METADC 0x00660000
31 #define GDI_OBJECT_TYPE_METAFILE 0x00260000
32 #define GDI_OBJECT_TYPE_ENHMETAFILE 0x00460000
33 /* Following object types made up for ROS */
34 #define GDI_OBJECT_TYPE_ENHMETADC 0x00740000
35 #define GDI_OBJECT_TYPE_MEMDC 0x00750000
36 #define GDI_OBJECT_TYPE_DCE 0x00770000
37 #define GDI_OBJECT_TYPE_DONTCARE 0x007f0000
38 /** Not really an object type. Forces GDI_FreeObj to be silent. */
39 #define GDI_OBJECT_TYPE_SILENT 0x80000000
40
41 HDC WINAPI GdiConvertBitmap(HDC hdc);
42 HBRUSH WINAPI GdiConvertBrush(HBRUSH hbr);
43 HDC WINAPI GdiConvertDC(HDC hdc);
44 HFONT WINAPI GdiConvertFont(HFONT hfont);
45 HPALETTE WINAPI GdiConvertPalette(HPALETTE hpal);
46 HRGN WINAPI GdiConvertRegion(HRGN hregion);
47 HBRUSH WINAPI GdiGetLocalBrush(HBRUSH hbr);
48 HDC WINAPI GdiGetLocalDC(HDC hdc);
49 BOOL WINAPI GdiDeleteLocalDC(HDC hdc);
50 BOOL WINAPI GdiReleaseLocalDC(HDC hdc);
51 BOOL WINAPI GdiSetAttrs(HDC hdc);
52
53
54