gdiplus: Implement GdipGetRegionHRgn for infinite regions.
[wine/hacks.git] / include / gdiplusenums.h
blob3138b8cecadfa0e696afee5241bf8476cae8d8a9
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 LineJoin
81 LineJoinMiter = 0,
82 LineJoinBevel = 1,
83 LineJoinRound = 2,
84 LineJoinMiterClipped = 3
87 enum QualityMode
89 QualityModeInvalid = -1,
90 QualityModeDefault = 0,
91 QualityModeLow = 1,
92 QualityModeHigh = 2
95 enum SmoothingMode
97 SmoothingModeInvalid = QualityModeInvalid,
98 SmoothingModeDefault = QualityModeDefault,
99 SmoothingModeHighSpeed = QualityModeLow,
100 SmoothingModeHighQuality = QualityModeHigh,
101 SmoothingModeNone,
102 SmoothingModeAntiAlias
105 enum CompositingQuality
107 CompositingQualityInvalid = QualityModeInvalid,
108 CompositingQualityDefault = QualityModeDefault,
109 CompositingQualityHighSpeed = QualityModeLow,
110 CompositingQualityHighQuality = QualityModeHigh,
111 CompositingQualityGammaCorrected,
112 CompositingQualityAssumeLinear
115 enum InterpolationMode
117 InterpolationModeInvalid = QualityModeInvalid,
118 InterpolationModeDefault = QualityModeDefault,
119 InterpolationModeLowQuality = QualityModeLow,
120 InterpolationModeHighQuality = QualityModeHigh,
121 InterpolationModeBilinear,
122 InterpolationModeBicubic,
123 InterpolationModeNearestNeighbor,
124 InterpolationModeHighQualityBilinear,
125 InterpolationModeHighQualityBicubic
128 enum PenAlignment
130 PenAlignmentCenter = 0,
131 PenAlignmentInset = 1
134 enum PixelOffsetMode
136 PixelOffsetModeInvalid = QualityModeInvalid,
137 PixelOffsetModeDefault = QualityModeDefault,
138 PixelOffsetModeHighSpeed = QualityModeLow,
139 PixelOffsetModeHighQuality = QualityModeHigh,
140 PixelOffsetModeNone,
141 PixelOffsetModeHalf
144 enum DashCap
146 DashCapFlat = 0,
147 DashCapRound = 2,
148 DashCapTriangle = 3
151 enum DashStyle
153 DashStyleSolid,
154 DashStyleDash,
155 DashStyleDot,
156 DashStyleDashDot,
157 DashStyleDashDotDot,
158 DashStyleCustom
161 enum MatrixOrder
163 MatrixOrderPrepend = 0,
164 MatrixOrderAppend = 1
167 enum ImageType
169 ImageTypeUnknown,
170 ImageTypeBitmap,
171 ImageTypeMetafile
174 enum WrapMode
176 WrapModeTile,
177 WrapModeTileFlipX,
178 WrapModeTileFlipY,
179 WrapModeTileFlipXY,
180 WrapModeClamp
183 enum MetafileType
185 MetafileTypeInvalid,
186 MetafileTypeWmf,
187 MetafileTypeWmfPlaceable,
188 MetafileTypeEmf,
189 MetafileTypeEmfPlusOnly,
190 MetafileTypeEmfPlusDual
193 enum LinearGradientMode
195 LinearGradientModeHorizontal,
196 LinearGradientModeVertical,
197 LinearGradientModeForwardDiagonal,
198 LinearGradientModeBackwardDiagonal
201 enum EmfType
203 EmfTypeEmfOnly = MetafileTypeEmf,
204 EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly,
205 EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
208 enum CompositingMode
210 CompositingModeSourceOver,
211 CompositingModeSourceCopy
214 enum TextRenderingHint
216 TextRenderingHintSystemDefault = 0,
217 TextRenderingHintSingleBitPerPixelGridFit,
218 TextRenderingHintSingleBitPerPixel,
219 TextRenderingHintAntiAliasGridFit,
220 TextRenderingHintAntiAlias,
221 TextRenderingHintClearTypeGridFit
224 enum StringAlignment
226 StringAlignmentNear = 0,
227 StringAlignmentCenter = 1,
228 StringAlignmentFar = 2
231 enum StringDigitSubstitute
233 StringDigitSubstituteUser = 0,
234 StringDigitSubstituteNone = 1,
235 StringDigitSubstituteNational = 2,
236 StringDigitSubstituteTraditional = 3
239 enum StringFormatFlags
241 StringFormatFlagsDirectionRightToLeft = 0x00000001,
242 StringFormatFlagsDirectionVertical = 0x00000002,
243 StringFormatFlagsNoFitBlackBox = 0x00000004,
244 StringFormatFlagsDisplayFormatControl = 0x00000020,
245 StringFormatFlagsNoFontFallback = 0x00000400,
246 StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
247 StringFormatFlagsNoWrap = 0x00001000,
248 StringFormatFlagsLineLimit = 0x00002000,
249 StringFormatFlagsNoClip = 0x00004000
252 enum StringTrimming
254 StringTrimmingNone = 0,
255 StringTrimmingCharacter = 1,
256 StringTrimmingWord = 2,
257 StringTrimmingEllipsisCharacter = 3,
258 StringTrimmingEllipsisWord = 4,
259 StringTrimmingEllipsisPath = 5
262 enum FontStyle
264 FontStyleRegular = 0,
265 FontStyleBold = 1,
266 FontStyleItalic = 2,
267 FontStyleBoldItalic = 3,
268 FontStyleUnderline = 4,
269 FontStyleStrikeout = 8
272 enum HotkeyPrefix
274 HotkeyPrefixNone = 0,
275 HotkeyPrefixShow = 1,
276 HotkeyPrefixHide = 2
279 enum ImageCodecFlags
281 ImageCodecFlagsEncoder = 1,
282 ImageCodecFlagsDecoder = 2,
283 ImageCodecFlagsSupportBitmap = 4,
284 ImageCodecFlagsSupportVector = 8,
285 ImageCodecFlagsSeekableEncode = 16,
286 ImageCodecFlagsBlockingDecode = 32,
287 ImageCodecFlagsBuiltin = 65536,
288 ImageCodecFlagsSystem = 131072,
289 ImageCodecFlagsUser = 262144
292 enum ImageFlags
294 ImageFlagsNone = 0,
295 ImageFlagsScalable = 0x0001,
296 ImageFlagsHasAlpha = 0x0002,
297 ImageFlagsHasTranslucent = 0x0004,
298 ImageFlagsPartiallyScalable = 0x0008,
299 ImageFlagsColorSpaceRGB = 0x0010,
300 ImageFlagsColorSpaceCMYK = 0x0020,
301 ImageFlagsColorSpaceGRAY = 0x0040,
302 ImageFlagsColorSpaceYCBCR = 0x0080,
303 ImageFlagsColorSpaceYCCK = 0x0100,
304 ImageFlagsHasRealDPI = 0x1000,
305 ImageFlagsHasRealPixelSize = 0x2000,
306 ImageFlagsReadOnly = 0x00010000,
307 ImageFlagsCaching = 0x00020000
310 enum CombineMode
312 CombineModeReplace,
313 CombineModeIntersect,
314 CombineModeUnion,
315 CombineModeXor,
316 CombineModeExclude,
317 CombineModeComplement
320 enum FlushIntention
322 FlushIntentionFlush = 0,
323 FlushIntentionSync = 1
326 enum CoordinateSpace
328 CoordinateSpaceWorld,
329 CoordinateSpacePage,
330 CoordinateSpaceDevice
333 enum GpTestControlEnum
335 TestControlForceBilinear = 0,
336 TestControlNoICM = 1,
337 TestControlGetBuildNumber = 2
340 enum MetafileFrameUnit
342 MetafileFrameUnitPixel = UnitPixel,
343 MetafileFrameUnitPoint = UnitPoint,
344 MetafileFrameUnitInch = UnitInch,
345 MetafileFrameUnitDocument = UnitDocument,
346 MetafileFrameUnitMillimeter = UnitMillimeter,
347 MetafileFrameUnitGdi
350 #ifndef __cplusplus
352 typedef enum Unit Unit;
353 typedef enum BrushType BrushType;
354 typedef enum FillMode FillMode;
355 typedef enum LineCap LineCap;
356 typedef enum PathPointType PathPointType;
357 typedef enum LineJoin LineJoin;
358 typedef enum QualityMode QualityMode;
359 typedef enum SmoothingMode SmoothingMode;
360 typedef enum CompositingQuality CompositingQuality;
361 typedef enum InterpolationMode InterpolationMode;
362 typedef enum PixelOffsetMode PixelOffsetMode;
363 typedef enum DashCap DashCap;
364 typedef enum DashStyle DashStyle;
365 typedef enum MatrixOrder MatrixOrder;
366 typedef enum ImageType ImageType;
367 typedef enum ImageFlags ImageFlags;
368 typedef enum WrapMode WrapMode;
369 typedef enum MetafileType MetafileType;
370 typedef enum LinearGradientMode LinearGradientMode;
371 typedef enum EmfType EmfType;
372 typedef enum CompositingMode CompositingMode;
373 typedef enum TextRenderingHint TextRenderingHint;
374 typedef enum StringAlignment StringAlignment;
375 typedef enum StringDigitSubstitute StringDigitSubstitute;
376 typedef enum StringTrimming StringTrimming;
377 typedef enum FontStyle FontStyle;
378 typedef enum StringFormatFlags StringFormatFlags;
379 typedef enum HotkeyPrefix HotkeyPrefix;
380 typedef enum PenAlignment GpPenAlignment;
381 typedef enum ImageCodecFlags ImageCodecFlags;
382 typedef enum CombineMode CombineMode;
383 typedef enum FlushIntention FlushIntention;
384 typedef enum CoordinateSpace CoordinateSpace;
385 typedef enum GpTestControlEnum GpTestControlEnum;
386 typedef enum MetafileFrameUnit MetafileFrameUnit;
388 #endif /* end of c typedefs */
390 #endif