winspool: Implement Level 9 for GetPrinter.
[wine.git] / include / gdiplusenums.h
blob7c970058b567c315a906b95a62264d65f87a580f
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
261 #ifndef __cplusplus
263 typedef enum Unit Unit;
264 typedef enum BrushType BrushType;
265 typedef enum FillMode FillMode;
266 typedef enum LineCap LineCap;
267 typedef enum PathPointType PathPointType;
268 typedef enum LineJoin LineJoin;
269 typedef enum QualityMode QualityMode;
270 typedef enum SmoothingMode SmoothingMode;
271 typedef enum CompositingQuality CompositingQuality;
272 typedef enum InterpolationMode InterpolationMode;
273 typedef enum PixelOffsetMode PixelOffsetMode;
274 typedef enum DashCap DashCap;
275 typedef enum DashStyle DashStyle;
276 typedef enum MatrixOrder MatrixOrder;
277 typedef enum ImageType ImageType;
278 typedef enum WrapMode WrapMode;
279 typedef enum MetafileType MetafileType;
280 typedef enum LinearGradientMode LinearGradientMode;
281 typedef enum EmfType EmfType;
282 typedef enum CompositingMode CompositingMode;
283 typedef enum TextRenderingHint TextRenderingHint;
284 typedef enum StringAlignment StringAlignment;
285 typedef enum StringTrimming StringTrimming;
286 typedef enum StringFormatFlags StringFormatFlags;
287 typedef enum HotkeyPrefix HotkeyPrefix;
288 typedef enum PenAlignment GpPenAlignment;
290 #endif /* end of c typedefs */
292 #endif