ntdll: Add test cases for the direction flag.
[wine/hacks.git] / include / gdiplusenums.h
blobc579ebe16fd7de22a07fb2e1c5472d9c0010df35
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 StringFormatFlags
232 StringFormatFlagsDirectionRightToLeft = 0x00000001,
233 StringFormatFlagsDirectionVertical = 0x00000002,
234 StringFormatFlagsNoFitBlackBox = 0x00000004,
235 StringFormatFlagsDisplayFormatControl = 0x00000020,
236 StringFormatFlagsNoFontFallback = 0x00000400,
237 StringFormatFlagsMeasureTrailingSpaces = 0x00000800,
238 StringFormatFlagsNoWrap = 0x00001000,
239 StringFormatFlagsLineLimit = 0x00002000,
240 StringFormatFlagsNoClip = 0x00004000
243 enum StringTrimming
245 StringTrimmingNone = 0,
246 StringTrimmingCharacter = 1,
247 StringTrimmingWord = 2,
248 StringTrimmingEllipsisCharacter = 3,
249 StringTrimmingEllipsisWord = 4,
250 StringTrimmingEllipsisPath = 5
253 enum HotkeyPrefix
255 HotkeyPrefixNone = 0,
256 HotkeyPrefixShow = 1,
257 HotkeyPrefixHide = 2
260 enum ImageCodecFlags
262 ImageCodecFlagsEncoder = 1,
263 ImageCodecFlagsDecoder = 2,
264 ImageCodecFlagsSupportBitmap = 4,
265 ImageCodecFlagsSupportVector = 8,
266 ImageCodecFlagsSeekableEncode = 16,
267 ImageCodecFlagsBlockingDecode = 32,
268 ImageCodecFlagsBuiltin = 65536,
269 ImageCodecFlagsSystem = 131072,
270 ImageCodecFlagsUser = 262144
273 #ifndef __cplusplus
275 typedef enum Unit Unit;
276 typedef enum BrushType BrushType;
277 typedef enum FillMode FillMode;
278 typedef enum LineCap LineCap;
279 typedef enum PathPointType PathPointType;
280 typedef enum LineJoin LineJoin;
281 typedef enum QualityMode QualityMode;
282 typedef enum SmoothingMode SmoothingMode;
283 typedef enum CompositingQuality CompositingQuality;
284 typedef enum InterpolationMode InterpolationMode;
285 typedef enum PixelOffsetMode PixelOffsetMode;
286 typedef enum DashCap DashCap;
287 typedef enum DashStyle DashStyle;
288 typedef enum MatrixOrder MatrixOrder;
289 typedef enum ImageType ImageType;
290 typedef enum WrapMode WrapMode;
291 typedef enum MetafileType MetafileType;
292 typedef enum LinearGradientMode LinearGradientMode;
293 typedef enum EmfType EmfType;
294 typedef enum CompositingMode CompositingMode;
295 typedef enum TextRenderingHint TextRenderingHint;
296 typedef enum StringAlignment StringAlignment;
297 typedef enum StringTrimming StringTrimming;
298 typedef enum StringFormatFlags StringFormatFlags;
299 typedef enum HotkeyPrefix HotkeyPrefix;
300 typedef enum PenAlignment GpPenAlignment;
301 typedef enum ImageCodecFlags ImageCodecFlags;
303 #endif /* end of c typedefs */
305 #endif