push 553a83299288f61678d62ade87a3a2a5489a8ad8
[wine/hacks.git] / include / gdiplusenums.h
blobf3cdad8d9a7263d56a0079946a81a79bb782e751
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;
24 enum Unit
26 UnitWorld = 0,
27 UnitDisplay = 1,
28 UnitPixel = 2,
29 UnitPoint = 3,
30 UnitInch = 4,
31 UnitDocument = 5,
32 UnitMillimeter = 6
35 enum BrushType
37 BrushTypeSolidColor = 0,
38 BrushTypeHatchFill = 1,
39 BrushTypeTextureFill = 2,
40 BrushTypePathGradient = 3,
41 BrushTypeLinearGradient = 4
44 enum FillMode
46 FillModeAlternate = 0,
47 FillModeWinding = 1
50 enum LineCap
52 LineCapFlat = 0x00,
53 LineCapSquare = 0x01,
54 LineCapRound = 0x02,
55 LineCapTriangle = 0x03,
57 LineCapNoAnchor = 0x10,
58 LineCapSquareAnchor = 0x11,
59 LineCapRoundAnchor = 0x12,
60 LineCapDiamondAnchor = 0x13,
61 LineCapArrowAnchor = 0x14,
63 LineCapCustom = 0xff,
64 LineCapAnchorMask = 0xf0
67 enum PathPointType{
68 PathPointTypeStart = 0, /* start of a figure */
69 PathPointTypeLine = 1,
70 PathPointTypeBezier = 3,
71 PathPointTypePathTypeMask = 7,
72 PathPointTypePathDashMode = 16, /* not used */
73 PathPointTypePathMarker = 32,
74 PathPointTypeCloseSubpath = 128, /* end of a closed figure */
75 PathPointTypeBezier3 = 3
78 enum LineJoin
80 LineJoinMiter = 0,
81 LineJoinBevel = 1,
82 LineJoinRound = 2,
83 LineJoinMiterClipped = 3
86 enum QualityMode
88 QualityModeInvalid = -1,
89 QualityModeDefault = 0,
90 QualityModeLow = 1,
91 QualityModeHigh = 2
94 enum SmoothingMode
96 SmoothingModeInvalid = QualityModeInvalid,
97 SmoothingModeDefault = QualityModeDefault,
98 SmoothingModeHighSpeed = QualityModeLow,
99 SmoothingModeHighQuality = QualityModeHigh,
100 SmoothingModeNone,
101 SmoothingModeAntiAlias
104 enum CompositingQuality
106 CompositingQualityInvalid = QualityModeInvalid,
107 CompositingQualityDefault = QualityModeDefault,
108 CompositingQualityHighSpeed = QualityModeLow,
109 CompositingQualityHighQuality = QualityModeHigh,
110 CompositingQualityGammaCorrected,
111 CompositingQualityAssumeLinear
114 enum InterpolationMode
116 InterpolationModeInvalid = QualityModeInvalid,
117 InterpolationModeDefault = QualityModeDefault,
118 InterpolationModeLowQuality = QualityModeLow,
119 InterpolationModeHighQuality = QualityModeHigh,
120 InterpolationModeBilinear,
121 InterpolationModeBicubic,
122 InterpolationModeNearestNeighbor,
123 InterpolationModeHighQualityBilinear,
124 InterpolationModeHighQualityBicubic
127 enum PenAlignment
129 PenAlignmentCenter = 0,
130 PenAlignmentInset = 1
133 enum PixelOffsetMode
135 PixelOffsetModeInvalid = QualityModeInvalid,
136 PixelOffsetModeDefault = QualityModeDefault,
137 PixelOffsetModeHighSpeed = QualityModeLow,
138 PixelOffsetModeHighQuality = QualityModeHigh,
139 PixelOffsetModeNone,
140 PixelOffsetModeHalf
143 enum DashCap
145 DashCapFlat = 0,
146 DashCapRound = 2,
147 DashCapTriangle = 3
150 enum DashStyle
152 DashStyleSolid,
153 DashStyleDash,
154 DashStyleDot,
155 DashStyleDashDot,
156 DashStyleDashDotDot,
157 DashStyleCustom
160 enum MatrixOrder
162 MatrixOrderPrepend = 0,
163 MatrixOrderAppend = 1
166 enum ImageType
168 ImageTypeUnknown,
169 ImageTypeBitmap,
170 ImageTypeMetafile
173 enum WrapMode
175 WrapModeTile,
176 WrapModeTileFlipX,
177 WrapModeTileFlipY,
178 WrapModeTileFlipXY,
179 WrapModeClamp
182 enum MetafileType
184 MetafileTypeInvalid,
185 MetafileTypeWmf,
186 MetafileTypeWmfPlaceable,
187 MetafileTypeEmf,
188 MetafileTypeEmfPlusOnly,
189 MetafileTypeEmfPlusDual
192 enum LinearGradientMode
194 LinearGradientModeHorizontal,
195 LinearGradientModeVertical,
196 LinearGradientModeForwardDiagonal,
197 LinearGradientModeBackwardDiagonal
200 enum EmfType
202 EmfTypeEmfOnly = MetafileTypeEmf,
203 EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly,
204 EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
207 enum CompositingMode
209 CompositingModeSourceOver,
210 CompositingModeSourceCopy
213 enum TextRenderingHint
215 TextRenderingHintSystemDefault = 0,
216 TextRenderingHintSingleBitPerPixelGridFit,
217 TextRenderingHintSingleBitPerPixel,
218 TextRenderingHintAntiAliasGridFit,
219 TextRenderingHintAntiAlias,
220 TextRenderingHintClearTypeGridFit
223 enum StringAlignment
225 StringAlignmentNear = 0,
226 StringAlignmentCenter = 1,
227 StringAlignmentFar = 2
230 enum StringDigitSubstitute
232 StringDigitSubstituteUser = 0,
233 StringDigitSubstituteNone = 1,
234 StringDigitSubstituteNational = 2,
235 StringDigitSubstituteTraditional = 3
238 enum StringFormatFlags
240 StringFormatFlagsDirectionRightToLeft = 0x00000001,
241 StringFormatFlagsDirectionVertical = 0x00000002,
242 StringFormatFlagsNoFitBlackBox = 0x00000004,
243 StringFormatFlagsDisplayFormatControl = 0x00000020,
244 StringFormatFlagsNoFontFallback = 0x00000400,
245 StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
246 StringFormatFlagsNoWrap = 0x00001000,
247 StringFormatFlagsLineLimit = 0x00002000,
248 StringFormatFlagsNoClip = 0x00004000
251 enum StringTrimming
253 StringTrimmingNone = 0,
254 StringTrimmingCharacter = 1,
255 StringTrimmingWord = 2,
256 StringTrimmingEllipsisCharacter = 3,
257 StringTrimmingEllipsisWord = 4,
258 StringTrimmingEllipsisPath = 5
261 enum FontStyle
263 FontStyleRegular = 0,
264 FontStyleBold = 1,
265 FontStyleItalic = 2,
266 FontStyleBoldItalic = 3,
267 FontStyleUnderline = 4,
268 FontStyleStrikeout = 8
271 enum HotkeyPrefix
273 HotkeyPrefixNone = 0,
274 HotkeyPrefixShow = 1,
275 HotkeyPrefixHide = 2
278 enum ImageCodecFlags
280 ImageCodecFlagsEncoder = 1,
281 ImageCodecFlagsDecoder = 2,
282 ImageCodecFlagsSupportBitmap = 4,
283 ImageCodecFlagsSupportVector = 8,
284 ImageCodecFlagsSeekableEncode = 16,
285 ImageCodecFlagsBlockingDecode = 32,
286 ImageCodecFlagsBuiltin = 65536,
287 ImageCodecFlagsSystem = 131072,
288 ImageCodecFlagsUser = 262144
291 enum ImageFlags
293 ImageFlagsNone = 0,
294 ImageFlagsScalable = 0x0001,
295 ImageFlagsHasAlpha = 0x0002,
296 ImageFlagsHasTranslucent = 0x0004,
297 ImageFlagsPartiallyScalable = 0x0008,
298 ImageFlagsColorSpaceRGB = 0x0010,
299 ImageFlagsColorSpaceCMYK = 0x0020,
300 ImageFlagsColorSpaceGRAY = 0x0040,
301 ImageFlagsColorSpaceYCBCR = 0x0080,
302 ImageFlagsColorSpaceYCCK = 0x0100,
303 ImageFlagsHasRealDPI = 0x1000,
304 ImageFlagsHasRealPixelSize = 0x2000,
305 ImageFlagsReadOnly = 0x00010000,
306 ImageFlagsCaching = 0x00020000
309 enum CombineMode
311 CombineModeReplace,
312 CombineModeIntersect,
313 CombineModeUnion,
314 CombineModeXor,
315 CombineModeExclude,
316 CombineModeComplement
319 enum FlushIntention
321 FlushIntentionFlush = 0,
322 FlushIntentionSync = 1
325 enum CoordinateSpace
327 CoordinateSpaceWorld,
328 CoordinateSpacePage,
329 CoordinateSpaceDevice
332 enum GpTestControlEnum
334 TestControlForceBilinear = 0,
335 TestControlNoICM = 1,
336 TestControlGetBuildNumber = 2
339 #ifndef __cplusplus
341 typedef enum Unit Unit;
342 typedef enum BrushType BrushType;
343 typedef enum FillMode FillMode;
344 typedef enum LineCap LineCap;
345 typedef enum PathPointType PathPointType;
346 typedef enum LineJoin LineJoin;
347 typedef enum QualityMode QualityMode;
348 typedef enum SmoothingMode SmoothingMode;
349 typedef enum CompositingQuality CompositingQuality;
350 typedef enum InterpolationMode InterpolationMode;
351 typedef enum PixelOffsetMode PixelOffsetMode;
352 typedef enum DashCap DashCap;
353 typedef enum DashStyle DashStyle;
354 typedef enum MatrixOrder MatrixOrder;
355 typedef enum ImageType ImageType;
356 typedef enum ImageFlags ImageFlags;
357 typedef enum WrapMode WrapMode;
358 typedef enum MetafileType MetafileType;
359 typedef enum LinearGradientMode LinearGradientMode;
360 typedef enum EmfType EmfType;
361 typedef enum CompositingMode CompositingMode;
362 typedef enum TextRenderingHint TextRenderingHint;
363 typedef enum StringAlignment StringAlignment;
364 typedef enum StringDigitSubstitute StringDigitSubstitute;
365 typedef enum StringTrimming StringTrimming;
366 typedef enum FontStyle FontStyle;
367 typedef enum StringFormatFlags StringFormatFlags;
368 typedef enum HotkeyPrefix HotkeyPrefix;
369 typedef enum PenAlignment GpPenAlignment;
370 typedef enum ImageCodecFlags ImageCodecFlags;
371 typedef enum CombineMode CombineMode;
372 typedef enum FlushIntention FlushIntention;
373 typedef enum CoordinateSpace CoordinateSpace;
374 typedef enum GpTestControlEnum GpTestControlEnum;
376 #endif /* end of c typedefs */
378 #endif