71{
74
76 {
77 pdcattr =
dc->pdcattr;
78 }
79
81 {
84 }
86 {
87 DPRINT1(
"WARNING! GdiBatch Fault!\n");
89 }
91
93 {
95 {
98 HBRUSH hOrgBrush;
99 COLORREF crColor, crBkColor, crBrushClr;
100 ULONG ulForegroundClr, ulBackgroundClr, ulBrushClr;
103
104 dwRop = pgDPB->
dwRop;
105 dwRop =
MAKEROP4(dwRop & 0xFF0000, dwRop);
106
108 {
109
110 break;
111 }
112
113 if (
dc->dclevel.pSurface ==
NULL)
114 {
115
116 break;
117 }
118
119 crColor =
dc->pdcattr->crForegroundClr;
120 crBkColor =
dc->pdcattr->ulBackgroundClr;
121 crBrushClr =
dc->pdcattr->crBrushClr;
122 ulForegroundClr =
dc->pdcattr->ulForegroundClr;
123 ulBackgroundClr =
dc->pdcattr->ulBackgroundClr;
124 ulBrushClr =
dc->pdcattr->ulBrushClr;
125 hOrgBrush =
dc->pdcattr->hbrush;
127
128 dc->pdcattr->hbrush = pgDPB->
hbrush;
135
142
144
145 dc->pdcattr->hbrush = hOrgBrush;
146 dc->pdcattr->crForegroundClr = crColor;
147 dc->pdcattr->crBackgroundClr = crBkColor;
148 dc->pdcattr->crBrushClr = crBrushClr;
149 dc->pdcattr->ulForegroundClr = ulForegroundClr;
150 dc->pdcattr->ulBackgroundClr = ulBackgroundClr;
151 dc->pdcattr->ulBrushClr = ulBrushClr;
152 dc->pdcattr->ulDirty_ |=
flags;
153 break;
154 }
155
157 {
164 COLORREF crColor, crBkColor, crBrushClr;
165 ULONG ulForegroundClr, ulBackgroundClr, ulBrushClr;
168
170 dwRop =
MAKEROP4(dwRop & 0xFF0000, dwRop);
171
173 {
174
175 break;
176 }
177
178 if (
dc->dclevel.pSurface ==
NULL)
179 {
180
181 break;
182 }
183
184 crColor =
dc->pdcattr->crForegroundClr;
185 crBkColor =
dc->pdcattr->ulBackgroundClr;
186 crBrushClr =
dc->pdcattr->crBrushClr;
187 ulForegroundClr =
dc->pdcattr->ulForegroundClr;
188 ulBackgroundClr =
dc->pdcattr->ulBackgroundClr;
189 ulBrushClr =
dc->pdcattr->ulBrushClr;
191
198
203
204 DPRINT1(
"GdiBCPolyPatBlt Testing\n");
205 pRects = &pgDPB->
pRect[0];
206
208 {
210
211
213 {
214
216
223 dwRop,
224 &eboFill);
225
226
229 }
230 pRects++;
231 }
232
233
234 dc->pdcattr->crForegroundClr = crColor;
235 dc->pdcattr->crBackgroundClr = crBkColor;
236 dc->pdcattr->crBrushClr = crBrushClr;
237 dc->pdcattr->ulForegroundClr = ulForegroundClr;
238 dc->pdcattr->ulBackgroundClr = ulBackgroundClr;
239 dc->pdcattr->ulBrushClr = ulBrushClr;
240 dc->pdcattr->ulDirty_ |=
flags;
241 break;
242 }
243
245 {
248 ULONG ulForegroundClr, ulBackgroundClr;
249 DWORD flags = 0, flXform = 0, saveflags, saveflXform = 0;
250 FLONG flTextAlign = -1;
258
259
261
262
264 {
265 crColor =
dc->pdcattr->crForegroundClr;
267 ulForegroundClr =
dc->pdcattr->ulForegroundClr;
270 }
272 {
273 crBkColor =
dc->pdcattr->ulBackgroundClr;
275 ulBackgroundClr =
dc->pdcattr->ulBackgroundClr;
278 }
280 {
281 flTextAlign =
dc->pdcattr->flTextAlign;
283 }
285 {
286 hlfntNew =
dc->pdcattr->hlfntNew;
288 dc->pdcattr->ulDirty_ &= ~SLOW_WIDTHS;
290 }
291
294 {
296 ptlViewportOrg =
dc->pdcattr->ptlViewportOrg;
299 }
300
301 dc->pdcattr->flXform |= flXform;
302 dc->pdcattr->ulDirty_ |=
flags;
303
304 jBkMode =
dc->pdcattr->jBkMode;
306 lBkMode =
dc->pdcattr->lBkMode;
308
311
321
322
323 dc->pdcattr->jBkMode = jBkMode;
324 dc->pdcattr->lBkMode = lBkMode;
325
326 if (saveflXform)
327 {
328 dc->pdcattr->ptlViewportOrg = ptlViewportOrg;
329 dc->pdcattr->flXform |= saveflXform|flXform;
330 }
331
333 {
334 dc->pdcattr->crForegroundClr = crColor;
335 dc->pdcattr->ulForegroundClr = ulForegroundClr;
336 }
338 {
339 dc->pdcattr->crBackgroundClr = crBkColor;
340 dc->pdcattr->ulBackgroundClr = ulBackgroundClr;
341 }
342 if (flTextAlign != -1)
343 {
344 dc->pdcattr->flTextAlign = flTextAlign;
345 }
346
348 {
349 dc->pdcattr->hlfntNew = hlfntNew;
350 dc->pdcattr->ulDirty_ &= ~SLOW_WIDTHS;
351 }
352 dc->pdcattr->ulDirty_ |= saveflags |
flags;
353 dc->pdcattr->flXform |= saveflXform | flXform;
354 break;
355 }
356
358 {
361 ULONG ulBackgroundClr;
363 DWORD flags = 0, flXform = 0, saveflags, saveflXform = 0;
366
368
370 {
371 crBkColor =
dc->pdcattr->crBackgroundClr;
372 ulBackgroundClr =
dc->pdcattr->ulBackgroundClr;
376 }
377
380 {
382 ptlViewportOrg =
dc->pdcattr->ptlViewportOrg;
385 }
386
387 dc->pdcattr->flXform |= flXform;
388 dc->pdcattr->ulDirty_ |=
flags;
389
391 0,
392 0,
398 0 );
399
400 if (saveflXform)
401 {
402 dc->pdcattr->ptlViewportOrg = ptlViewportOrg;
403 dc->pdcattr->flXform |= saveflXform|flXform;
404 }
405
407 {
408 dc->pdcattr->crBackgroundClr = crBkColor;
409 dc->pdcattr->ulBackgroundClr = ulBackgroundClr;
410 }
411 dc->pdcattr->ulDirty_ |= saveflags |
flags;
412 dc->pdcattr->flXform |= saveflXform | flXform;
413 break;
414 }
415
417 {
423 break;
424 }
425
427 {
432 break;
433 }
434
436 {
438
441
443 break;
444 }
445
447 DPRINT(
"Delete Region Object!\n");
448
450 {
453 break;
454 }
455
456 default:
457 break;
458 }
459
461}
int FASTCALL IntGdiExtSelectClipRect(PDC, PRECTL, int)
HFONT NTAPI DC_hSelectFont(_In_ PDC pdc, _In_ HFONT hlfntNew)
VOID FASTCALL DC_vUpdateTextBrush(PDC pdc)
VOID FASTCALL DC_vUpdateBackgroundBrush(PDC pdc)
VOID NTAPI DC_vSetBrushOrigin(PDC pdc, LONG x, LONG y)
VOID FASTCALL DC_vUpdateFillBrush(PDC pdc)
VOID NTAPI EBRUSHOBJ_vInitFromDC(EBRUSHOBJ *pebo, PBRUSH pbrush, PDC pdc)
VOID NTAPI EBRUSHOBJ_vCleanup(EBRUSHOBJ *pebo)
#define BRUSH_ShareLockBrush(hBrush)
#define BRUSH_ShareUnlockBrush(pBrush)
BOOL FASTCALL IntPatBlt(PDC, INT, INT, INT, INT, DWORD, PEBRUSHOBJ)
BOOL APIENTRY IntExtTextOutW(IN PDC, IN INT, IN INT, IN UINT, IN OPTIONAL PRECTL, IN LPCWSTR, IN INT, IN OPTIONAL const INT *, IN DWORD)
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
#define EXCEPTION_EXECUTE_HANDLER
#define WIN32_ROP4_USES_SOURCE(Rop)
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
#define WORLD_XFORM_CHANGED
#define DEVICE_TO_WORLD_INVALID
#define PAGE_XLATE_CHANGED
struct _GDIBSEXTTEXTOUT * PGDIBSEXTTEXTOUT
struct _GDIBSPPATBLT * PGDIBSPPATBLT
struct _GDIBSSETBRHORG * PGDIBSSETBRHORG
struct _GDIBSTEXTOUT * PGDIBSTEXTOUT
struct _GDIBSOBJECT * PGDIBSOBJECT
struct _GDIBSEXTSELCLPRGN * PGDIBSEXTSELCLPRGN
struct _GDIBSPATBLT * PGDIBSPATBLT
#define _SEH2_EXCEPT(...)
#define _SEH2_YIELD(__stmt)
_Must_inspect_result_ _In_ WDFDEVICE _In_ PWDF_DEVICE_PROPERTY_DATA _In_ DEVPROPTYPE _In_ ULONG Size
BOOL NTAPI GreDeleteObject(HGDIOBJ hobj)
_In_ int _Inout_ LPRECT lprc