#include <precomp.h>
#include <debug.h>
Go to the source code of this file.
◆ NDEBUG
◆ DeleteObject()
Definition at line 316 of file gdiobj.c.
317{
318
319
322
323
325 {
326
327 DPRINT1(
"Trying to delete system object 0x%p\n", hObject);
329 }
330
331
333 {
336 }
337
338
340 {
344
348
351
354
359
362 default:
363 break;
364 }
365
367}
BOOL WINAPI GdiValidateHandle(HGDIOBJ)
VOID WINAPI METADC_RosGlueDeleteObject(HGDIOBJ hobj)
#define GDI_HANDLE_GET_TYPE(h)
#define GDI_HANDLE_IS_STOCKOBJ(h)
@ GDILoObjType_LO_FONT_TYPE
@ GDILoObjType_LO_BRUSH_TYPE
@ GDILoObjType_LO_BITMAP_TYPE
@ GDILoObjType_LO_METAFILE_TYPE
@ GDILoObjType_LO_REGION_TYPE
@ GDILoObjType_LO_EXTPEN_TYPE
@ GDILoObjType_LO_METAFILE16_TYPE
@ GDILoObjType_LO_ICMLCS_TYPE
@ GDILoObjType_LO_DC_TYPE
@ GDILoObjType_LO_PEN_TYPE
@ GDILoObjType_LO_ALTDC_TYPE
__kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteObjectApp(_In_ HANDLE hobj)
__kernel_entry W32KAPI BOOL APIENTRY NtGdiDeleteColorSpace(_In_ HANDLE hColorSpace)
static void DeleteRegion(GLUtesselator *tess, ActiveRegion *reg)
static BOOL GdiDeleteBrushOrPen(HGDIOBJ hobj)
BOOL WINAPI DeleteDC(_In_ HDC)
◆ GdiDeleteBrushOrPen()
FIXME: we need to mark the object as deleted!
Definition at line 282 of file gdiobj.c.
284{
289
291
294 {
297 {
299 if (pgO)
300 {
304 }
305 }
306 }
307
309}
FORCEINLINE PVOID GdiAllocBatchCommand(HDC hdc, USHORT Cmd)
enum GDILoObjType GDILOOBJTYPE
Referenced by DeleteObject().
◆ GetFontObjectA()
Definition at line 113 of file gdiobj.c.
117{
121
122
124
125
126 if (cbSize == 0)
127 {
128
129 return 0;
130 }
131
132
134
135
137 if (cbResult == 0)
138 {
139 return 0;
140 }
141
142
145
146
148
149
151
152
153 return cbSize;
154}
static TAGREF LPCWSTR LPDWORD LPVOID lpBuffer
VOID WINAPI EnumLogFontExW2A(LPENUMLOGFONTEXA fontA, CONST ENUMLOGFONTEXW *fontW)
#define memcpy(s1, s2, n)
DESIGNVECTOR elfDesignVector
ENUMLOGFONTEXA elfEnumLogfontEx
DESIGNVECTOR elfDesignVector
ENUMLOGFONTEXW elfEnumLogfontEx
W32KAPI INT APIENTRY NtGdiExtGetObjectW(IN HANDLE hobj, IN INT cjBufferSize, OUT LPVOID lpBuffer)
struct tagENUMLOGFONTEXDVA ENUMLOGFONTEXDVA
Referenced by GetObjectA().
◆ GetObjectA()
Definition at line 162 of file gdiobj.c.
166{
168
169
171 {
173 }
174 else
175 {
176
178 }
179}
#define GDI_OBJECT_TYPE_FONT
int WINAPI GetObjectW(_In_ HGDIOBJ hGdiObj, _In_ int cbSize, _Out_ LPVOID lpBuffer)
ULONG WINAPI GetFontObjectA(_In_ HGDIOBJ hfont, _In_ ULONG cbSize, _Out_ LPVOID lpBuffer)
◆ GetObjectType()
Definition at line 43 of file gdiobj.c.
45{
47
49 {
52 {
55 break;
58 break;
61 break;
64 break;
67 break;
70 break;
73 {
75 }
76 else
78 break;
81 break;
84 break;
87 break;
90 break;
93 break;
94
96
98 break;
99
100 default:
101 DPRINT1(
"GetObjectType: Magic 0x%08x not implemented\n",
Type);
102 break;
103 }
104 }
105 else
106
108 return Ret;
109}
#define ERROR_INVALID_HANDLE
DWORD WINAPI GetDCDWord(_In_ HDC hdc, _In_ UINT u, _In_ DWORD dwError)
#define GDI_OBJECT_TYPE_REGION
#define GDI_OBJECT_TYPE_DC
#define GDI_OBJECT_TYPE_BRUSH
#define GDI_OBJECT_TYPE_ENHMETAFILE
#define GDI_OBJECT_TYPE_COLORSPACE
#define GDI_OBJECT_TYPE_BITMAP
#define GDI_OBJECT_TYPE_PALETTE
#define GDI_OBJECT_TYPE_EXTPEN
#define GDI_OBJECT_TYPE_METADC
#define GDI_OBJECT_TYPE_PEN
#define GDI_OBJECT_TYPE_METAFILE
GLfloat GLfloat GLfloat GLfloat h
◆ GetObjectW()
Definition at line 187 of file gdiobj.c.
191{
194
195
197
198
200
201
202 switch (dwType)
203 {
206 break;
207
210 break;
211
214 break;
215
218 break;
219
222 break;
223
225
226 break;
227
230 {
232 return 0;
233 }
234 break;
235
242 default:
243 return 0;
244 }
245
246
248
249
250 if (cbResult == 0)
251 {
253 {
258 {
260 }
261 }
262 else
263 {
270 {
271 if (cbSize)
273 }
274 }
275 }
276
277 return cbResult;
278}
#define ERROR_INSUFFICIENT_BUFFER
#define ERROR_INVALID_PARAMETER
HGDIOBJ WINAPI GdiFixUpHandle(HGDIOBJ hGO)
#define GDI_OBJECT_TYPE_EMF
struct tagLOGBRUSH LOGBRUSH
Referenced by GetObjectA().
◆ GetStockObject()
Definition at line 13 of file gdiobj.c.
15{
17
20
23 {
25
27 {
29 }
30
32 }
33
34 return hobj;
35}
__kernel_entry W32KAPI HANDLE APIENTRY NtGdiGetStockObject(_In_ INT iObject)
HGDIOBJ stock_objects[NB_STOCK_OBJECTS]
◆ stock_objects