ReactOS  0.4.15-dev-5455-g015cd25
gdi32p.h
Go to the documentation of this file.
1 /*
2  * COPYRIGHT: See COPYING in the top level directory
3  * PROJECT: ReactOS System Libraries
4  * FILE: win32ss/gdi/gdi32/include/gdi32p.h
5  * PURPOSE: User-Mode Win32 GDI Library Private Header
6  * PROGRAMMER: Alex Ionescu (alex@relsoft.net)
7  */
8 
9 #pragma once
10 
11 /* DATA **********************************************************************/
12 
15 extern HANDLE hProcessHeap;
17 extern DWORD GDI_BatchLimit;
18 extern PDEVCAPS GdiDevCaps;
19 extern BOOL gbLpk; // Global bool LanguagePack
20 extern HANDLE ghSpooler;
22 
23 typedef INT
25  HDC hdc,
26  INT iFunction,
27  HANDLE hPageQuery
28 );
29 
30 typedef BOOL
32  HDC hdc,
33  int x,
34  int y,
35  UINT fuOptions,
36  const RECT *lprc,
37  LPCWSTR lpString,
38  UINT uCount,
39  const INT *lpDx,
40  INT unknown
41 );
42 
43 typedef DWORD
45  HDC hdc,
46  LPCWSTR lpString,
47  INT uCount,
48  INT nMaxExtent,
49  LPGCP_RESULTSW lpResults,
50  DWORD dwFlags,
51  DWORD dwUnused
52 );
53 
54 typedef BOOL
56  HDC hdc,
57  LPCWSTR lpString,
58  INT cString,
59  INT nMaxExtent,
60  LPINT lpnFit,
61  LPINT lpnDx,
62  LPSIZE lpSize,
63  DWORD dwUnused,
64  int unknown
65 );
66 
67 extern HINSTANCE hLpk;
68 extern LPKETO LpkExtTextOut;
71 
72 /* DEFINES *******************************************************************/
73 
74 #define HANDLE_LIST_INC 20
75 
76 #define METAFILE_MEMORY 1
77 #define METAFILE_DISK 2
78 
79 #define SAPCALLBACKDELAY 244
80 
81 #define LPK_INIT 1
82 #define LPK_ETO 2
83 #define LPK_GCP 3
84 #define LPK_GTEP 4
85 
86 /* MACRO ********************************************************************/
87 
88 #define ROP_USES_SOURCE(Rop) (((Rop) << 2 ^ Rop) & 0xCC0000)
89 #define RCAST(_Type, _Value) (*((_Type*)&_Value))
90 
91 
92 /* TYPES *********************************************************************/
93 
94 // Based on wmfapi.h and Wine.
95 typedef struct tagMETAFILEDC
96 {
104  HPEN hPen;
105  HBRUSH hBrush;
108  HPALETTE hPalette;
111  HRGN hRegion;
114  HPEN hExtPen;
117  HCOLORSPACE hColorSpace;
120 
121 // Metafile Entry handle
122 typedef struct tagMF_ENTRY
123 {
125  HGDIOBJ hmDC; // Handle return from NtGdiCreateClientObj.
127 } MF_ENTRY, *PMF_ENTRY;
128 
129 typedef struct tagENHMETAFILE
130 {
132  HANDLE hFile; /* Handle for disk based MetaFile */
147 
148 
149 #define PDEV_UMPD_ID 0xFEDCBA98
150 // UMPDEV flags
151 #define UMPDEV_NO_ESCAPE 0x0002
152 #define UMPDEV_SUPPORT_ESCAPE 0x0004
153 typedef struct _UMPDEV
154 {
155  DWORD_PTR Sig; // Init with PDEV_UMPD_ID
161  DWORD dwConfigVersion; // Number of times the configuration
162  // file for this driver has been upgraded
163  // or downgraded since the last spooler restart.
164  DWORD dwDriverCount; // After init should be 2
168  PVOID apfn[INDEX_LAST]; // Print Driver pfn
169 } UMPDEV, *PUMPDEV;
170 
171 #define LOCALFONT_COUNT 10
172 typedef struct _LOCALFONT
173 {
176 
177 // sdk/winspool.h
187 typedef HANDLE (WINAPI *GETSPOOLFILEHANDLE) (HANDLE); // W2k8
195 // ddk/winsplp.h
198 // Same as ddk/winsplp.h DriverUnloadComplete?
200 // Driver support:
201 // DrvDocumentEvent api/winddiui.h not W2k8 DocumentEventAW
203 // DrvQueryColorProfile
205 // Unknown:
208 
211 
212 /* FUNCTIONS *****************************************************************/
213 
214 PVOID
216 
217 NTSTATUS
219  LPWSTR* ppszW,
220  LPCSTR lpszA
221 );
222 
223 VOID
225 
226 VOID
227 FASTCALL
229  const TEXTMETRICW *ptmW,
230  LPTEXTMETRICA ptmA
231 );
232 
233 VOID
234 FASTCALL
236  NEWTEXTMETRICA *tma,
237  NEWTEXTMETRICW *tmw
238 );
239 
240 VOID
241 FASTCALL
243  NEWTEXTMETRICEXA *tma,
244  NEWTEXTMETRICEXW *tmw
245 );
246 
247 BOOL
248 FASTCALL
249 DeleteRegion( HRGN );
250 
251 BOOL
252 WINAPI
254 
255 BOOL
257  HGDIOBJ hGdiObj,
259  PVOID *UserData
260 );
261 
262 PLDC
263 FASTCALL
264 GdiGetLDC(HDC hDC);
265 
266 BOOL
267 FASTCALL
268 GdiSetLDC(HDC hdc, PVOID pvLDC);
269 
270 HGDIOBJ
271 WINAPI
273 
274 BOOL
275 WINAPI
277  CONST BITMAPINFOHEADER *BitmapInfoHeader,
278  UINT *ColorSpec,
279  UINT *ColorTableSize
280 );
281 
283 WINAPI
285  CONST BITMAPINFO *BitmapInfo,
286  UINT ColorSpec,
287  UINT *BitmapInfoSize,
288  BOOL FollowedByData
289 );
290 
291 DWORD
292 WINAPI
294  _In_ HDC hdc,
295  _In_ UINT u,
296  _In_ DWORD dwIn,
297  _In_ ULONG ulMFId,
298  _In_ USHORT usMF16Id,
299  _In_ DWORD dwError);
300 
301 DWORD
302 WINAPI
303 GetDCDWord(
304  _In_ HDC hdc,
305  _In_ UINT u,
306  _In_ DWORD dwError);
307 
308 HGDIOBJ
309 WINAPI
310 GetDCObject( HDC, INT);
311 
312 VOID
313 NTAPI
314 LogFontA2W(
315  LPLOGFONTW pW,
316  CONST LOGFONTA *pA
317 );
318 
319 VOID
320 NTAPI
321 LogFontW2A(
322  LPLOGFONTA pA,
323  CONST LOGFONTW *pW
324 );
325 
326 VOID
327 WINAPI
329  LPENUMLOGFONTEXA fontA,
331 
332 BOOL
333 WINAPI
334 LoadLPK(
335  INT LpkFunctionID
336 );
337 
338 VOID
339 WINAPI
341  _In_ DWORD InitParam);
342 
343 VOID
344 WINAPI
346  _In_ FARPROC *hookfuncs);
347 
348 BOOL
349 WINAPI
350 GetETM(HDC hdc,
351  EXTTEXTMETRIC *petm);
352 
353 /* FIXME: Put in some public header */
354 UINT
355 WINAPI
357 
358 int
359 WINAPI
361 
362 VOID
363 WINAPI
364 GdiSetLastError( DWORD dwErrCode );
365 
367 
368 int
369 WINAPI
371 
372 VOID GdiSAPCallback(PLDC pldc);
374 
378 
380 PVOID
382  HDC hdc,
383  USHORT Cmd)
384 {
385  PTEB pTeb;
386  USHORT cjSize;
387  PGDIBATCHHDR pHdr;
388 
389  /* Get a pointer to the TEB */
390  pTeb = NtCurrentTeb();
391 
392  /* Check if we have a valid environment */
393  if (!pTeb || !pTeb->Win32ThreadInfo) return NULL;
394 
395  /* Get the size of the entry */
396  if (Cmd == GdiBCPatBlt) cjSize = sizeof(GDIBSPATBLT);
397  else if (Cmd == GdiBCPolyPatBlt) cjSize = sizeof(GDIBSPPATBLT);
398  else if (Cmd == GdiBCTextOut) cjSize = sizeof(GDIBSTEXTOUT);
399  else if (Cmd == GdiBCExtTextOut) cjSize = sizeof(GDIBSEXTTEXTOUT);
400  else if (Cmd == GdiBCSetBrushOrg) cjSize = sizeof(GDIBSSETBRHORG);
401  else if (Cmd == GdiBCExtSelClipRgn) cjSize = sizeof(GDIBSEXTSELCLPRGN);
402  else if (Cmd == GdiBCSelObj) cjSize = sizeof(GDIBSOBJECT);
403  else if (Cmd == GdiBCDelRgn) cjSize = sizeof(GDIBSOBJECT);
404  else if (Cmd == GdiBCDelObj) cjSize = sizeof(GDIBSOBJECT);
405  else cjSize = 0;
406 
407  /* Unsupported operation */
408  if (cjSize == 0) return NULL;
409 
410  /* Do we use a DC? */
411  if (hdc)
412  {
413  /* If the batch DC is NULL, we set this one as the new one */
414  if (!pTeb->GdiTebBatch.HDC) pTeb->GdiTebBatch.HDC = hdc;
415 
416  /* If not, check if the batch DC equal to our DC */
417  else if (pTeb->GdiTebBatch.HDC != hdc) return NULL;
418  }
419 
420  /* Check if the buffer is full */
421  if ((pTeb->GdiBatchCount >= GDI_BatchLimit) ||
423  {
424  /* Call win32k, the kernel will call NtGdiFlushUserBatch to flush
425  the current batch */
426  NtGdiFlush();
427 
428  // If Flushed, lose the hDC for this batch job! See CORE-15839.
429  if (hdc)
430  {
431  if (!pTeb->GdiTebBatch.HDC) pTeb->GdiTebBatch.HDC = hdc;
432  }
433  }
434 
435  /* Get the head of the entry */
436  pHdr = (PVOID)((PUCHAR)pTeb->GdiTebBatch.Buffer + pTeb->GdiTebBatch.Offset);
437 
438  /* Update Offset and batch count */
439  pTeb->GdiTebBatch.Offset += cjSize;
440  pTeb->GdiBatchCount++;
441 
442  /* Fill in the core fields */
443  pHdr->Cmd = Cmd;
444  pHdr->Size = cjSize;
445 
446  return pHdr;
447 }
448 
450 PDC_ATTR
452 {
453  GDILOOBJTYPE eDcObjType;
454  PDC_ATTR pdcattr;
455 
456  /* Check DC object type */
457  eDcObjType = GDI_HANDLE_GET_TYPE(hdc);
458  if ((eDcObjType != GDILoObjType_LO_DC_TYPE) &&
459  (eDcObjType != GDILoObjType_LO_ALTDC_TYPE))
460  {
461  return NULL;
462  }
463 
464  /* Get the DC attribute */
465  if (!GdiGetHandleUserData((HGDIOBJ)hdc, eDcObjType, (PVOID*)&pdcattr))
466  {
467  return NULL;
468  }
469 
470  return pdcattr;
471 }
472 
474 PRGN_ATTR
476 {
477  PRGN_ATTR prgnattr;
478 
479  /* Get the region attribute */
481  {
482  return NULL;
483  }
484 
485  return prgnattr;
486 }
487 
488 #ifdef _M_IX86
490 #define FOtoF(pfo) EFtoF((EFLOAT_S*)pfo)
491 #else
492 #define FOtoF(pfo) (*(pfo))
493 #endif
494 
495 /* This is an inlined version of lrintf. */
497 int
498 _lrintf(float f)
499 {
500 #if defined(_M_IX86) && defined(__GNUC__)
501  int result;
502  __asm__ __volatile__ ("fistpl %0" : "=m" (result) : "t" (f) : "st");
503  return result;
504 #elif defined(_M_IX86) && defined(_MSC_VER)
505  int result;
506  __asm
507  {
508  fld f;
509  fistp result;
510  }
511 #else
512  /* slow, but portable */
513  return (int)(f >= 0 ? f+0.5 : f-0.5);
514 #endif
515 }
516 
517 HBRUSH
518 WINAPI
520  _In_ HDC hdc,
521  _In_ HBRUSH hbr);
522 
523 HPEN
524 WINAPI
526  _In_ HDC hdc,
527  _In_ HPEN hpen);
528 
529 HFONT
530 WINAPI
532  _In_ HDC hdc,
533  _In_ HFONT hfont);
534 
535 HGDIOBJ
536 WINAPI
538  _In_ PVOID pvObject,
539  _In_ GDILOOBJTYPE eObjType);
540 
541 PVOID
542 WINAPI
544  _In_ HGDIOBJ hobj);
545 
546 BOOL
547 WINAPI
549  _In_ HGDIOBJ hobj,
550  _In_ PVOID pvObject);
551 
552 PVOID
553 WINAPI
555  _In_ HGDIOBJ hobj);
556 
557 PVOID
558 WINAPI
560  _In_ HGDIOBJ hobj);
561 
562 extern ULONG gcClientObj;
563 
564 VOID
565 WINAPI
567 
568 BOOL
569 WINAPI
571  _In_ HDC hdc);
572 
574 
575 BOOL
576 WINAPI
578  HDC hdc,
579  INT x,
580  INT y,
581  UINT fuOptions,
582  const RECT *lprc,
583  LPCWSTR lpString,
584  UINT cchString,
585  const INT *lpDx);
586 
587 
588 /* The following METADC_* functions follow this pattern: */
589 #define HANDLE_METADC(_RetType, _Func, dwError, hdc, ...) \
590  if (GDI_HANDLE_GET_TYPE(hdc) != GDILoObjType_LO_DC_TYPE) \
591  { \
592  if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_METADC16_TYPE) \
593  { \
594  return (_RetType)METADC_##_Func(hdc, __VA_ARGS__); \
595  } \
596  else \
597  { \
598  PLDC pLDC = GdiGetLDC(hdc); \
599  _RetType _Ret = dwError; \
600  if ( !pLDC ) \
601  { \
602  SetLastError(ERROR_INVALID_HANDLE); \
603  return (_RetType)_Ret; \
604  } \
605  if ( pLDC->iType == LDC_EMFLDC && !(EMFDC_##_Func(pLDC, __VA_ARGS__)) ) \
606  { \
607  return (_RetType)_Ret; \
608  } \
609  /* Fall through to support information DC's.*/ \
610  } \
611  }
612 
613 #define HANDLE_METADC16(_RetType, _Func, dwError, hdc, ...) \
614  if (GDI_HANDLE_GET_TYPE(hdc) != GDILoObjType_LO_DC_TYPE) \
615  { \
616  if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_METADC16_TYPE) \
617  { \
618  return METADC_##_Func(hdc, __VA_ARGS__); \
619  } \
620  }
621 
622 #define HANDLE_METADC0P(_RetType, _Func, dwError, hdc, ...) \
623  if (GDI_HANDLE_GET_TYPE(hdc) != GDILoObjType_LO_DC_TYPE) \
624  { \
625  PLDC pLDC = NULL; \
626  _RetType _Ret = dwError; \
627  if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_METADC16_TYPE) \
628  { \
629  return (_RetType)_Ret; \
630  } \
631  pLDC = GdiGetLDC(hdc); \
632  if ( !pLDC ) \
633  { \
634  SetLastError(ERROR_INVALID_HANDLE); \
635  return (_RetType)_Ret; \
636  } \
637  if ( pLDC->iType == LDC_EMFLDC && !(EMFDC_##_Func(pLDC)) ) \
638  { \
639  return (_RetType)_Ret; \
640  } \
641  /* Fall through to support information DC's.*/ \
642  }
643 
644 #define HANDLE_EMETAFDC(_RetType, _Func, dwError, hdc, ...) \
645  if (GDI_HANDLE_GET_TYPE(hdc) != GDILoObjType_LO_DC_TYPE) \
646  { \
647  PLDC pLDC = NULL; \
648  _RetType _Ret = dwError; \
649  if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_METADC16_TYPE) \
650  { \
651  return (_RetType)_Ret; \
652  } \
653  pLDC = GdiGetLDC(hdc); \
654  if ( !pLDC ) \
655  { \
656  SetLastError(ERROR_INVALID_HANDLE); \
657  return (_RetType)_Ret; \
658  } \
659  if ( pLDC->iType == LDC_EMFLDC && !(EMFDC_##_Func(pLDC, __VA_ARGS__)) ) \
660  { \
661  return (_RetType)_Ret; \
662  } \
663  /* Fall through to support information DC's.*/ \
664  }
665 
666 #define HANDLE_METADC1P(_RetType, _Func, dwError, hdc, ...) \
667  if (GDI_HANDLE_GET_TYPE(hdc) != GDILoObjType_LO_DC_TYPE) \
668  { \
669  if (GDI_HANDLE_GET_TYPE(hdc) == GDILoObjType_LO_METADC16_TYPE) \
670  { \
671  return (_RetType)METADC_##_Func(hdc); \
672  } \
673  else \
674  { \
675  PLDC pLDC = GdiGetLDC(hdc); \
676  _RetType _Ret = dwError; \
677  if ( !pLDC ) \
678  { \
679  SetLastError(ERROR_INVALID_HANDLE); \
680  return (_RetType)_Ret; \
681  } \
682  if ( pLDC->iType == LDC_EMFLDC && !(EMFDC_##_Func(pLDC)) ) \
683  { \
684  return (_RetType)_Ret; \
685  } \
686  /* Fall through to support information DC's.*/ \
687  } \
688  }
689 
690 
693 
695 
696 HENHMETAFILE WINAPI SetEnhMetaFileBitsAlt( PDWORD pdw, LPWSTR FilePart, HANDLE hFile, LARGE_INTEGER li);
697 
698 /* meta dc files */
700  INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
701 extern BOOL METADC_BitBlt( HDC hdc_dst, INT x_dst, INT y_dst, INT width, INT height,
702  HDC hdc_src, INT x_src, INT y_src, DWORD rop );
703 extern BOOL METADC_Chord( HDC hdc, INT left, INT top, INT right, INT bottom, INT xstart,
704  INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
708 extern BOOL METADC_ExtEscape( HDC hdc, INT escape, INT input_size, LPCSTR input, INT output_size, LPVOID output ) DECLSPEC_HIDDEN;
710  UINT fill_type ) DECLSPEC_HIDDEN;
712 extern BOOL METADC_ExtTextOut( HDC hdc, INT x, INT y, UINT flags, const RECT *rect,
713  const WCHAR *str, UINT count, const INT *dx ) DECLSPEC_HIDDEN;
714 extern BOOL METADC_FillRgn( HDC hdc, HRGN hrgn, HBRUSH hbrush ) DECLSPEC_HIDDEN;
715 extern BOOL METADC_FrameRgn( HDC hdc, HRGN hrgn, HBRUSH hbrush, INT x, INT y ) DECLSPEC_HIDDEN;
728  INT xstart, INT ystart, INT xend, INT yend ) DECLSPEC_HIDDEN;
729 extern BOOL METADC_PolyPolygon( HDC hdc, const POINT *points, const INT *counts,
730  UINT polygons ) DECLSPEC_HIDDEN;
737  INT ell_width, INT ell_height ) DECLSPEC_HIDDEN;
739 extern BOOL METADC_ScaleViewportExtEx( HDC hdc, INT x_num, INT x_denom, INT y_num,
740  INT y_denom ) DECLSPEC_HIDDEN;
741 extern BOOL METADC_ScaleWindowExtEx( HDC hdc, INT x_num, INT x_denom, INT y_num,
742  INT y_denom ) DECLSPEC_HIDDEN;
747 extern INT METADC_SetDIBitsToDevice( HDC hdc, INT x_dest, INT y_dest, DWORD width, DWORD height,
748  INT x_src, INT y_src, UINT startscan, UINT lines,
749  const void *bits, const BITMAPINFO *info,
750  UINT coloruse ) DECLSPEC_HIDDEN;
767 extern BOOL METADC_StretchBlt( HDC hdc_dst, INT x_dst, INT y_dst, INT width_dst, INT height_dst,
768  HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src,
769  DWORD rop );
770 extern BOOL METADC_StretchDIBits( HDC hdc, INT x_dst, INT y_dst, INT width_dst, INT height_dst,
771  INT x_src, INT y_src, INT width_src, INT height_src,
772  const void *bits, const BITMAPINFO *info, UINT coloruse,
774 /* enhanced metafiles */
775 extern BOOL EMFDC_AbortPath( LDC *dc_attr ) DECLSPEC_HIDDEN;
776 extern BOOL EMFDC_AlphaBlend( LDC *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst,
777  HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src,
778  BLENDFUNCTION blend_function );
779 extern BOOL EMFDC_AngleArc( LDC *dc_attr, INT x, INT y, DWORD radius, FLOAT start,
780  FLOAT sweep ) DECLSPEC_HIDDEN;
781 extern BOOL EMFDC_ArcChordPie( LDC *dc_attr, INT left, INT top, INT right,
782  INT bottom, INT xstart, INT ystart, INT xend,
783  INT yend, DWORD type ) DECLSPEC_HIDDEN;
784 extern BOOL EMFDC_BeginPath( LDC *dc_attr ) DECLSPEC_HIDDEN;
785 extern BOOL EMFDC_BitBlt( LDC *dc_attr, INT x_dst, INT y_dst, INT width, INT height,
786  HDC hdc_src, INT x_src, INT y_src, DWORD rop );
787 extern BOOL EMFDC_CloseFigure( LDC *dc_attr ) DECLSPEC_HIDDEN;
788 extern BOOL EMFDC_DeleteDC( LDC *dc_attr ) DECLSPEC_HIDDEN;
789 extern BOOL EMFDC_Ellipse( LDC *dc_attr, INT left, INT top, INT right,
791 extern BOOL EMFDC_EndPath( LDC *dc_attr ) DECLSPEC_HIDDEN;
792 extern BOOL EMFDC_ExcludeClipRect( LDC *dc_attr, INT left, INT top, INT right,
794 extern BOOL EMFDC_ExtFloodFill( LDC *dc_attr, INT x, INT y, COLORREF color,
795  UINT fill_type ) DECLSPEC_HIDDEN;
796 extern BOOL EMFDC_ExtSelectClipRgn( LDC *dc_attr, HRGN hrgn, INT mode ) DECLSPEC_HIDDEN;
797 extern BOOL EMFDC_ExtTextOut( LDC *dc_attr, INT x, INT y, UINT flags, const RECT *rect,
798  const WCHAR *str, UINT count, const INT *dx ) DECLSPEC_HIDDEN;
799 extern BOOL EMFDC_FillPath( LDC *dc_attr ) DECLSPEC_HIDDEN;
800 extern BOOL EMFDC_FillRgn( LDC *dc_attr, HRGN hrgn, HBRUSH hbrush ) DECLSPEC_HIDDEN;
801 extern BOOL EMFDC_FlattenPath( LDC *dc_attr ) DECLSPEC_HIDDEN;
802 extern BOOL EMFDC_FrameRgn( LDC *dc_attr, HRGN hrgn, HBRUSH hbrush, INT width,
804 extern BOOL EMFDC_GradientFill( LDC *dc_attr, TRIVERTEX *vert_array, ULONG nvert,
805  void *grad_array, ULONG ngrad, ULONG mode ) DECLSPEC_HIDDEN;
806 extern BOOL EMFDC_IntersectClipRect( LDC *dc_attr, INT left, INT top, INT right,
808 extern BOOL EMFDC_InvertRgn( LDC *dc_attr, HRGN hrgn ) DECLSPEC_HIDDEN;
809 extern BOOL EMFDC_LineTo( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
810 extern BOOL EMFDC_ModifyWorldTransform( LDC *dc_attr, const XFORM *xform,
812 extern BOOL EMFDC_MoveTo( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
813 extern BOOL EMFDC_OffsetClipRgn( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
814 extern BOOL EMFDC_PaintRgn( LDC *dc_attr, HRGN hrgn ) DECLSPEC_HIDDEN;
815 extern BOOL EMFDC_PatBlt( LDC *dc_attr, INT left, INT top, INT width, INT height, DWORD rop );
816 extern BOOL EMFDC_PolyBezier( LDC *dc_attr, const POINT *points, DWORD count ) DECLSPEC_HIDDEN;
817 extern BOOL EMFDC_PolyBezierTo( LDC *dc_attr, const POINT *points, DWORD count ) DECLSPEC_HIDDEN;
818 extern BOOL EMFDC_PolyDraw( LDC *dc_attr, const POINT *points, const BYTE *types,
820 extern BOOL EMFDC_PolyPolyline( LDC *dc_attr, const POINT *points, const DWORD *counts,
821  DWORD polys ) DECLSPEC_HIDDEN;
822 extern BOOL EMFDC_PolyPolygon( LDC *dc_attr, const POINT *points, const INT *counts,
823  UINT polys ) DECLSPEC_HIDDEN;
824 extern BOOL EMFDC_Polygon( LDC *dc_attr, const POINT *points, INT count ) DECLSPEC_HIDDEN;
825 extern BOOL EMFDC_Polyline( LDC *dc_attr, const POINT *points, INT count) DECLSPEC_HIDDEN;
826 extern BOOL EMFDC_PolylineTo( LDC *dc_attr, const POINT *points, INT count ) DECLSPEC_HIDDEN;
827 extern BOOL EMFDC_Rectangle( LDC *dc_attr, INT left, INT top, INT right,
829 extern BOOL EMFDC_RestoreDC( LDC *dc_attr, INT level ) DECLSPEC_HIDDEN;
830 extern BOOL EMFDC_RoundRect( LDC *dc_attr, INT left, INT top, INT right, INT bottom,
831  INT ell_width, INT ell_height ) DECLSPEC_HIDDEN;
832 extern BOOL EMFDC_SaveDC( LDC *dc_attr ) DECLSPEC_HIDDEN;
833 extern BOOL EMFDC_ScaleViewportExtEx( LDC *dc_attr, INT x_num, INT x_denom, INT y_num,
834  INT y_denom ) DECLSPEC_HIDDEN;
835 extern BOOL EMFDC_ScaleWindowExtEx( LDC *dc_attr, INT x_num, INT x_denom, INT y_num,
836  INT y_denom ) DECLSPEC_HIDDEN;
839 extern BOOL EMFDC_SelectPalette( LDC *dc_attr, HPALETTE palette ) DECLSPEC_HIDDEN;
842 extern BOOL EMFDC_SetBkMode( LDC *dc_attr, INT mode ) DECLSPEC_HIDDEN;
845 extern BOOL EMFDC_SetDIBitsToDevice( LDC *dc_attr, INT x_dest, INT y_dest, DWORD width,
846  DWORD height, INT x_src, INT y_src, UINT startscan,
847  UINT lines, const void *bits, const BITMAPINFO *info,
848  UINT coloruse ) DECLSPEC_HIDDEN;
849 extern BOOL EMFDC_SetLayout( LDC *dc_attr, DWORD layout ) DECLSPEC_HIDDEN;
850 extern BOOL EMFDC_SetMapMode( LDC *dc_attr, INT mode ) DECLSPEC_HIDDEN;
852 extern BOOL EMFDC_SetPixel( LDC *dc_attr, INT x, INT y, COLORREF color ) DECLSPEC_HIDDEN;
854 extern BOOL EMFDC_SetROP2( LDC *dc_attr, INT rop ) DECLSPEC_HIDDEN;
858 extern BOOL EMFDC_SetTextJustification( LDC *dc_attr, INT extra, INT breaks ) DECLSPEC_HIDDEN;
859 extern BOOL EMFDC_SetViewportExtEx( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
860 extern BOOL EMFDC_SetViewportOrgEx( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
861 extern BOOL EMFDC_SetWindowExtEx( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
862 extern BOOL EMFDC_SetWindowOrgEx( LDC *dc_attr, INT x, INT y ) DECLSPEC_HIDDEN;
863 extern BOOL EMFDC_SetWorldTransform( LDC *dc_attr, const XFORM *xform ) DECLSPEC_HIDDEN;
864 extern BOOL EMFDC_StretchBlt( LDC *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst,
865  HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src,
866  DWORD rop );
867 extern BOOL EMFDC_StretchDIBits( LDC *dc_attr, INT x_dst, INT y_dst, INT width_dst,
868  INT height_dst, INT x_src, INT y_src, INT width_src,
869  INT height_src, const void *bits, const BITMAPINFO *info,
870  UINT coloruse, DWORD rop ) DECLSPEC_HIDDEN;
872 extern BOOL EMFDC_StrokePath( LDC *dc_attr ) DECLSPEC_HIDDEN;
873 extern BOOL EMFDC_WidenPath( LDC *dc_attr ) DECLSPEC_HIDDEN;
874 
875 
876 BOOL EMFDC_MaskBlt( LDC *dc_attr, INT xDest, INT yDest, INT cx, INT cy, HDC hdcSrc, INT xSrc, INT ySrc, HBITMAP hbmMask, INT xMask, INT yMask, DWORD dwRop);
877 BOOL EMFDC_PlgBlt( LDC *dc_attr, const POINT * ppt, HDC hdcSrc, INT xSrc, INT ySrc, INT cx, INT cy, HBITMAP hbmMask, INT xMask, INT yMask);
878 BOOL EMFDC_TransparentBlt( LDC *dc_attr, INT xDst, INT yDst, INT cxDst, INT cyDst, HDC hdcSrc, INT xSrc, INT ySrc, INT cxSrc, INT cySrc, UINT crTransparent);
879 BOOL EMFDC_SetBrushOrg( LDC *dc_attr, INT x, INT y);
880 BOOL EMFDC_SetMetaRgn( LDC *dc_attr );
881 BOOL EMFDC_WriteNamedEscape( LDC *dc_attr, PWCHAR pDriver, INT nEscape, INT cbInput, LPCSTR lpszInData);
882 BOOL EMFDC_WriteEscape( LDC *dc_attr, INT nEscape, INT cbInput, LPSTR lpszInData, DWORD emrType);
883 
884 
885 FORCEINLINE BOOL EMFDC_Arc( PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend )
886 {
887  return EMFDC_ArcChordPie( dc_attr, left, top, right, bottom, xstart, ystart, xend, yend, EMR_ARC );
888 }
889 
890 FORCEINLINE BOOL EMFDC_ArcTo( PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend )
891 {
892 return EMFDC_ArcChordPie( dc_attr, left, top, right, bottom, xstart, ystart, xend, yend, EMR_ARCTO );
893 }
894 FORCEINLINE BOOL EMFDC_Chord( PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend )
895 {
896 return EMFDC_ArcChordPie( dc_attr, left, top, right, bottom, xstart, ystart, xend, yend, EMR_CHORD );
897 }
898 
899 FORCEINLINE BOOL EMFDC_Pie( PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend )
900 {
901 return EMFDC_ArcChordPie( dc_attr, left, top, right, bottom, xstart, ystart, xend, yend, EMR_PIE );
902 }
903 
905 
906 /* EOF */
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 * u
Definition: glfuncs.h:240
BOOL EMFDC_SelectPalette(LDC *dc_attr, HPALETTE palette) DECLSPEC_HIDDEN
WORD reserved
Definition: gdi32p.h:102
BOOL EMFDC_SetBrushOrg(LDC *dc_attr, INT x, INT y)
HGDIOBJ WINAPI GetDCObject(HDC, INT)
BOOL EMFDC_PolylineTo(LDC *dc_attr, const POINT *points, INT count) DECLSPEC_HIDDEN
BOOL EMFDC_LineTo(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
ObjectType
Definition: metafile.c:80
BOOL METADC_SetTextAlign(HDC hdc, UINT align) DECLSPEC_HIDDEN
Definition: metadc.c:211
BOOL METADC_RestoreDC(HDC hdc, INT level) DECLSPEC_HIDDEN
Definition: metadc.c:206
GLint level
Definition: gl.h:1546
GLint GLint GLsizei width
Definition: gl.h:1546
BOOL EMFDC_TransparentBlt(LDC *dc_attr, INT xDst, INT yDst, INT cxDst, INT cyDst, HDC hdcSrc, INT xSrc, INT ySrc, INT cxSrc, INT cySrc, UINT crTransparent)
HPEN WINAPI GdiSelectPen(_In_ HDC hdc, _In_ HPEN hpen)
Definition: dc.c:1458
VOID HEAP_free(LPVOID memory)
Definition: heap.c:63
struct tagMF_ENTRY * PMF_ENTRY
struct _GDIBSSETBRHORG GDIBSSETBRHORG
HDC WINAPI GdiConvertAndCheckDC(HDC hdc)
Definition: dc.c:403
int FASTCALL DocumentEventEx(PVOID, HANDLE, HDC, int, ULONG, PVOID, ULONG, PVOID)
Definition: printdrv.c:152
INT technology
Definition: gdi32p.h:144
HANDLE(WINAPI * COMMITSPOOLDATA)(HANDLE, HANDLE, DWORD)
Definition: gdi32p.h:181
_In_ ULONG_PTR _In_opt_ DESIGNVECTOR * pdv
Definition: winddi.h:3723
BOOL EMFDC_SetWindowOrgEx(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
DWORD dwDriverAttributes
Definition: gdi32p.h:160
BOOL METADC_FillRgn(HDC hdc, HRGN hrgn, HBRUSH hbrush) DECLSPEC_HIDDEN
Definition: metadc.c:710
BOOL(WINAPI * READPRINTER)(HANDLE, PVOID, DWORD, PDWORD)
Definition: gdi32p.h:190
BOOL METADC_Polyline(HDC hdc, const POINT *points, INT count) DECLSPEC_HIDDEN
Definition: metadc.c:403
static HBRUSH hbrush
FORCEINLINE int _lrintf(float f)
Definition: gdi32p.h:498
struct _devicemodeW * PDEVMODEW
_In_ int _Inout_ LPRECT lprc
Definition: winuser.h:4455
BOOL METADC_SetBkMode(HDC hdc, INT mode) DECLSPEC_HIDDEN
Definition: metadc.c:216
FORCEINLINE BOOL EMFDC_Pie(PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend)
Definition: gdi32p.h:899
#define EMR_ARCTO
Definition: wingdi.h:129
BOOL EMFDC_FillPath(LDC *dc_attr) DECLSPEC_HIDDEN
LONG(WINAPI * DOCUMENTPROPERTIESW)(HWND, HANDLE, LPWSTR, PDEVMODEW, PDEVMODEW, DWORD)
Definition: gdi32p.h:182
enum GDILoObjType GDILOOBJTYPE
BOOL(WINAPI * ENDDOCPRINTER)(HANDLE)
Definition: gdi32p.h:183
INT(WINAPI * DOCUMENTEVENT)(HANDLE, HDC, INT, ULONG, PVOID, ULONG, PVOID)
Definition: gdi32p.h:202
HPALETTE hPalette
Definition: gdi32p.h:108
VOID FASTCALL NewTextMetricW2A(NEWTEXTMETRICA *tma, NEWTEXTMETRICW *tmw)
Definition: font.c:191
BOOL EMFDC_SetMapperFlags(LDC *dc_attr, DWORD flags) DECLSPEC_HIDDEN
INT bitspixel
Definition: gdi32p.h:141
DWORD GDI_BatchLimit
Definition: misc.c:36
BOOL EMFDC_Rectangle(LDC *dc_attr, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
GLuint64EXT * result
Definition: glext.h:11304
HGDIOBJ hEnhMetaFile
Definition: gdi32p.h:116
const WCHAR * LPCWSTR
Definition: xmlstorage.h:185
PVOID WINAPI GdiGetClientObjLink(_In_ HGDIOBJ hobj)
Definition: clientobj.c:61
BOOL METADC_SetStretchBltMode(HDC hdc, INT mode) DECLSPEC_HIDDEN
Definition: metadc.c:246
PVOID WINAPI GdiRemoveClientObjLink(_In_ HGDIOBJ hobj)
Definition: clientobj.c:98
SHORT Size
Definition: ntgdityp.h:458
PVOID Win32ThreadInfo
Definition: compat.h:846
BOOL FASTCALL GdiSetLDC(HDC hdc, PVOID pvLDC)
Definition: misc.c:802
BOOL METADC_IntersectClipRect(HDC hdc, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: metadc.c:251
int WINAPI GdiGetBitmapBitsSize(BITMAPINFO *lpbmi)
Definition: bitmap.c:163
BOOL EMFDC_MoveTo(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
FONT_ATTR lfa[LOCALFONT_COUNT]
Definition: gdi32p.h:174
BOOL EMFDC_RoundRect(LDC *dc_attr, INT left, INT top, INT right, INT bottom, INT ell_width, INT ell_height) DECLSPEC_HIDDEN
BOOL METADC_ScaleWindowExtEx(HDC hdc, INT x_num, INT x_denom, INT y_num, INT y_denom) DECLSPEC_HIDDEN
Definition: metadc.c:311
GLuint GLuint GLsizei count
Definition: gl.h:1545
BOOL METADC_ScaleViewportExtEx(HDC hdc, INT x_num, INT x_denom, INT y_num, INT y_denom) DECLSPEC_HIDDEN
Definition: metadc.c:306
unsigned char * PUCHAR
Definition: retypes.h:3
FORCEINLINE PDC_ATTR GdiGetDcAttr(HDC hdc)
Definition: gdi32p.h:451
BOOL EMFDC_PolyDraw(LDC *dc_attr, const POINT *points, const BYTE *types, DWORD count) DECLSPEC_HIDDEN
UINT WINAPI UserRealizePalette(HDC hDC)
Definition: painting.c:2351
BOOL WINAPI METADC_SetD(_In_ HDC hdc, _In_ DWORD dwIn, _In_ USHORT usMF16Id)
Definition: rosglue.c:312
SHORT Cmd
Definition: ntgdityp.h:459
BOOL EMFDC_AbortPath(LDC *dc_attr) DECLSPEC_HIDDEN
BOOL EMFDC_ScaleViewportExtEx(LDC *dc_attr, INT x_num, INT x_denom, INT y_num, INT y_denom) DECLSPEC_HIDDEN
LONG NTSTATUS
Definition: precomp.h:26
INT METADC_GetDeviceCaps(HDC hdc, INT cap)
Definition: metadc.c:1289
PDEVCAPS GdiDevCaps
Definition: dllmain.c:10
#define INT
Definition: polytest.cpp:20
BOOL METADC_ExtSelectClipRgn(HDC hdc, HRGN hrgn, INT mode) DECLSPEC_HIDDEN
Definition: metadc.c:988
BOOL(WINAPI * CLOSESPOOLFILEHANDLE)(HANDLE, HANDLE)
Definition: gdi32p.h:180
static HDC
Definition: imagelist.c:92
#define CALLBACK
Definition: compat.h:35
#define DECLSPEC_HIDDEN
Definition: precomp.h:8
DWORD dwConfigVersion
Definition: gdi32p.h:161
UINT handles_size
Definition: gdi32p.h:136
HANDLE HWND
Definition: compat.h:19
BOOL EMFDC_RestoreDC(LDC *dc_attr, INT level) DECLSPEC_HIDDEN
BOOL EMFDC_DeleteDC(LDC *dc_attr) DECLSPEC_HIDDEN
HGDIOBJ WINAPI GdiCreateClientObj(_In_ PVOID pvObject, _In_ GDILOOBJTYPE eObjType)
Definition: clientobj.c:148
GLuint buffer
Definition: glext.h:5915
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
BOOL METADC_Arc(HDC hdc, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend) DECLSPEC_HIDDEN
Definition: metadc.c:341
__asm__("\n\t \ NewInt3Handler:\n\t \ pushl $" STR(REASON_INT3) "\n\t \ // call debugger loop\n\t \ jmp NewInt31Handler\n\t \ ")
BOOL METADC_SetMapMode(HDC hdc, INT mode) DECLSPEC_HIDDEN
Definition: metadc.c:271
HPEN hExtPen
Definition: gdi32p.h:114
BOOL EMFDC_PlgBlt(LDC *dc_attr, const POINT *ppt, HDC hdcSrc, INT xSrc, INT ySrc, INT cx, INT cy, HBITMAP hbmMask, INT xMask, INT yMask)
BOOL(WINAPI * ENDPAGEPRINTER)(HANDLE)
Definition: gdi32p.h:184
BOOL EMFDC_OffsetClipRgn(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
static HPEN hpen
HGDIOBJ hMetafile
Definition: gdi32p.h:112
int align(int length, int align)
Definition: dsound8.c:36
HGDIOBJ METADC_SelectObject(HDC hdc, HGDIOBJ obj) DECLSPEC_HIDDEN
Definition: metadc.c:1252
uint16_t * PWCHAR
Definition: typedefs.h:56
struct tagMF_ENTRY MF_ENTRY
static HDC hdcSrc
Definition: xlate.c:32
BOOL(WINAPI * CLOSEPRINTER)(HANDLE)
Definition: gdi32p.h:179
HLOCAL MFObjList
Definition: gdi32p.h:103
BOOL(WINAPI * SPLREADPRINTER)(HANDLE, LPBYTE *, DWORD)
Definition: gdi32p.h:197
BOOL EMFDC_FlattenPath(LDC *dc_attr) DECLSPEC_HIDDEN
VOID FASTCALL FONT_TextMetricWToA(const TEXTMETRICW *ptmW, LPTEXTMETRICA ptmA)
Definition: font.c:79
char * LPSTR
Definition: xmlstorage.h:182
BOOL(WINAPI * RESETPRINTERW)(HANDLE, LPPRINTER_DEFAULTSW)
Definition: gdi32p.h:191
BOOL METADC_ExtFloodFill(HDC hdc, INT x, INT y, COLORREF color, UINT fill_type) DECLSPEC_HIDDEN
Definition: metadc.c:492
BOOL EMFDC_SelectClipPath(LDC *dc_attr, INT mode) DECLSPEC_HIDDEN
#define BOOL
Definition: nt_native.h:43
#define FASTCALL
Definition: nt_native.h:50
BOOL METADC_ExcludeClipRect(HDC hdc, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: metadc.c:256
FLOATL FASTCALL EFtoF(EFLOAT_S *efp)
Definition: efloat.c:20
BOOL METADC_PaintRgn(HDC hdc, HRGN hrgn) DECLSPEC_HIDDEN
Definition: metadc.c:690
BOOL METADC_OffsetWindowOrgEx(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:301
static char memory[1024 *256]
Definition: process.c:116
BOOL EMFDC_StretchDIBits(LDC *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, INT x_src, INT y_src, INT width_src, INT height_src, const void *bits, const BITMAPINFO *info, UINT coloruse, DWORD rop) DECLSPEC_HIDDEN
#define DWORD
Definition: nt_native.h:44
GLenum GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * bits
Definition: glext.h:10929
int32_t INT
Definition: typedefs.h:58
BOOL(WINAPI * SPLDRIVERUNLOADCOMPLETE)(LPWSTR)
Definition: gdi32p.h:199
BOOL METADC_SetWindowExtEx(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:286
PDRIVER_INFO_5W pdi5Info
Definition: gdi32p.h:157
BOOL METADC_DeleteDC(HDC hdc)
Definition: metadc.c:1318
& rect
Definition: startmenu.cpp:1413
BOOL EMFDC_WidenPath(LDC *dc_attr) DECLSPEC_HIDDEN
BOOL METADC_SetWindowOrgEx(HDC, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:291
Definition: gdi32p.h:122
VOID NTAPI LogFontA2W(LPLOGFONTW pW, CONST LOGFONTA *pA)
Definition: utils.c:348
BOOL EMFDC_FillRgn(LDC *dc_attr, HRGN hrgn, HBRUSH hbrush) DECLSPEC_HIDDEN
BOOL EMFDC_SetDIBitsToDevice(LDC *dc_attr, INT x_dest, INT y_dest, DWORD width, DWORD height, INT x_src, INT y_src, UINT startscan, UINT lines, const void *bits, const BITMAPINFO *info, UINT coloruse) DECLSPEC_HIDDEN
struct _UMPDEV UMPDEV
BOOL METADC_OffsetViewportOrgEx(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:296
BOOL METADC_SetLayout(HDC hdc, DWORD layout) DECLSPEC_HIDDEN
Definition: metadc.c:266
BOOL EMFDC_PolyPolygon(LDC *dc_attr, const POINT *points, const INT *counts, UINT polys) DECLSPEC_HIDDEN
DWORD(WINAPI * QUERYSPOOLMODE)(HANDLE, DWORD, DWORD)
Definition: gdi32p.h:206
BOOL EMFDC_Ellipse(LDC *dc_attr, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
FORCEINLINE PRGN_ATTR GdiGetRgnAttr(HRGN hrgn)
Definition: gdi32p.h:475
HENHMETAFILE WINAPI SetEnhMetaFileBitsAlt(PDWORD pdw, LPWSTR FilePart, HANDLE hFile, LARGE_INTEGER li)
BOOL EMFDC_SetDCBrushColor(LDC *dc_attr, COLORREF color) DECLSPEC_HIDDEN
BOOL EMFDC_SetArcDirection(LDC *dc_attr, INT dir) DECLSPEC_HIDDEN
struct _UMPDEV * PUMPDEV
unsigned char * LPBYTE
Definition: typedefs.h:53
ULONG Buffer[GDI_BATCH_BUFFER_SIZE]
Definition: compat.h:833
static unsigned char bytes[4]
Definition: adnsresfilter.c:74
NTSTATUS(* NTAPI)(IN PFILE_FULL_EA_INFORMATION EaBuffer, IN ULONG EaLength, OUT PULONG ErrorOffset)
Definition: IoEaTest.cpp:117
BOOL WINAPI LoadLPK(INT LpkFunctionID)
Definition: utils.c:423
_In_ FLONG fl
Definition: winddi.h:1279
BOOL WINAPI EMFDC_SetD(_In_ PLDC pldc, _In_ DWORD dwIn, _In_ ULONG ulMFId)
Definition: rosglue.c:331
GLenum cap
Definition: glext.h:9639
DWORD WOW64_hMod
Definition: gdi32p.h:166
BOOL METADC_SetTextJustification(HDC hdc, INT extra, INT breaks) DECLSPEC_HIDDEN
Definition: metadc.c:316
BOOL WINAPI GdiCreateClientObjLink(_In_ HGDIOBJ hobj, _In_ PVOID pvObject)
Definition: clientobj.c:24
BOOL(WINAPI * GETPRINTERW)(HANDLE, DWORD, LPBYTE, DWORD, LPDWORD)
Definition: gdi32p.h:185
unsigned int BOOL
Definition: ntddk_ex.h:94
long LONG
Definition: pedump.c:60
HGDIOBJ hmDC
Definition: gdi32p.h:125
GLuint color
Definition: glext.h:6243
HGDIOBJ hMemDc
Definition: gdi32p.h:113
BOOL METADC_Pie(HDC hdc, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend) DECLSPEC_HIDDEN
Definition: metadc.c:348
BOOL EMFDC_EndPath(LDC *dc_attr) DECLSPEC_HIDDEN
HANDLE hFile
Definition: gdi32p.h:132
BOOL WINAPI CalculateColorTableSize(CONST BITMAPINFOHEADER *BitmapInfoHeader, UINT *ColorSpec, UINT *ColorTableSize)
Definition: utils.c:32
VOID WINAPI GdiInitializeLanguagePack(_In_ DWORD InitParam)
static int rop(int rop, int src, int dst)
Definition: nanoxwin.c:124
BOOL EMFDC_WriteNamedEscape(LDC *dc_attr, PWCHAR pDriver, INT nEscape, INT cbInput, LPCSTR lpszInData)
BOOL EMFDC_BitBlt(LDC *dc_attr, INT x_dst, INT y_dst, INT width, INT height, HDC hdc_src, INT x_src, INT y_src, DWORD rop)
struct _GDIBSPPATBLT GDIBSPPATBLT
BOOL EMFDC_SetTextAlign(LDC *dc_attr, UINT align) DECLSPEC_HIDDEN
struct _GDIBSOBJECT GDIBSOBJECT
BOOL EMFDC_ModifyWorldTransform(LDC *dc_attr, const XFORM *xform, DWORD mode) DECLSPEC_HIDDEN
#define GDIBATCHBUFSIZE
Definition: ntgdityp.h:200
_Out_opt_ int _Out_opt_ int * cy
Definition: commctrl.h:585
struct tagMETAFILEDC METAFILEDC
const WCHAR * str
BOOL METADC_SetPolyFillMode(HDC hdc, INT mode) DECLSPEC_HIDDEN
Definition: metadc.c:241
HGDIOBJ * handles
Definition: gdi32p.h:137
DWORD WINAPI GdiGetCodePage(HDC)
BOOL EMFDC_SaveDC(LDC *dc_attr) DECLSPEC_HIDDEN
BOOL METADC_SetMapperFlags(HDC hdc, DWORD flags) DECLSPEC_HIDDEN
Definition: metadc.c:326
HANDLE ghSpooler
Definition: printdrv.c:40
NTSTATUS HEAP_strdupA2W(LPWSTR *ppszW, LPCSTR lpszA)
Definition: heap.c:43
BOOL EMFDC_StrokeAndFillPath(LDC *dc_attr) DECLSPEC_HIDDEN
BOOL FASTCALL EndPagePrinterEx(PVOID, HANDLE)
Definition: printdrv.c:178
#define _In_
Definition: ms_sal.h:308
INT textcaps
Definition: gdi32p.h:142
struct _PRINTER_DEFAULTSW * LPPRINTER_DEFAULTSW
BOOL EMFDC_SetBkMode(LDC *dc_attr, INT mode) DECLSPEC_HIDDEN
DWORD Size
Definition: gdi32p.h:99
GLint GLint bottom
Definition: glext.h:7726
BOOL EMFDC_CloseFigure(LDC *dc_attr) DECLSPEC_HIDDEN
BOOL EMFDC_SetROP2(LDC *dc_attr, INT rop) DECLSPEC_HIDDEN
DWORD(WINAPI * LPKGCP)(HDC hdc, LPCWSTR lpString, INT uCount, INT nMaxExtent, LPGCP_RESULTSW lpResults, DWORD dwFlags, DWORD dwUnused)
Definition: gdi32p.h:44
BOOL EMFDC_WriteEscape(LDC *dc_attr, INT nEscape, INT cbInput, LPSTR lpszInData, DWORD emrType)
unsigned int dir
Definition: maze.c:112
const char * LPCSTR
Definition: xmlstorage.h:183
void * PVOID
Definition: retypes.h:9
INT horzsize
Definition: gdi32p.h:139
HGDIOBJ WINAPI GdiFixUpHandle(HGDIOBJ hGO)
Definition: misc.c:734
PGDI_TABLE_ENTRY GdiHandleTable
Definition: gdihv.c:26
unsigned long FLONG
Definition: ntbasedef.h:366
BOOL METADC_SetROP2(HDC hdc, INT rop) DECLSPEC_HIDDEN
Definition: metadc.c:231
static HFONT hfont
PENHMETAHEADER emf
Definition: gdi32p.h:135
BOOL EMFDC_SetViewportExtEx(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
BOOL EMFDC_PolyBezier(LDC *dc_attr, const POINT *points, DWORD count) DECLSPEC_HIDDEN
PVOID apfn[INDEX_LAST]
Definition: gdi32p.h:168
#define GDI_HANDLE_GET_TYPE(h)
Definition: gdi.h:31
UINT cur_handles
Definition: gdi32p.h:136
BOOL METADC_Rectangle(HDC hdc, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: metadc.c:367
VOID NTAPI LogFontW2A(LPLOGFONTA pA, CONST LOGFONTW *pW)
Definition: utils.c:375
int WINAPI GdiAddFontResourceW(LPCWSTR lpszFilename, FLONG fl, DESIGNVECTOR *pdv)
Definition: font.c:2404
__kernel_entry W32KAPI NTSTATUS APIENTRY NtGdiFlush(VOID)
Definition: gdibatch.c:471
HANDLE CurrentProcessId
Definition: misc.c:35
eMaj lines
Definition: tritemp.h:206
BOOL METADC_SetTextColor(HDC hdc, COLORREF color) DECLSPEC_HIDDEN
Definition: metadc.c:226
__kernel_size_t size_t
Definition: linux.h:237
VOID GdiSAPCallback(PLDC pldc)
Definition: misc.c:819
BOOL EMFDC_SetBkColor(LDC *dc_attr, COLORREF color) DECLSPEC_HIDDEN
BOOL METADC_StretchDIBits(HDC hdc, INT x_dst, INT y_dst, INT width_dst, INT height_dst, INT x_src, INT y_src, INT width_src, INT height_src, const void *bits, const BITMAPINFO *info, UINT coloruse, DWORD rop) DECLSPEC_HIDDEN
Definition: metadc.c:815
BOOL FASTCALL DeleteRegion(HRGN)
GLfloat f
Definition: glext.h:7540
FxDriver * pDriver
PLDC FASTCALL GdiGetLDC(HDC hDC)
Definition: misc.c:785
BOOL EMFDC_Polygon(LDC *dc_attr, const POINT *points, INT count) DECLSPEC_HIDDEN
BOOL(WINAPI * STARTPAGEPRINTER)(HANDLE)
Definition: gdi32p.h:194
BOOL GdiGetHandleUserData(HGDIOBJ hGdiObj, DWORD ObjectType, PVOID *UserData)
Definition: misc.c:761
BOOL METADC_PatBlt(HDC hdc, INT left, INT top, INT width, INT height, DWORD rop)
Definition: metadc.c:737
BOOL EMFDC_SetMapMode(LDC *dc_attr, INT mode) DECLSPEC_HIDDEN
DWORD(WINAPI * STARTDOCPRINTERW)(HANDLE, DWORD, PBYTE)
Definition: gdi32p.h:193
Definition: id3.c:95
BOOL EMFDC_FrameRgn(LDC *dc_attr, HRGN hrgn, HBRUSH hbrush, INT width, INT height) DECLSPEC_HIDDEN
Definition: cmds.c:130
BOOL METADC_SetRelAbs(HDC hdc, INT mode) DECLSPEC_HIDDEN
Definition: metadc.c:236
__wchar_t WCHAR
Definition: xmlstorage.h:180
BOOL METADC_MoveTo(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:331
BOOL EMFDC_SetLayout(LDC *dc_attr, DWORD layout) DECLSPEC_HIDDEN
BOOL EMFDC_PatBlt(LDC *dc_attr, INT left, INT top, INT width, INT height, DWORD rop)
PMETAFILEDC pmfDC
Definition: gdi32p.h:126
DWORD COLORREF
Definition: windef.h:300
DWORD_PTR Sig
Definition: gdi32p.h:155
BOOL EMFDC_AngleArc(LDC *dc_attr, INT x, INT y, DWORD radius, FLOAT start, FLOAT sweep) DECLSPEC_HIDDEN
LIST_ENTRY List
Definition: gdi32p.h:124
DWORD WINAPI GetDCDWord(_In_ HDC hdc, _In_ UINT u, _In_ DWORD dwError)
Definition: dc.c:787
struct _GDIBSTEXTOUT GDIBSTEXTOUT
BOOL METADC_BitBlt(HDC hdc_dst, INT x_dst, INT y_dst, INT width, INT height, HDC hdc_src, INT x_src, INT y_src, DWORD rop)
Definition: metadc.c:800
BOOL METADC_SetViewportExtEx(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:276
#define MAX_PATH
Definition: compat.h:34
INT logpixelsy
Definition: gdi32p.h:140
#define WINAPI
Definition: msvc.h:6
PGDI_SHARED_HANDLE_TABLE GdiSharedHandleTable
Definition: misc.c:34
BOOL(WINAPI * LPKGTEP)(HDC hdc, LPCWSTR lpString, INT cString, INT nMaxExtent, LPINT lpnFit, LPINT lpnDx, LPSIZE lpSize, DWORD dwUnused, int unknown)
Definition: gdi32p.h:55
VOID FASTCALL NewTextMetricExW2A(NEWTEXTMETRICEXA *tma, NEWTEXTMETRICEXW *tmw)
Definition: font.c:201
unsigned short WORD
Definition: ntddk_ex.h:93
PVOID WINAPI GdiDeleteClientObj(_In_ HGDIOBJ hobj)
Definition: clientobj.c:173
BOOL METADC_SetTextCharacterExtra(HDC hdc, INT extra) DECLSPEC_HIDDEN
Definition: metadc.c:321
PVOID HANDLE
Definition: typedefs.h:73
unsigned long DWORD
Definition: ntddk_ex.h:95
GLint left
Definition: glext.h:7726
HANDLE hFile
Definition: gdi32p.h:98
HANDLE(WINAPI * GETSPOOLFILEHANDLE)(HANDLE)
Definition: gdi32p.h:187
BOOL METADC_ExtEscape(HDC hdc, INT escape, INT input_size, LPCSTR input, INT output_size, LPVOID output) DECLSPEC_HIDDEN
Definition: metadc.c:1269
DWORD dwDriverCount
Definition: gdi32p.h:164
GLdouble GLdouble right
Definition: glext.h:10859
Definition: id3.c:95
BOOL METADC_Ellipse(HDC hdc, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
Definition: metadc.c:362
BOOL EMFDC_InvertRgn(LDC *dc_attr, HRGN hrgn) DECLSPEC_HIDDEN
INT logpixelsx
Definition: gdi32p.h:140
BOOL METADC_SelectPalette(HDC hdc, HPALETTE palette) DECLSPEC_HIDDEN
Definition: metadc.c:1220
GLbitfield flags
Definition: glext.h:7161
struct tagMETAFILEDC * PMETAFILEDC
BOOL EMFDC_SetPolyFillMode(LDC *dc_attr, INT mode) DECLSPEC_HIDDEN
BOOL METADC_Chord(HDC hdc, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend) DECLSPEC_HIDDEN
Definition: metadc.c:355
Definition: ntgdihdl.h:262
BOOL EMFDC_SetStretchBltMode(LDC *dc_attr, INT mode) DECLSPEC_HIDDEN
BOOL EMFDC_SetWindowExtEx(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
BOOL METADC_RealizePalette(HDC hdc) DECLSPEC_HIDDEN
Definition: metadc.c:1247
GLsizei const GLfloat * points
Definition: glext.h:8112
BOOL(WINAPI * QUERYCOLORPROFILE)(HANDLE, PDEVMODEW, ULONG, VOID *, ULONG, FLONG)
Definition: gdi32p.h:204
GDI_TEB_BATCH GdiTebBatch
Definition: compat.h:857
#define INDEX_LAST
Definition: winddi.h:521
#define EMR_PIE
Definition: wingdi.h:121
static const WCHAR fontW[]
Definition: editor.c:78
union _LARGE_INTEGER LARGE_INTEGER
FORCEINLINE BOOL EMFDC_ArcTo(PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend)
Definition: gdi32p.h:890
ULONG GdiBatchCount
Definition: compat.h:887
#define EMR_CHORD
Definition: wingdi.h:120
BOOL EMFDC_SelectObject(LDC *dc_attr, HGDIOBJ obj) DECLSPEC_HIDDEN
#define LPDWORD
Definition: nt_native.h:46
HBRUSH WINAPI GdiSelectBrush(_In_ HDC hdc, _In_ HBRUSH hbr)
Definition: dc.c:1428
HGDIOBJ hMetaDc
Definition: gdi32p.h:107
HDC hdc
Definition: main.c:9
BOOL METADC_InvertRgn(HDC hdc, HRGN hrgn) DECLSPEC_HIDDEN
Definition: metadc.c:700
Definition: sacdrv.h:278
_In_ PCCERT_CONTEXT _In_ DWORD dwFlags
Definition: wincrypt.h:1175
struct _LOCALFONT LOCALFONT
HFONT hFont
Definition: gdi32p.h:109
static HRGN hrgn
Definition: win.c:55
PVOID *typedef PHANDLE
Definition: ntsecpkg.h:454
BOOL WINAPI EMFDC_GdiComment(HDC hdc, UINT bytes, const BYTE *buffer)
Definition: emfdc.c:2326
static DWORD layout
Definition: bitmap.c:46
GLenum GLsizei len
Definition: glext.h:6722
BOOL(WINAPI * GETPRINTERDRIVERW)(HANDLE, LPWSTR, DWORD, LPBYTE, DWORD, LPDWORD)
Definition: gdi32p.h:186
BOOL METADC_LineTo(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:336
Definition: typedefs.h:119
BOOL METADC_StretchBlt(HDC hdc_dst, INT x_dst, INT y_dst, INT width_dst, INT height_dst, HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, DWORD rop)
Definition: metadc.c:807
uint32_t DWORD_PTR
Definition: typedefs.h:65
GLenum mode
Definition: glext.h:6217
_In_ HANDLE hFile
Definition: mswsock.h:90
HFONT WINAPI GdiSelectFont(_In_ HDC hdc, _In_ HFONT hfont)
Definition: dc.c:1488
unsigned char BYTE
Definition: xxhash.c:193
struct _UMPDEV * pumpdNext
Definition: gdi32p.h:156
#define LOCALFONT_COUNT
Definition: gdi32p.h:171
struct tagENHMETAFILE ENHMETAFILE
static HPALETTE palette
Definition: clipboard.c:1345
BOOL METADC_FrameRgn(HDC hdc, HRGN hrgn, HBRUSH hbrush, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:724
GLint GLint GLsizei GLsizei height
Definition: gl.h:1546
BOOL METADC_Polygon(HDC hdc, const POINT *points, INT count) DECLSPEC_HIDDEN
Definition: metadc.c:422
BOOL EMFDC_SetMetaRgn(LDC *dc_attr)
HPEN hPen
Definition: gdi32p.h:104
Definition: gdi.h:1
struct _GDIBSEXTSELCLPRGN GDIBSEXTSELCLPRGN
#define EMR_ARC
Definition: wingdi.h:119
FLOAT FLOATL
Definition: winddi.h:114
static HDC hDC
Definition: 3dtext.c:33
VOID WINAPI GdiSetLastError(DWORD dwErrCode)
Definition: misc.c:873
Definition: compat.h:835
ULONG Offset
Definition: compat.h:831
PVOID HEAP_alloc(DWORD len)
Definition: heap.c:35
BOOL METADC_ExtTextOut(HDC hdc, INT x, INT y, UINT flags, const RECT *rect, const WCHAR *str, UINT count, const INT *dx) DECLSPEC_HIDDEN
Definition: metadc.c:904
BOOL EMFDC_ExtTextOut(LDC *dc_attr, INT x, INT y, UINT flags, const RECT *rect, const WCHAR *str, UINT count, const INT *dx) DECLSPEC_HIDDEN
struct _GDIBSPATBLT GDIBSPATBLT
BOOL(WINAPI * ABORTPRINTER)(HANDLE)
Definition: gdi32p.h:178
struct _GDIBSEXTTEXTOUT GDIBSEXTTEXTOUT
GLenum GLenum GLenum input
Definition: glext.h:9031
FORCEINLINE struct _TEB * NtCurrentTeb(VOID)
Definition: psfuncs.h:420
BOOL EMFDC_SetPixel(LDC *dc_attr, INT x, INT y, COLORREF color) DECLSPEC_HIDDEN
unsigned short USHORT
Definition: pedump.c:61
BOOL EMFDC_SetDCPenColor(LDC *dc_attr, COLORREF color) DECLSPEC_HIDDEN
GLuint start
Definition: gl.h:1545
BOOL EMFDC_GradientFill(LDC *dc_attr, TRIVERTEX *vert_array, ULONG nvert, void *grad_array, ULONG ngrad, ULONG mode) DECLSPEC_HIDDEN
#define f
Definition: ke_i.h:83
HGDIOBJ FASTCALL hGetPEBHandle(HANDLECACHETYPE, COLORREF)
Definition: misc.c:880
INT vertsize
Definition: gdi32p.h:139
#define FORCEINLINE
Definition: wdftypes.h:67
HMODULE hModule
Definition: gdi32p.h:158
unsigned int UINT
Definition: ndis.h:50
BOOL EMFDC_IntersectClipRect(LDC *dc_attr, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
#define NULL
Definition: types.h:112
DWORD WINAPI GetAndSetDCDWord(_In_ HDC hdc, _In_ UINT u, _In_ DWORD dwIn, _In_ ULONG ulMFId, _In_ USHORT usMF16Id, _In_ DWORD dwError)
Definition: dc.c:746
BOOL WINAPI METADC_ExtTextOutW(HDC hdc, INT x, INT y, UINT fuOptions, const RECT *lprc, LPCWSTR lpString, UINT cchString, const INT *lpDx)
HANDLE hProcessHeap
Definition: kbswitch.c:34
BOOL WINAPI GetETM(HDC hdc, EXTTEXTMETRIC *petm)
OPENPRINTERW fpOpenPrinterW
Definition: printdrv.c:55
BOOL EMFDC_AlphaBlend(LDC *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, BLENDFUNCTION blend_function)
RTL_CRITICAL_SECTION semLocal
Definition: dllmain.c:13
BOOL EMFDC_PaintRgn(LDC *dc_attr, HRGN hrgn) DECLSPEC_HIDDEN
METAHEADER mh
Definition: gdi32p.h:101
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLint dx
Definition: linetemp.h:97
LPKGCP LpkGetCharacterPlacement
Definition: utils.c:6
DWORD * PDWORD
Definition: pedump.c:68
_In_ UINT _In_ DWORD dwIn
Definition: ntgdi.h:248
BOOL EMFDC_SetTextColor(LDC *dc_attr, COLORREF color) DECLSPEC_HIDDEN
DWORD dwWritten
Definition: gdi32p.h:100
enum _HANDLECACHETYPE HANDLECACHETYPE
BOOL(WINAPI * SEEKPRINTER)(HANDLE, LARGE_INTEGER, PLARGE_INTEGER, DWORD, BOOL)
Definition: gdi32p.h:196
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
HINSTANCE hLpk
Definition: utils.c:4
static WCHAR escape[]
Definition: url.c:36
DWORD WOW64_UMPDev
Definition: gdi32p.h:165
_Out_opt_ int * cx
Definition: commctrl.h:585
HBITMAP hBitmap
Definition: gdi32p.h:110
VOID WINAPI METADC_RosGlueDeleteObject(HGDIOBJ hobj)
Definition: rosglue.c:352
BOOL EMFDC_ExcludeClipRect(LDC *dc_attr, INT left, INT top, INT right, INT bottom) DECLSPEC_HIDDEN
BOOL(WINAPI * ISVALIDDEVMODEW)(PDEVMODEW, size_t)
Definition: gdi32p.h:188
BOOL EMFDC_SetWorldTransform(LDC *dc_attr, const XFORM *xform) DECLSPEC_HIDDEN
float FLOAT
Definition: typedefs.h:69
BOOL EMFDC_ArcChordPie(LDC *dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend, DWORD type) DECLSPEC_HIDDEN
BOOL METADC_SaveDC(HDC hdc) DECLSPEC_HIDDEN
Definition: metadc.c:201
BOOL gbLpk
Definition: dllmain.c:12
DWORD Size
Definition: gdi32p.h:133
HRGN hRegion
Definition: gdi32p.h:111
unsigned int ULONG
Definition: retypes.h:1
BOOL METADC_PolyPolygon(HDC hdc, const POINT *points, const INT *counts, UINT polygons) DECLSPEC_HIDDEN
Definition: metadc.c:441
_In_ ULONG cjSize
Definition: winddi.h:3634
BOOL METADC_SetViewportOrgEx(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:281
INT(CALLBACK * EMFPLAYPROC)(HDC hdc, INT iFunction, HANDLE hPageQuery)
Definition: gdi32p.h:24
FORCEINLINE BOOL EMFDC_Chord(PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend)
Definition: gdi32p.h:894
BOOL EMFDC_MaskBlt(LDC *dc_attr, INT xDest, INT yDest, INT cx, INT cy, HDC hdcSrc, INT xSrc, INT ySrc, HBITMAP hbmMask, INT xMask, INT yMask, DWORD dwRop)
BOOL METADC_RoundRect(HDC hdc, INT left, INT top, INT right, INT bottom, INT ell_width, INT ell_height) DECLSPEC_HIDDEN
Definition: metadc.c:372
LPBITMAPINFO WINAPI ConvertBitmapInfo(CONST BITMAPINFO *BitmapInfo, UINT ColorSpec, UINT *BitmapInfoSize, BOOL FollowedByData)
Definition: utils.c:178
HBRUSH hBrush
Definition: gdi32p.h:105
static HBITMAP
Definition: button.c:44
BOOL EMFDC_StrokePath(LDC *dc_attr) DECLSPEC_HIDDEN
GLdouble GLdouble GLdouble GLdouble top
Definition: glext.h:10859
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
FORCEINLINE PVOID GdiAllocBatchCommand(HDC hdc, USHORT Cmd)
Definition: gdi32p.h:381
BOOL EMFDC_ExtFloodFill(LDC *dc_attr, INT x, INT y, COLORREF color, UINT fill_type) DECLSPEC_HIDDEN
BOOL EMFDC_SetTextJustification(LDC *dc_attr, INT extra, INT breaks) DECLSPEC_HIDDEN
BOOL FASTCALL LoadTheSpoolerDrv(VOID)
Definition: printdrv.c:188
WCHAR * LPWSTR
Definition: xmlstorage.h:184
INT METADC_SetDIBitsToDevice(HDC hdc, INT x_dest, INT y_dest, DWORD width, DWORD height, INT x_src, INT y_src, UINT startscan, UINT lines, const void *bits, const BITMAPINFO *info, UINT coloruse) DECLSPEC_HIDDEN
Definition: metadc.c:846
BOOL EMFDC_PolyBezierTo(LDC *dc_attr, const POINT *points, DWORD count) DECLSPEC_HIDDEN
BOOL EMFDC_SetViewportOrgEx(LDC *dc_attr, INT x, INT y) DECLSPEC_HIDDEN
HGDIOBJ hEnhMetaDc
Definition: gdi32p.h:115
CLOSEPRINTER fpClosePrinter
Definition: printdrv.c:43
BOOL METADC_SetBkColor(HDC hdc, COLORREF color) DECLSPEC_HIDDEN
Definition: metadc.c:221
BOOL(WINAPI * LPKETO)(HDC hdc, int x, int y, UINT fuOptions, const RECT *lprc, LPCWSTR lpString, UINT uCount, const INT *lpDx, INT unknown)
Definition: gdi32p.h:31
LPKETO LpkExtTextOut
Definition: utils.c:5
VOID WINAPI EnumLogFontExW2A(LPENUMLOGFONTEXA fontA, CONST ENUMLOGFONTEXW *fontW)
Definition: utils.c:402
struct tagENHMETAFILE * PENHMETAFILE
BOOL(WINAPI * OPENPRINTERW)(LPWSTR, PHANDLE, LPPRINTER_DEFAULTSW)
Definition: gdi32p.h:189
HANDLE HDC
Definition: compat.h:832
PVOID pvMetaBuffer
Definition: gdi32p.h:97
HCOLORSPACE hColorSpace
Definition: gdi32p.h:117
ULONG gcClientObj
Definition: clientobj.c:11
BYTE * PBYTE
Definition: pedump.c:66
BOOL EMFDC_BeginPath(LDC *dc_attr) DECLSPEC_HIDDEN
DWORD Unknown
Definition: gdi32p.h:167
#define CONST
Definition: pedump.c:81
union _LARGE_INTEGER * PLARGE_INTEGER
Definition: file.c:85
int(* FARPROC)()
Definition: compat.h:36
DWORD dwFlags
Definition: gdi32p.h:159
FORCEINLINE BOOL EMFDC_Arc(PLDC dc_attr, INT left, INT top, INT right, INT bottom, INT xstart, INT ystart, INT xend, INT yend)
Definition: gdi32p.h:885
BOOL EMFDC_StretchBlt(LDC *dc_attr, INT x_dst, INT y_dst, INT width_dst, INT height_dst, HDC hdc_src, INT x_src, INT y_src, INT width_src, INT height_src, DWORD rop)
BOOL METADC_OffsetClipRgn(HDC hdc, INT x, INT y) DECLSPEC_HIDDEN
Definition: metadc.c:261
BOOL EMFDC_ScaleWindowExtEx(LDC *dc_attr, INT x_num, INT x_denom, INT y_num, INT y_denom) DECLSPEC_HIDDEN
PVOID pvMetaBuffer
Definition: gdi32p.h:131
BOOL EMFDC_Polyline(LDC *dc_attr, const POINT *points, INT count) DECLSPEC_HIDDEN
LPWSTR(WINAPI * STARTDOCDLGW)(HANDLE, DOCINFOW *)
Definition: gdi32p.h:192
BOOL WINAPI GdiValidateHandle(HGDIOBJ)
Definition: misc.c:712
BOOL EMFDC_ExtSelectClipRgn(LDC *dc_attr, HRGN hrgn, INT mode) DECLSPEC_HIDDEN
INT rastercaps
Definition: gdi32p.h:143
DWORD(WINAPI * QUERYREMOTEFONTS)(DWORD, DWORD, DWORD)
Definition: gdi32p.h:207
LARGE_INTEGER li
Definition: fxtimerapi.cpp:235
LPKGTEP LpkGetTextExtentExPoint
Definition: utils.c:7
BOOL METADC_SetPixel(HDC hdc, INT x, INT y, COLORREF color) DECLSPEC_HIDDEN
Definition: metadc.c:379
int * LPINT
Definition: windef.h:178
VOID WINAPI InitializeLpkHooks(_In_ FARPROC *hookfuncs)
BOOL WINAPI METADC_RosGlueDeleteDC(_In_ HDC hdc)
Definition: rosglue.c:392
struct _LOCALFONT * PLOCALFONT
BOOL EMFDC_PolyPolyline(LDC *dc_attr, const POINT *points, const DWORD *counts, DWORD polys) DECLSPEC_HIDDEN
WCHAR Filename[MAX_PATH+2]
Definition: gdi32p.h:118