Leaked source code of windows server 2003
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

146 lines
4.3 KiB

  1. /**************************************************************************\
  2. *
  3. * Copyright (c) 1998-2001, Microsoft Corp. All Rights Reserved.
  4. *
  5. * Module Name:
  6. *
  7. * GdiplusEnums.h
  8. *
  9. * Abstract:
  10. *
  11. * GDI+ Enumeration Types
  12. *
  13. \**************************************************************************/
  14. #define GDIPLUS_TS_QUERYVER 4122
  15. #define GDIPLUS_TS_RECORD 4123
  16. //---------------------------------------------------------------------------
  17. // EMF+ Persistent object types
  18. //---------------------------------------------------------------------------
  19. enum ObjectType
  20. {
  21. ObjectTypeInvalid,
  22. ObjectTypeBrush,
  23. ObjectTypePen,
  24. ObjectTypePath,
  25. ObjectTypeRegion,
  26. ObjectTypeImage,
  27. ObjectTypeFont,
  28. ObjectTypeStringFormat,
  29. ObjectTypeImageAttributes,
  30. ObjectTypeCustomLineCap,
  31. ObjectTypeGraphics,
  32. ObjectTypeMax = ObjectTypeGraphics,
  33. ObjectTypeMin = ObjectTypeBrush
  34. };
  35. //---------------------------------------------------------------------------
  36. // EMF+ Records
  37. //---------------------------------------------------------------------------
  38. // We have to change the WMF record numbers so that they don't conflict with
  39. // the EMF and EMF+ record numbers.
  40. enum EmfPlusRecordType;
  41. #define GDIP_EMFPLUS_RECORD_BASE 0x00004000
  42. #define GDIP_WMF_RECORD_BASE 0x00010000
  43. #define GDIP_WMF_RECORD_TO_EMFPLUS(n) ((EmfPlusRecordType)((n) | GDIP_WMF_RECORD_BASE))
  44. #define GDIP_EMFPLUS_RECORD_TO_WMF(n) ((n) & (~GDIP_WMF_RECORD_BASE))
  45. #define GDIP_IS_WMF_RECORDTYPE(n) (((n) & GDIP_WMF_RECORD_BASE) != 0)
  46. enum EmfPlusRecordType
  47. {
  48. // Now we start the list of EMF+ records. We leave quite
  49. // a bit of room here for the addition of any new GDI
  50. // records that may be added later.
  51. EmfPlusRecordTypeInvalid = GDIP_EMFPLUS_RECORD_BASE,
  52. EmfPlusRecordTypeHeader,
  53. EmfPlusRecordTypeEndOfFile,
  54. EmfPlusRecordTypeComment,
  55. EmfPlusRecordTypeGetDC,
  56. EmfPlusRecordTypeMultiFormatStart,
  57. EmfPlusRecordTypeMultiFormatSection,
  58. EmfPlusRecordTypeMultiFormatEnd,
  59. // For all persistent objects
  60. EmfPlusRecordTypeObject,
  61. // Drawing Records
  62. EmfPlusRecordTypeClear,
  63. EmfPlusRecordTypeFillRects,
  64. EmfPlusRecordTypeDrawRects,
  65. EmfPlusRecordTypeFillPolygon,
  66. EmfPlusRecordTypeDrawLines,
  67. EmfPlusRecordTypeFillEllipse,
  68. EmfPlusRecordTypeDrawEllipse,
  69. EmfPlusRecordTypeFillPie,
  70. EmfPlusRecordTypeDrawPie,
  71. EmfPlusRecordTypeDrawArc,
  72. EmfPlusRecordTypeFillRegion,
  73. EmfPlusRecordTypeFillPath,
  74. EmfPlusRecordTypeDrawPath,
  75. EmfPlusRecordTypeFillClosedCurve,
  76. EmfPlusRecordTypeDrawClosedCurve,
  77. EmfPlusRecordTypeDrawCurve,
  78. EmfPlusRecordTypeDrawBeziers,
  79. EmfPlusRecordTypeDrawImage,
  80. EmfPlusRecordTypeDrawImagePoints,
  81. EmfPlusRecordTypeDrawString,
  82. // Graphics State Records
  83. EmfPlusRecordTypeSetRenderingOrigin,
  84. EmfPlusRecordTypeSetAntiAliasMode,
  85. EmfPlusRecordTypeSetTextRenderingHint,
  86. EmfPlusRecordTypeSetTextContrast,
  87. EmfPlusRecordTypeSetInterpolationMode,
  88. EmfPlusRecordTypeSetPixelOffsetMode,
  89. EmfPlusRecordTypeSetCompositingMode,
  90. EmfPlusRecordTypeSetCompositingQuality,
  91. EmfPlusRecordTypeSave,
  92. EmfPlusRecordTypeRestore,
  93. EmfPlusRecordTypeBeginContainer,
  94. EmfPlusRecordTypeBeginContainerNoParams,
  95. EmfPlusRecordTypeEndContainer,
  96. EmfPlusRecordTypeSetWorldTransform,
  97. EmfPlusRecordTypeResetWorldTransform,
  98. EmfPlusRecordTypeMultiplyWorldTransform,
  99. EmfPlusRecordTypeTranslateWorldTransform,
  100. EmfPlusRecordTypeScaleWorldTransform,
  101. EmfPlusRecordTypeRotateWorldTransform,
  102. EmfPlusRecordTypeSetPageTransform,
  103. EmfPlusRecordTypeResetClip,
  104. EmfPlusRecordTypeSetClipRect,
  105. EmfPlusRecordTypeSetClipPath,
  106. EmfPlusRecordTypeSetClipRegion,
  107. EmfPlusRecordTypeOffsetClip,
  108. EmfPlusRecordTypeDrawDriverString,
  109. EmfPlusRecordTypeStrokeFillPath,
  110. EmfPlusRecordTypeSerializableObject,
  111. EmfPlusRecordTypeSetTSGraphics, // For private use by TS
  112. EmfPlusRecordTypeSetTSClip, // For private use by TS
  113. // NOTE: New records *must* be added immediately before this line.
  114. EmfPlusRecordTotal,
  115. EmfPlusRecordTypeMax = EmfPlusRecordTotal-1,
  116. EmfPlusRecordTypeMin = EmfPlusRecordTypeHeader,
  117. };