push c6fcfc519a04d046be60ec60e33d075a2146cc03
[wine/hacks.git] / include / gdiplusenums.h
blobc989000f12df0c820fb7a0b1a26d8b94c6750a97
1 /*
2 * Copyright (C) 2007 Google (Evan Stade)
4 * This library is free software; you can redistribute it and/or
5 * modify it under the terms of the GNU Lesser General Public
6 * License as published by the Free Software Foundation; either
7 * version 2.1 of the License, or (at your option) any later version.
9 * This library is distributed in the hope that it will be useful,
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
12 * Lesser General Public License for more details.
14 * You should have received a copy of the GNU Lesser General Public
15 * License along with this library; if not, write to the Free Software
16 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301, USA
19 #ifndef _GDIPLUSENUMS_H
20 #define _GDIPLUSENUMS_H
22 typedef UINT GraphicsState;
23 typedef UINT GraphicsContainer;
25 enum Unit
27 UnitWorld = 0,
28 UnitDisplay = 1,
29 UnitPixel = 2,
30 UnitPoint = 3,
31 UnitInch = 4,
32 UnitDocument = 5,
33 UnitMillimeter = 6
36 enum BrushType
38 BrushTypeSolidColor = 0,
39 BrushTypeHatchFill = 1,
40 BrushTypeTextureFill = 2,
41 BrushTypePathGradient = 3,
42 BrushTypeLinearGradient = 4
45 enum FillMode
47 FillModeAlternate = 0,
48 FillModeWinding = 1
51 enum LineCap
53 LineCapFlat = 0x00,
54 LineCapSquare = 0x01,
55 LineCapRound = 0x02,
56 LineCapTriangle = 0x03,
58 LineCapNoAnchor = 0x10,
59 LineCapSquareAnchor = 0x11,
60 LineCapRoundAnchor = 0x12,
61 LineCapDiamondAnchor = 0x13,
62 LineCapArrowAnchor = 0x14,
64 LineCapCustom = 0xff,
65 LineCapAnchorMask = 0xf0
68 enum PathPointType{
69 PathPointTypeStart = 0, /* start of a figure */
70 PathPointTypeLine = 1,
71 PathPointTypeBezier = 3,
72 PathPointTypePathTypeMask = 7,
73 PathPointTypePathDashMode = 16, /* not used */
74 PathPointTypePathMarker = 32,
75 PathPointTypeCloseSubpath = 128, /* end of a closed figure */
76 PathPointTypeBezier3 = 3
79 enum PenType
81 PenTypeSolidColor = BrushTypeSolidColor,
82 PenTypeHatchFill = BrushTypeHatchFill,
83 PenTypeTextureFill = BrushTypeTextureFill,
84 PenTypePathGradient = BrushTypePathGradient,
85 PenTypeLinearGradient = BrushTypeLinearGradient,
86 PenTypeUnknown = -1
89 enum LineJoin
91 LineJoinMiter = 0,
92 LineJoinBevel = 1,
93 LineJoinRound = 2,
94 LineJoinMiterClipped = 3
97 enum QualityMode
99 QualityModeInvalid = -1,
100 QualityModeDefault = 0,
101 QualityModeLow = 1,
102 QualityModeHigh = 2
105 enum SmoothingMode
107 SmoothingModeInvalid = QualityModeInvalid,
108 SmoothingModeDefault = QualityModeDefault,
109 SmoothingModeHighSpeed = QualityModeLow,
110 SmoothingModeHighQuality = QualityModeHigh,
111 SmoothingModeNone,
112 SmoothingModeAntiAlias
115 enum CompositingQuality
117 CompositingQualityInvalid = QualityModeInvalid,
118 CompositingQualityDefault = QualityModeDefault,
119 CompositingQualityHighSpeed = QualityModeLow,
120 CompositingQualityHighQuality = QualityModeHigh,
121 CompositingQualityGammaCorrected,
122 CompositingQualityAssumeLinear
125 enum InterpolationMode
127 InterpolationModeInvalid = QualityModeInvalid,
128 InterpolationModeDefault = QualityModeDefault,
129 InterpolationModeLowQuality = QualityModeLow,
130 InterpolationModeHighQuality = QualityModeHigh,
131 InterpolationModeBilinear,
132 InterpolationModeBicubic,
133 InterpolationModeNearestNeighbor,
134 InterpolationModeHighQualityBilinear,
135 InterpolationModeHighQualityBicubic
138 enum PenAlignment
140 PenAlignmentCenter = 0,
141 PenAlignmentInset = 1
144 enum PixelOffsetMode
146 PixelOffsetModeInvalid = QualityModeInvalid,
147 PixelOffsetModeDefault = QualityModeDefault,
148 PixelOffsetModeHighSpeed = QualityModeLow,
149 PixelOffsetModeHighQuality = QualityModeHigh,
150 PixelOffsetModeNone,
151 PixelOffsetModeHalf
154 enum DashCap
156 DashCapFlat = 0,
157 DashCapRound = 2,
158 DashCapTriangle = 3
161 enum DashStyle
163 DashStyleSolid,
164 DashStyleDash,
165 DashStyleDot,
166 DashStyleDashDot,
167 DashStyleDashDotDot,
168 DashStyleCustom
171 enum MatrixOrder
173 MatrixOrderPrepend = 0,
174 MatrixOrderAppend = 1
177 enum ImageType
179 ImageTypeUnknown,
180 ImageTypeBitmap,
181 ImageTypeMetafile
184 enum WrapMode
186 WrapModeTile,
187 WrapModeTileFlipX,
188 WrapModeTileFlipY,
189 WrapModeTileFlipXY,
190 WrapModeClamp
193 enum MetafileType
195 MetafileTypeInvalid,
196 MetafileTypeWmf,
197 MetafileTypeWmfPlaceable,
198 MetafileTypeEmf,
199 MetafileTypeEmfPlusOnly,
200 MetafileTypeEmfPlusDual
203 enum LinearGradientMode
205 LinearGradientModeHorizontal,
206 LinearGradientModeVertical,
207 LinearGradientModeForwardDiagonal,
208 LinearGradientModeBackwardDiagonal
211 enum EmfType
213 EmfTypeEmfOnly = MetafileTypeEmf,
214 EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly,
215 EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
218 enum CompositingMode
220 CompositingModeSourceOver,
221 CompositingModeSourceCopy
224 enum TextRenderingHint
226 TextRenderingHintSystemDefault = 0,
227 TextRenderingHintSingleBitPerPixelGridFit,
228 TextRenderingHintSingleBitPerPixel,
229 TextRenderingHintAntiAliasGridFit,
230 TextRenderingHintAntiAlias,
231 TextRenderingHintClearTypeGridFit
234 enum StringAlignment
236 StringAlignmentNear = 0,
237 StringAlignmentCenter = 1,
238 StringAlignmentFar = 2
241 enum StringDigitSubstitute
243 StringDigitSubstituteUser = 0,
244 StringDigitSubstituteNone = 1,
245 StringDigitSubstituteNational = 2,
246 StringDigitSubstituteTraditional = 3
249 enum StringFormatFlags
251 StringFormatFlagsDirectionRightToLeft = 0x00000001,
252 StringFormatFlagsDirectionVertical = 0x00000002,
253 StringFormatFlagsNoFitBlackBox = 0x00000004,
254 StringFormatFlagsDisplayFormatControl = 0x00000020,
255 StringFormatFlagsNoFontFallback = 0x00000400,
256 StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
257 StringFormatFlagsNoWrap = 0x00001000,
258 StringFormatFlagsLineLimit = 0x00002000,
259 StringFormatFlagsNoClip = 0x00004000
262 enum StringTrimming
264 StringTrimmingNone = 0,
265 StringTrimmingCharacter = 1,
266 StringTrimmingWord = 2,
267 StringTrimmingEllipsisCharacter = 3,
268 StringTrimmingEllipsisWord = 4,
269 StringTrimmingEllipsisPath = 5
272 enum FontStyle
274 FontStyleRegular = 0,
275 FontStyleBold = 1,
276 FontStyleItalic = 2,
277 FontStyleBoldItalic = 3,
278 FontStyleUnderline = 4,
279 FontStyleStrikeout = 8
282 enum HotkeyPrefix
284 HotkeyPrefixNone = 0,
285 HotkeyPrefixShow = 1,
286 HotkeyPrefixHide = 2
289 enum ImageCodecFlags
291 ImageCodecFlagsEncoder = 1,
292 ImageCodecFlagsDecoder = 2,
293 ImageCodecFlagsSupportBitmap = 4,
294 ImageCodecFlagsSupportVector = 8,
295 ImageCodecFlagsSeekableEncode = 16,
296 ImageCodecFlagsBlockingDecode = 32,
297 ImageCodecFlagsBuiltin = 65536,
298 ImageCodecFlagsSystem = 131072,
299 ImageCodecFlagsUser = 262144
302 enum ImageFlags
304 ImageFlagsNone = 0,
305 ImageFlagsScalable = 0x0001,
306 ImageFlagsHasAlpha = 0x0002,
307 ImageFlagsHasTranslucent = 0x0004,
308 ImageFlagsPartiallyScalable = 0x0008,
309 ImageFlagsColorSpaceRGB = 0x0010,
310 ImageFlagsColorSpaceCMYK = 0x0020,
311 ImageFlagsColorSpaceGRAY = 0x0040,
312 ImageFlagsColorSpaceYCBCR = 0x0080,
313 ImageFlagsColorSpaceYCCK = 0x0100,
314 ImageFlagsHasRealDPI = 0x1000,
315 ImageFlagsHasRealPixelSize = 0x2000,
316 ImageFlagsReadOnly = 0x00010000,
317 ImageFlagsCaching = 0x00020000
320 enum CombineMode
322 CombineModeReplace,
323 CombineModeIntersect,
324 CombineModeUnion,
325 CombineModeXor,
326 CombineModeExclude,
327 CombineModeComplement
330 enum FlushIntention
332 FlushIntentionFlush = 0,
333 FlushIntentionSync = 1
336 enum CoordinateSpace
338 CoordinateSpaceWorld,
339 CoordinateSpacePage,
340 CoordinateSpaceDevice
343 enum GpTestControlEnum
345 TestControlForceBilinear = 0,
346 TestControlNoICM = 1,
347 TestControlGetBuildNumber = 2
350 enum MetafileFrameUnit
352 MetafileFrameUnitPixel = UnitPixel,
353 MetafileFrameUnitPoint = UnitPoint,
354 MetafileFrameUnitInch = UnitInch,
355 MetafileFrameUnitDocument = UnitDocument,
356 MetafileFrameUnitMillimeter = UnitMillimeter,
357 MetafileFrameUnitGdi
360 enum HatchStyle
362 HatchStyleHorizontal = 0,
363 HatchStyleVertical = 1,
364 HatchStyleForwardDiagonal = 2,
365 HatchStyleBackwardDiagonal = 3,
366 HatchStyleCross = 4,
367 HatchStyleDiagonalCross = 5,
368 HatchStyle05Percent = 6,
369 HatchStyle10Percent = 7,
370 HatchStyle20Percent = 8,
371 HatchStyle25Percent = 9,
372 HatchStyle30Percent = 10,
373 HatchStyle40Percent = 11,
374 HatchStyle50Percent = 12,
375 HatchStyle60Percent = 13,
376 HatchStyle70Percent = 14,
377 HatchStyle75Percent = 15,
378 HatchStyle80Percent = 16,
379 HatchStyle90Percent = 17,
380 HatchStyleLightDownwardDiagonal = 18,
381 HatchStyleLightUpwardDiagonal = 19,
382 HatchStyleDarkDownwardDiagonal = 20,
383 HatchStyleDarkUpwardDiagonal = 21,
384 HatchStyleWideDownwardDiagonal = 22,
385 HatchStyleWideUpwardDiagonal = 23,
386 HatchStyleLightVertical = 24,
387 HatchStyleLightHorizontal = 25,
388 HatchStyleNarrowVertical = 26,
389 HatchStyleNarrowHorizontal = 27,
390 HatchStyleDarkVertical = 28,
391 HatchStyleDarkHorizontal = 29,
392 HatchStyleDashedDownwardDiagonal = 30,
393 HatchStyleDashedUpwardDiagonal = 31,
394 HatchStyleDashedHorizontal = 32,
395 HatchStyleDashedVertical = 33,
396 HatchStyleSmallConfetti = 34,
397 HatchStyleLargeConfetti = 35,
398 HatchStyleZigZag = 36,
399 HatchStyleWave = 37,
400 HatchStyleDiagonalBrick = 38,
401 HatchStyleHorizontalBrick = 39,
402 HatchStyleWeave = 40,
403 HatchStylePlaid = 41,
404 HatchStyleDivot = 42,
405 HatchStyleDottedGrid = 43,
406 HatchStyleDottedDiamond = 44,
407 HatchStyleShingle = 45,
408 HatchStyleTrellis = 46,
409 HatchStyleSphere = 47,
410 HatchStyleSmallGrid = 48,
411 HatchStyleSmallCheckerBoard = 49,
412 HatchStyleLargeCheckerBoard = 50,
413 HatchStyleOutlinedDiamond = 51,
414 HatchStyleSolidDiamond = 52,
415 HatchStyleTotal = 53,
416 HatchStyleLargeGrid = HatchStyleCross,
417 HatchStyleMin = HatchStyleHorizontal,
418 HatchStyleMax = HatchStyleTotal - 1
421 #ifndef __cplusplus
423 typedef enum Unit Unit;
424 typedef enum BrushType BrushType;
425 typedef enum FillMode FillMode;
426 typedef enum LineCap LineCap;
427 typedef enum PathPointType PathPointType;
428 typedef enum LineJoin LineJoin;
429 typedef enum QualityMode QualityMode;
430 typedef enum SmoothingMode SmoothingMode;
431 typedef enum CompositingQuality CompositingQuality;
432 typedef enum InterpolationMode InterpolationMode;
433 typedef enum PixelOffsetMode PixelOffsetMode;
434 typedef enum DashCap DashCap;
435 typedef enum DashStyle DashStyle;
436 typedef enum MatrixOrder MatrixOrder;
437 typedef enum ImageType ImageType;
438 typedef enum ImageFlags ImageFlags;
439 typedef enum WrapMode WrapMode;
440 typedef enum MetafileType MetafileType;
441 typedef enum LinearGradientMode LinearGradientMode;
442 typedef enum EmfType EmfType;
443 typedef enum CompositingMode CompositingMode;
444 typedef enum TextRenderingHint TextRenderingHint;
445 typedef enum StringAlignment StringAlignment;
446 typedef enum StringDigitSubstitute StringDigitSubstitute;
447 typedef enum StringTrimming StringTrimming;
448 typedef enum FontStyle FontStyle;
449 typedef enum StringFormatFlags StringFormatFlags;
450 typedef enum HotkeyPrefix HotkeyPrefix;
451 typedef enum PenAlignment GpPenAlignment;
452 typedef enum ImageCodecFlags ImageCodecFlags;
453 typedef enum CombineMode CombineMode;
454 typedef enum FlushIntention FlushIntention;
455 typedef enum CoordinateSpace CoordinateSpace;
456 typedef enum GpTestControlEnum GpTestControlEnum;
457 typedef enum MetafileFrameUnit MetafileFrameUnit;
458 typedef enum PenType PenType;
459 typedef enum HatchStyle HatchStyle;
461 #endif /* end of c typedefs */
463 #endif