ReactOS
0.4.15-dev-1632-g4e289ce
ntgdihdl.h
Go to the documentation of this file.
1
/*
2
* COPYRIGHT: See COPYING in the top level directory
3
* PROJECT: ReactOS Win32 Graphical Subsystem (WIN32K)
4
* FILE: win32ss/include/ntgdihdl.h
5
* PURPOSE: Win32 Shared GDI Handle/Object Types
6
* PROGRAMMER: Alex Ionescu (alex@relsoft.net)
7
*/
8
9
/* INCLUDES ******************************************************************/
10
11
#ifndef _NTGDIHDL_
12
#define _NTGDIHDL_
13
14
#include <
winddi.h
>
15
16
/* DEFINES *******************************************************************/
17
18
/* GDI handle table can hold 0x10000 handles */
19
#define GDI_HANDLE_COUNT 0x10000
20
#define GDI_CFONT_MAX 16
21
22
/* Handle Masks and shifts */
23
#define GDI_HANDLE_INDEX_MASK (GDI_HANDLE_COUNT - 1)
24
#define GDI_HANDLE_TYPE_MASK 0x007f0000
25
#define GDI_HANDLE_BASETYPE_MASK 0x001f0000
26
#define GDI_HANDLE_EXTYPE_MASK 0x00600000
27
#define GDI_HANDLE_STOCK_MASK 0x00800000
28
#define GDI_HANDLE_REUSE_MASK 0xff000000
29
#define GDI_HANDLE_UPPER_MASK (GDI_HANDLE_TYPE_MASK|GDI_HANDLE_STOCK_MASK|GDI_HANDLE_REUSE_MASK)
30
#define GDI_HANDLE_REUSECNT_SHIFT 24
31
#define GDI_HANDLE_BASETYPE_SHIFT 16
32
33
#define GDI_ENTRY_STOCK_MASK 0x00000080
34
#define GDI_ENTRY_BASETYPE_MASK 0x001f0000
35
#define GDI_ENTRY_UPPER_SHIFT 16
36
37
/* GDI Entry Flags */
38
#define GDI_ENTRY_UNDELETABLE 1
/* Mark Object as nonremovable */
39
#define GDI_ENTRY_DELETING 2
/* Used when deleting Font Objects */
40
#define GDI_ENTRY_VALIDATE_VIS 4
/* Validating Visible region data */
41
#define GDI_ENTRY_ALLOCATE_LAL 0x80
/* Object Allocated with Look aside List */
42
49
#define GDI_OBJECT_TYPE_DC 0x00010000
50
#define GDI_OBJECT_TYPE_DD_SURFACE 0x00030000
/* Should be moved away from gdi objects */
51
#define GDI_OBJECT_TYPE_REGION 0x00040000
52
#define GDI_OBJECT_TYPE_BITMAP 0x00050000
53
#define GDI_OBJECT_TYPE_CLIOBJ 0x00060000
54
#define GDI_OBJECT_TYPE_PATH 0x00070000
55
#define GDI_OBJECT_TYPE_PALETTE 0x00080000
56
#define GDI_OBJECT_TYPE_COLORSPACE 0x00090000
57
#define GDI_OBJECT_TYPE_FONT 0x000a0000
58
59
#define GDI_OBJECT_TYPE_BRUSH 0x00100000
60
#define GDI_OBJECT_TYPE_DD_VIDEOPORT 0x00120000
/* Should be moved away from gdi objects */
61
#define GDI_OBJECT_TYPE_DD_MOTIONCOMP 0x00140000
/* Should be moved away from gdi objects */
62
#define GDI_OBJECT_TYPE_ENUMFONT 0x00160000
63
#define GDI_OBJECT_TYPE_DRIVEROBJ 0x001C0000
64
65
/* Confrim on XP value is taken from NtGdiCreateDirectDrawObject */
66
#define GDI_OBJECT_TYPE_DIRECTDRAW 0x00200000
67
68
/* Following object types are derived types from the above base types
69
use 0x001f0000 as mask to get the base type */
70
#define GDI_OBJECT_TYPE_EMF 0x00210000
71
72
#define GDI_OBJECT_TYPE_METAFILE 0x00260000
73
#define GDI_OBJECT_TYPE_ENHMETAFILE 0x00460000
74
#define GDI_OBJECT_TYPE_PEN 0x00300000
75
#define GDI_OBJECT_TYPE_EXTPEN 0x00500000
76
#define GDI_OBJECT_TYPE_METADC 0x00660000
77
/*#define GDI_OBJECT_TYPE_DD_PALETTE 0x00630000 unused at the moment, other value required */
78
/*#define GDI_OBJECT_TYPE_DD_CLIPPER 0x00640000 unused at the moment, other value required */
79
80
/* Following object types made up for ROS */
81
#define GDI_OBJECT_TYPE_DONTCARE 0x007f0000
82
83
#define GDI_OBJECT_TYPE_SILENT 0x80000000
84
86
/* Handle macros */
87
#define GDI_HANDLE_CREATE(i, t) \
88
((HANDLE)(((i) & GDI_HANDLE_INDEX_MASK) | ((t) & GDI_HANDLE_TYPE_MASK)))
89
90
#define GDI_HANDLE_GET_INDEX(h) \
91
(((ULONG_PTR)(h)) & GDI_HANDLE_INDEX_MASK)
92
93
#define GDI_HANDLE_GET_TYPE(h) \
94
(((ULONG_PTR)(h)) & GDI_HANDLE_TYPE_MASK)
95
96
#define GDI_HANDLE_IS_TYPE(h, t) \
97
((t) == (((ULONG_PTR)(h)) & GDI_HANDLE_TYPE_MASK))
98
99
#define GDI_HANDLE_IS_STOCKOBJ(h) \
100
(0 != (((ULONG_PTR)(h)) & GDI_HANDLE_STOCK_MASK))
101
102
#define GDI_HANDLE_SET_STOCKOBJ(h) \
103
((h) = (HANDLE)(((ULONG_PTR)(h)) | GDI_HANDLE_STOCK_MASK))
104
105
#define GDI_HANDLE_GET_UPPER(h) \
106
(((ULONG_PTR)(h)) & GDI_HANDLE_UPPER_MASK)
107
108
#define GDI_HANDLE_GET_REUSECNT(h) \
109
(((ULONG_PTR)(h)) >> GDI_HANDLE_REUSECNT_SHIFT)
110
111
#define GDI_OBJECT_GET_TYPE_INDEX(t) \
112
((t & GDI_HANDLE_BASETYPE_MASK) >> GDI_HANDLE_BASETYPE_SHIFT)
113
114
/* Gdi Object Handle Managment Pid lock masking sets. */
115
/* Ref: used with DxEngSetDCOwner */
116
#define GDI_OBJ_HMGR_PUBLIC 0
/* Public owner, Open access? */
117
#define GDI_OBJ_HMGR_POWNED 0x80000002
/* Set to current owner. */
118
#define GDI_OBJ_HMGR_NONE 0x80000012
/* No owner, Open access? */
119
#define GDI_OBJ_HMGR_RESTRICTED 0x80000022
/* Restricted? */
120
121
122
/* DC OBJ Types */
123
#define DC_TYPE_DIRECT 0
/* normal device context */
124
#define DC_TYPE_MEMORY 1
/* memory device context */
125
#define DC_TYPE_INFO 2
/* information context */
126
127
/* DC OBJ Flags */
128
#define DC_FLAG_DISPLAY 0x0001
129
#define DC_FLAG_DIRECT 0x0002
130
#define DC_FLAG_CANCELLED 0x0004
131
#define DC_FLAG_PERMANENT 0x0008
132
#define DC_FLAG_DIRTY_RAO 0x0010
133
#define DC_FLAG_ACCUM_WMGR 0x0020
134
#define DC_FLAG_ACCUM_APP 0x0040
135
#define DC_FLAG_RESET 0x0080
136
#define DC_FLAG_SYNCHRONIZEACCESS 0x0100
137
#define DC_FLAG_EPSPRINTINGESCAPE 0x0200
138
#define DC_FLAG_TEMPINFODC 0x0400
139
#define DC_FLAG_FULLSCREEN 0x0800
140
#define DC_FLAG_IN_CLONEPDEV 0x1000
141
#define DC_FLAG_REDIRECTION 0x2000
142
#define DC_FLAG_SHAREACCESS 0x4000
143
144
/* DC_ATTR Dirty Flags */
145
#define DIRTY_FILL 0x00000001
146
#define DIRTY_LINE 0x00000002
147
#define DIRTY_TEXT 0x00000004
148
#define DIRTY_BACKGROUND 0x00000008
149
#define DIRTY_CHARSET 0x00000010
150
#define SLOW_WIDTHS 0x00000020
151
#define DC_CACHED_TM_VALID 0x00000040
152
#define DISPLAY_DC 0x00000080
153
#define DIRTY_PTLCURRENT 0x00000100
154
#define DIRTY_PTFXCURRENT 0x00000200
155
#define DIRTY_STYLESTATE 0x00000400
156
#define DC_PLAYMETAFILE 0x00000800
157
#define DC_BRUSH_DIRTY 0x00001000
158
#define DC_PEN_DIRTY 0x00002000
159
#define DC_DIBSECTION 0x00004000
160
#define DC_LAST_CLIPRGN_VALID 0x00008000
161
#define DC_PRIMARY_DISPLAY 0x00010000
162
#define DC_ICM_NOT_CALIBRATED 0x00020000
163
#define DC_ICM_BRUSH_DIRTY 0x00040000
164
#define DC_ICM_PEN_DIRTY 0x00080000
165
#define DC_ICM_NOT_SET 0x00100000
166
#define DC_MODE_DIRTY 0x00200000
167
#define DC_FONTTEXT_DIRTY 0x00400000
168
169
/* DC_ATTR LCD Flags */
170
#define LDC_LDC 0x00000001
/* (init) local DC other than a normal DC */
171
#define LDC_EMFLDC 0x00000002
/* Enhance Meta File local DC */
172
#define LDC_SAPCALLBACK 0x00000020
173
#define LDC_INIT_DOCUMENT 0x00000040
174
#define LDC_INIT_PAGE 0x00000080
175
#define LDC_STARTPAGE 0x00000100
176
#define LDC_NEXTBAND 0x00000200
177
#define LDC_CLOCKWISE 0x00002000
178
#define LDC_KILL_DOCUMENT 0x00010000
179
#define LDC_META_PRINT 0x00020000
180
#define LDC_DIRECT 0x00040000
181
#define LDC_RESET_BANDING 0x00080000
182
#define LDC_RESETDC 0x00200000
183
#define LDC_UFIMAP 0x00400000
184
#define LDC_INFODC 0x01000000
/* If CreateIC was passed. */
185
#define LDC_DEVCAPS 0x02000000
186
#define LDC_ATENDPAGE 0x10000000
187
188
/* DC_ATTR Xform Flags */
189
#define METAFILE_TO_WORLD_IDENTITY 0x00000001
190
#define WORLD_TO_PAGE_IDENTITY 0x00000002
191
#define DEVICE_TO_PAGE_INVALID 0x00000008
192
#define DEVICE_TO_WORLD_INVALID 0x00000010
193
#define WORLD_TRANSFORM_SET 0x00000020
194
#define POSITIVE_Y_IS_UP 0x00000040
195
#define INVALIDATE_ATTRIBUTES 0x00000080
196
#define PTOD_EFM11_NEGATIVE 0x00000100
197
#define PTOD_EFM22_NEGATIVE 0x00000200
198
#define ISO_OR_ANISO_MAP_MODE 0x00000400
199
#define PAGE_TO_DEVICE_IDENTITY 0x00000800
200
#define PAGE_TO_DEVICE_SCALE_IDENTITY 0x00001000
201
#define PAGE_XLATE_CHANGED 0x00002000
202
#define PAGE_EXTENTS_CHANGED 0x00004000
203
#define WORLD_XFORM_CHANGED 0x00008000
204
205
/* BRUSH/RGN_ATTR Flags */
206
#define ATTR_CACHED 0x00000001
207
#define ATTR_TO_BE_DELETED 0x00000002
208
#define ATTR_NEW_COLOR 0x00000004
209
#define ATTR_CANT_SELECT 0x00000008
210
#define ATTR_RGN_VALID 0x00000010
211
#define ATTR_RGN_DIRTY 0x00000020
212
213
214
/* TYPES *********************************************************************/
215
216
typedef
struct
_GDI_TABLE_ENTRY
217
{
218
PVOID
KernelData
;
/* Points to the kernel mode structure */
219
DWORD
ProcessId
;
/* process id that created the object, 0 for stock objects */
220
union
{
/* temp union structure. */
221
LONG
Type
;
/* the first 16 bit is the object type including the stock obj flag, the last 16 bits is just the object type */
222
struct
{
223
USHORT
FullUnique
;
/* unique */
224
UCHAR
ObjectType
;
/* objt */
225
UCHAR
Flags
;
/* Flags */
226
};};
227
PVOID
UserData
;
/* pUser Points to the user mode structure, usually NULL though */
228
}
GDI_TABLE_ENTRY
, *
PGDI_TABLE_ENTRY
;
229
230
typedef
struct
_ENTRY
231
{
232
union
_EINFO
233
{
234
struct
_BASEOBJECT
*
pobj
;
235
HGDIOBJ
hFree
;
236
}
einfo
;
237
238
union
_OBJECTOWNER
239
{
240
struct
_OBJECTOWNER_S
241
{
242
unsigned
Lock
:1;
243
unsigned
Pid_Shifted
:31;
244
}
Share
;
245
ULONG
ulObj
;
246
}
ObjectOwner
;
247
248
USHORT
FullUnique
;
249
UCHAR
Objt
;
250
UCHAR
Flags
;
251
PVOID
pUser
;
252
}
ENTRY
, *
PENTRY
;
253
254
/*
255
* User space only structure!
256
*/
257
typedef
struct
__GDI_SHARED_HANDLE_TABLE
/* Must match win32k/include/gdiobj.h */
258
{
259
GDI_TABLE_ENTRY
Entries
[
GDI_HANDLE_COUNT
];
/* Handle table. */
260
DEVCAPS
DevCaps
;
/* Shared device capabilities. */
261
FLONG
flDeviceUniq
;
/* Device settings uniqueness. */
262
PVOID
pvLangPack
;
/* Lanuage Pack. */
263
CFONT
cfPublic
[
GDI_CFONT_MAX
];
/* Public Fonts. */
264
DWORD
dwCFCount
;
265
}
GDI_SHARED_HANDLE_TABLE
, *
PGDI_SHARED_HANDLE_TABLE
;
266
267
typedef
struct
_RGN_ATTR
268
{
269
ULONG
AttrFlags
;
270
ULONG
iComplexity
;
/* Clipping region's complexity. NULL, SIMPLE & COMPLEXREGION */
271
RECTL
Rect
;
272
}
RGN_ATTR
,*
PRGN_ATTR
;
273
274
/* Local DC structure (_DC_ATTR) PVOID pvLDC; */
275
typedef
struct
_LDC
276
{
277
HDC
hDC
;
278
ULONG
Flags
;
279
INT
iType
;
280
PVOID
pvEmfDC
;
/* Pointer to ENHMETAFILE structure */
281
LPWSTR
pwszPort
;
282
ABORTPROC
pAbortProc
;
/* AbortProc for Printing */
283
DWORD
CallBackTick
;
284
HANDLE
hPrinter
;
/* Local or Remote Printer driver */
285
PDEVMODEW
pdm
;
286
PVOID
pUMPDev
;
/* Ptr to User Mode Printer Device structure */
287
PUMDHPDEV
pUMdhpdev
;
/* Ptr to Combined UMPD and DHPDEV structure */
288
DEVCAPS
DevCaps
;
289
HBRUSH
BrushColor
;
290
HPEN
PenColor
;
291
// wine data
292
DWORD
dwData
[7];
293
}
LDC
, *
PLDC
;
294
295
typedef
struct
_DC_ATTR
296
{
297
PVOID
pvLDC
;
298
ULONG
ulDirty_
;
299
HANDLE
hbrush
;
300
HANDLE
hpen
;
301
COLORREF
crBackgroundClr
;
302
ULONG
ulBackgroundClr
;
303
COLORREF
crForegroundClr
;
304
ULONG
ulForegroundClr
;
305
COLORREF
crBrushClr
;
306
ULONG
ulBrushClr
;
307
COLORREF
crPenClr
;
308
ULONG
ulPenClr
;
309
DWORD
iCS_CP
;
310
INT
iGraphicsMode
;
311
BYTE
jROP2
;
312
BYTE
jBkMode
;
313
BYTE
jFillMode
;
314
BYTE
jStretchBltMode
;
315
POINTL
ptlCurrent
;
316
POINTL
ptfxCurrent
;
317
LONG
lBkMode
;
318
LONG
lFillMode
;
319
LONG
lStretchBltMode
;
320
FLONG
flFontMapper
;
321
LONG
lIcmMode
;
322
HANDLE
hcmXform
;
323
HCOLORSPACE
hColorSpace
;
324
FLONG
flIcmFlags
;
325
INT
IcmBrushColor
;
326
INT
IcmPenColor
;
327
PVOID
pvLIcm
;
328
FLONG
flTextAlign
;
329
LONG
lTextAlign
;
330
LONG
lTextExtra
;
331
LONG
lRelAbs
;
332
LONG
lBreakExtra
;
333
LONG
cBreak
;
334
HANDLE
hlfntNew
;
335
MATRIX
mxWorldToDevice
;
336
MATRIX
mxDeviceToWorld
;
337
MATRIX
mxWorldToPage
;
338
FLOATOBJ
efM11PtoD
;
339
FLOATOBJ
efM22PtoD
;
340
FLOATOBJ
efDxPtoD
;
341
FLOATOBJ
efDyPtoD
;
342
INT
iMapMode
;
343
DWORD
dwLayout
;
344
LONG
lWindowOrgx
;
345
POINTL
ptlWindowOrg
;
346
SIZEL
szlWindowExt
;
347
POINTL
ptlViewportOrg
;
348
SIZEL
szlViewportExt
;
349
FLONG
flXform
;
350
SIZEL
szlVirtualDevicePixel
;
351
SIZEL
szlVirtualDeviceMm
;
352
SIZEL
szlVirtualDeviceSize
;
353
POINTL
ptlBrushOrigin
;
354
RGN_ATTR
VisRectRegion
;
355
}
DC_ATTR
, *
PDC_ATTR
;
356
357
typedef
struct
_BRUSH_ATTR
/* Used with pen too. */
358
{
359
FLONG
AttrFlags
;
360
COLORREF
lbColor
;
361
}
BRUSH_ATTR
, *
PBRUSH_ATTR
;
362
363
typedef
struct
_FONT_ATTR
364
{
365
BOOL
bSlowWidths
;
366
PCFONT
pCharWidthData
;
367
}
FONT_ATTR
, *
PFONT_ATTR
;
368
369
370
#endif
FONT_ATTR
struct _FONT_ATTR FONT_ATTR
_DC_ATTR::efM22PtoD
FLOATOBJ efM22PtoD
Definition:
ntgdihdl.h:339
_LDC::pvEmfDC
PVOID pvEmfDC
Definition:
ntgdihdl.h:280
_GDI_TABLE_ENTRY::UserData
PVOID UserData
Definition:
gdi.h:6
_DC_ATTR::ptlViewportOrg
POINTL ptlViewportOrg
Definition:
ntgdihdl.h:347
RGN_ATTR
struct _RGN_ATTR RGN_ATTR
_ENTRY::pUser
PVOID pUser
Definition:
ntgdihdl.h:251
_DC_ATTR::pvLDC
PVOID pvLDC
Definition:
ntgdihdl.h:297
_LDC::PenColor
HPEN PenColor
Definition:
ntgdihdl.h:290
RECTL
Definition:
polytest.cpp:51
_DC_ATTR::flFontMapper
FLONG flFontMapper
Definition:
ntgdihdl.h:320
PRGN_ATTR
struct _RGN_ATTR * PRGN_ATTR
_DC_ATTR::hbrush
HANDLE hbrush
Definition:
ntgdihdl.h:299
_DC_ATTR::lBreakExtra
LONG lBreakExtra
Definition:
ntgdihdl.h:332
_DC_ATTR::jStretchBltMode
BYTE jStretchBltMode
Definition:
ntgdihdl.h:314
_DC_ATTR::hpen
HANDLE hpen
Definition:
ntgdihdl.h:300
_ENTRY::Objt
UCHAR Objt
Definition:
ntgdihdl.h:249
_POINTL
Definition:
windef.h:328
_DC_ATTR::iMapMode
INT iMapMode
Definition:
ntgdihdl.h:342
_GDI_TABLE_ENTRY::FullUnique
USHORT FullUnique
Definition:
ntgdihdl.h:223
HDC
static HDC
Definition:
imagelist.c:92
_LDC::CallBackTick
DWORD CallBackTick
Definition:
ntgdihdl.h:283
_BASEOBJECT
Definition:
gdiobj.h:38
_DC_ATTR::hColorSpace
HCOLORSPACE hColorSpace
Definition:
ntgdihdl.h:323
_ENTRY::_EINFO::pobj
struct _BASEOBJECT * pobj
Definition:
ntgdihdl.h:234
_DC_ATTR::lFillMode
LONG lFillMode
Definition:
ntgdihdl.h:318
__GDI_SHARED_HANDLE_TABLE::pvLangPack
PVOID pvLangPack
Definition:
ntgdihdl.h:262
_DC_ATTR::crPenClr
COLORREF crPenClr
Definition:
ntgdihdl.h:307
_ENTRY::Flags
UCHAR Flags
Definition:
ntgdihdl.h:250
_DC_ATTR::lTextExtra
LONG lTextExtra
Definition:
ntgdihdl.h:330
_DC_ATTR::lRelAbs
LONG lRelAbs
Definition:
ntgdihdl.h:331
_DC_ATTR::hcmXform
HANDLE hcmXform
Definition:
ntgdihdl.h:322
INT
int32_t INT
Definition:
typedefs.h:58
_LDC::Flags
ULONG Flags
Definition:
ntgdihdl.h:278
_ENTRY::einfo
union _ENTRY::_EINFO einfo
_DC_ATTR::ulBackgroundClr
ULONG ulBackgroundClr
Definition:
ntgdihdl.h:302
GDI_HANDLE_COUNT
#define GDI_HANDLE_COUNT
Definition:
ntgdihdl.h:19
PFONT_ATTR
struct _FONT_ATTR * PFONT_ATTR
ENTRY
struct _ENTRY ENTRY
__GDI_SHARED_HANDLE_TABLE::flDeviceUniq
FLONG flDeviceUniq
Definition:
ntgdihdl.h:261
_DC_ATTR
Definition:
ntgdihdl.h:295
_ENTRY::_OBJECTOWNER
Definition:
ntgdihdl.h:238
BOOL
unsigned int BOOL
Definition:
ntddk_ex.h:94
PLDC
struct _LDC * PLDC
LONG
long LONG
Definition:
pedump.c:60
_FONT_ATTR::pCharWidthData
PCFONT pCharWidthData
Definition:
ntgdihdl.h:366
_BRUSH_ATTR::AttrFlags
FLONG AttrFlags
Definition:
ntgdihdl.h:359
_DC_ATTR::hlfntNew
HANDLE hlfntNew
Definition:
ntgdihdl.h:334
_DEVCAPS
Definition:
ntgdityp.h:296
__GDI_SHARED_HANDLE_TABLE::Entries
GDI_TABLE_ENTRY Entries[GDI_HANDLE_COUNT]
Definition:
ntgdihdl.h:259
__GDI_SHARED_HANDLE_TABLE::DevCaps
DEVCAPS DevCaps
Definition:
ntgdihdl.h:260
_GDI_TABLE_ENTRY::ProcessId
DWORD ProcessId
Definition:
ntgdihdl.h:219
_DC_ATTR::efDxPtoD
FLOATOBJ efDxPtoD
Definition:
ntgdihdl.h:340
_LDC::pdm
PDEVMODEW pdm
Definition:
ntgdihdl.h:285
_LDC::hDC
HDC hDC
Definition:
ntgdihdl.h:277
_DC_ATTR::pvLIcm
PVOID pvLIcm
Definition:
ntgdihdl.h:327
GDI_SHARED_HANDLE_TABLE
struct __GDI_SHARED_HANDLE_TABLE GDI_SHARED_HANDLE_TABLE
LDC
struct _LDC LDC
_RGN_ATTR::AttrFlags
ULONG AttrFlags
Definition:
ntgdihdl.h:269
FLONG
unsigned long FLONG
Definition:
ntbasedef.h:366
PDC_ATTR
struct _DC_ATTR * PDC_ATTR
_DC_ATTR::ulDirty_
ULONG ulDirty_
Definition:
ntgdihdl.h:298
_DC_ATTR::lIcmMode
LONG lIcmMode
Definition:
ntgdihdl.h:321
_DC_ATTR::crBackgroundClr
COLORREF crBackgroundClr
Definition:
ntgdihdl.h:301
FLOATOBJ
FLOAT FLOATOBJ
Definition:
winddi.h:677
MATRIX
Definition:
matrix.h:43
ABORTPROC
BOOL(CALLBACK * ABORTPROC)(HDC, int)
Definition:
wingdi.h:2910
COLORREF
DWORD COLORREF
Definition:
windef.h:300
_DC_ATTR::jROP2
BYTE jROP2
Definition:
ntgdihdl.h:311
PENTRY
struct _ENTRY * PENTRY
_DC_ATTR::crBrushClr
COLORREF crBrushClr
Definition:
ntgdihdl.h:305
_GDI_TABLE_ENTRY::Type
LONG Type
Definition:
gdi.h:5
_DC_ATTR::iCS_CP
DWORD iCS_CP
Definition:
ntgdihdl.h:309
DWORD
unsigned long DWORD
Definition:
ntddk_ex.h:95
_DC_ATTR::cBreak
LONG cBreak
Definition:
ntgdihdl.h:333
_ENTRY::_OBJECTOWNER::ulObj
ULONG ulObj
Definition:
ntgdihdl.h:245
_FONT_ATTR
Definition:
ntgdihdl.h:363
_DC_ATTR::mxWorldToPage
MATRIX mxWorldToPage
Definition:
ntgdihdl.h:337
_LDC
Definition:
ntgdihdl.h:275
_LDC::iType
INT iType
Definition:
ntgdihdl.h:279
_ENTRY::_EINFO
Definition:
ntgdihdl.h:232
UCHAR
unsigned char UCHAR
Definition:
xmlstorage.h:181
_DC_ATTR::lWindowOrgx
LONG lWindowOrgx
Definition:
ntgdihdl.h:344
__GDI_SHARED_HANDLE_TABLE
Definition:
ntgdihdl.h:257
_DC_ATTR::VisRectRegion
RGN_ATTR VisRectRegion
Definition:
ntgdihdl.h:354
_DC_ATTR::jFillMode
BYTE jFillMode
Definition:
ntgdihdl.h:313
GDI_CFONT_MAX
#define GDI_CFONT_MAX
Definition:
ntgdihdl.h:20
_DC_ATTR::flXform
FLONG flXform
Definition:
ntgdihdl.h:349
_RGN_ATTR
Definition:
ntgdihdl.h:267
_DC_ATTR::szlWindowExt
SIZEL szlWindowExt
Definition:
ntgdihdl.h:346
_DC_ATTR::ptfxCurrent
POINTL ptfxCurrent
Definition:
ntgdihdl.h:316
_RGN_ATTR::iComplexity
ULONG iComplexity
Definition:
ntgdihdl.h:270
_DC_ATTR::mxWorldToDevice
MATRIX mxWorldToDevice
Definition:
ntgdihdl.h:335
_ENTRY::_OBJECTOWNER::Share
struct _ENTRY::_OBJECTOWNER::_OBJECTOWNER_S Share
_ENTRY::_EINFO::hFree
HGDIOBJ hFree
Definition:
ntgdihdl.h:235
_DC_ATTR::ptlBrushOrigin
POINTL ptlBrushOrigin
Definition:
ntgdihdl.h:353
_FONT_ATTR::bSlowWidths
BOOL bSlowWidths
Definition:
ntgdihdl.h:365
_DC_ATTR::ulPenClr
ULONG ulPenClr
Definition:
ntgdihdl.h:308
_DC_ATTR::jBkMode
BYTE jBkMode
Definition:
ntgdihdl.h:312
BYTE
unsigned char BYTE
Definition:
xxhash.c:193
_DC_ATTR::szlVirtualDevicePixel
SIZEL szlVirtualDevicePixel
Definition:
ntgdihdl.h:350
PGDI_TABLE_ENTRY
struct _GDI_TABLE_ENTRY * PGDI_TABLE_ENTRY
_ENTRY::_OBJECTOWNER::_OBJECTOWNER_S::Lock
unsigned Lock
Definition:
ntgdihdl.h:242
_GDI_TABLE_ENTRY
Definition:
gdi.h:1
_ENTRY::_OBJECTOWNER::_OBJECTOWNER_S
Definition:
ntgdihdl.h:240
_DC_ATTR::IcmPenColor
INT IcmPenColor
Definition:
ntgdihdl.h:326
_BRUSH_ATTR
Definition:
ntgdihdl.h:357
_GDI_TABLE_ENTRY::Flags
UCHAR Flags
Definition:
ntgdihdl.h:225
_DC_ATTR::IcmBrushColor
INT IcmBrushColor
Definition:
ntgdihdl.h:325
PGDI_SHARED_HANDLE_TABLE
struct __GDI_SHARED_HANDLE_TABLE * PGDI_SHARED_HANDLE_TABLE
_devicemodeW
Definition:
wingdi.h:1615
_DC_ATTR::lStretchBltMode
LONG lStretchBltMode
Definition:
ntgdihdl.h:319
USHORT
unsigned short USHORT
Definition:
pedump.c:61
_DC_ATTR::ulForegroundClr
ULONG ulForegroundClr
Definition:
ntgdihdl.h:304
_BRUSH_ATTR::lbColor
COLORREF lbColor
Definition:
ntgdihdl.h:360
_DC_ATTR::ulBrushClr
ULONG ulBrushClr
Definition:
ntgdihdl.h:306
_ENTRY::FullUnique
USHORT FullUnique
Definition:
ntgdihdl.h:248
GDI_TABLE_ENTRY
struct _GDI_TABLE_ENTRY GDI_TABLE_ENTRY
_GDI_TABLE_ENTRY::KernelData
PVOID KernelData
Definition:
gdi.h:3
_DC_ATTR::efM11PtoD
FLOATOBJ efM11PtoD
Definition:
ntgdihdl.h:338
_LDC::DevCaps
DEVCAPS DevCaps
Definition:
ntgdihdl.h:288
_GDI_TABLE_ENTRY::ObjectType
UCHAR ObjectType
Definition:
ntgdihdl.h:224
_DC_ATTR::flTextAlign
FLONG flTextAlign
Definition:
ntgdihdl.h:328
_DC_ATTR::lBkMode
LONG lBkMode
Definition:
ntgdihdl.h:317
_RGN_ATTR::Rect
RECTL Rect
Definition:
ntgdihdl.h:271
_DC_ATTR::crForegroundClr
COLORREF crForegroundClr
Definition:
ntgdihdl.h:303
_DC_ATTR::efDyPtoD
FLOATOBJ efDyPtoD
Definition:
ntgdihdl.h:341
PBRUSH_ATTR
struct _BRUSH_ATTR * PBRUSH_ATTR
_DC_ATTR::flIcmFlags
FLONG flIcmFlags
Definition:
ntgdihdl.h:324
winddi.h
_CFONT
Definition:
ntgdityp.h:432
_DC_ATTR::szlVirtualDeviceSize
SIZEL szlVirtualDeviceSize
Definition:
ntgdihdl.h:352
_DC_ATTR::szlViewportExt
SIZEL szlViewportExt
Definition:
ntgdihdl.h:348
ULONG
unsigned int ULONG
Definition:
retypes.h:1
_ENTRY::_OBJECTOWNER::_OBJECTOWNER_S::Pid_Shifted
unsigned Pid_Shifted
Definition:
ntgdihdl.h:243
__GDI_SHARED_HANDLE_TABLE::dwCFCount
DWORD dwCFCount
Definition:
ntgdihdl.h:264
_DC_ATTR::dwLayout
DWORD dwLayout
Definition:
ntgdihdl.h:343
__GDI_SHARED_HANDLE_TABLE::cfPublic
CFONT cfPublic[GDI_CFONT_MAX]
Definition:
ntgdihdl.h:263
_LDC::pUMPDev
PVOID pUMPDev
Definition:
ntgdihdl.h:286
_ENTRY::ObjectOwner
union _ENTRY::_OBJECTOWNER ObjectOwner
_ENTRY
Definition:
ntgdihdl.h:230
LPWSTR
WCHAR * LPWSTR
Definition:
xmlstorage.h:184
void
Definition:
nsiface.idl:2306
_LDC::pwszPort
LPWSTR pwszPort
Definition:
ntgdihdl.h:281
_DC_ATTR::mxDeviceToWorld
MATRIX mxDeviceToWorld
Definition:
ntgdihdl.h:336
_LDC::pAbortProc
ABORTPROC pAbortProc
Definition:
ntgdihdl.h:282
BRUSH_ATTR
struct _BRUSH_ATTR BRUSH_ATTR
_DC_ATTR::ptlCurrent
POINTL ptlCurrent
Definition:
ntgdihdl.h:315
_LDC::dwData
DWORD dwData[7]
Definition:
ntgdihdl.h:292
tagSIZE
Definition:
windef.h:333
_LDC::hPrinter
HANDLE hPrinter
Definition:
ntgdihdl.h:284
_LDC::BrushColor
HBRUSH BrushColor
Definition:
ntgdihdl.h:289
_LDC::pUMdhpdev
PUMDHPDEV pUMdhpdev
Definition:
ntgdihdl.h:287
_DC_ATTR::ptlWindowOrg
POINTL ptlWindowOrg
Definition:
ntgdihdl.h:345
_DC_ATTR::lTextAlign
LONG lTextAlign
Definition:
ntgdihdl.h:329
DC_ATTR
struct _DC_ATTR DC_ATTR
_DC_ATTR::szlVirtualDeviceMm
SIZEL szlVirtualDeviceMm
Definition:
ntgdihdl.h:351
_DC_ATTR::iGraphicsMode
INT iGraphicsMode
Definition:
ntgdihdl.h:310
win32ss
include
ntgdihdl.h
Generated on Fri Jan 22 2021 06:10:19 for ReactOS by
1.8.15