mswsock: Export the WSARecvEx function.
[wine] / include / gdiplusenums.h
1 /*
2  * Copyright (C) 2007 Google (Evan Stade)
3  *
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.
8  *
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.
13  *
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
17  */
18
19 #ifndef _GDIPLUSENUMS_H
20 #define _GDIPLUSENUMS_H
21
22 typedef UINT GraphicsState;
23 typedef UINT GraphicsContainer;
24
25 enum Unit
26 {
27     UnitWorld       = 0,
28     UnitDisplay     = 1,
29     UnitPixel       = 2,
30     UnitPoint       = 3,
31     UnitInch        = 4,
32     UnitDocument    = 5,
33     UnitMillimeter  = 6
34 };
35
36 enum BrushType
37 {
38    BrushTypeSolidColor       = 0,
39    BrushTypeHatchFill        = 1,
40    BrushTypeTextureFill      = 2,
41    BrushTypePathGradient     = 3,
42    BrushTypeLinearGradient   = 4
43 };
44
45 enum FillMode
46 {
47     FillModeAlternate   = 0,
48     FillModeWinding     = 1
49 };
50
51 enum LineCap
52 {
53     LineCapFlat             = 0x00,
54     LineCapSquare           = 0x01,
55     LineCapRound            = 0x02,
56     LineCapTriangle         = 0x03,
57
58     LineCapNoAnchor         = 0x10,
59     LineCapSquareAnchor     = 0x11,
60     LineCapRoundAnchor      = 0x12,
61     LineCapDiamondAnchor    = 0x13,
62     LineCapArrowAnchor      = 0x14,
63
64     LineCapCustom           = 0xff,
65     LineCapAnchorMask       = 0xf0
66 };
67
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
77 };
78
79 enum LineJoin
80 {
81     LineJoinMiter           = 0,
82     LineJoinBevel           = 1,
83     LineJoinRound           = 2,
84     LineJoinMiterClipped    = 3
85 };
86
87 enum QualityMode
88 {
89     QualityModeInvalid  = -1,
90     QualityModeDefault  = 0,
91     QualityModeLow      = 1,
92     QualityModeHigh     = 2
93 };
94
95 enum SmoothingMode
96 {
97     SmoothingModeInvalid     = QualityModeInvalid,
98     SmoothingModeDefault     = QualityModeDefault,
99     SmoothingModeHighSpeed   = QualityModeLow,
100     SmoothingModeHighQuality = QualityModeHigh,
101     SmoothingModeNone,
102     SmoothingModeAntiAlias
103 };
104
105 enum CompositingQuality
106 {
107     CompositingQualityInvalid          = QualityModeInvalid,
108     CompositingQualityDefault          = QualityModeDefault,
109     CompositingQualityHighSpeed        = QualityModeLow,
110     CompositingQualityHighQuality      = QualityModeHigh,
111     CompositingQualityGammaCorrected,
112     CompositingQualityAssumeLinear
113 };
114
115 enum InterpolationMode
116 {
117     InterpolationModeInvalid        = QualityModeInvalid,
118     InterpolationModeDefault        = QualityModeDefault,
119     InterpolationModeLowQuality     = QualityModeLow,
120     InterpolationModeHighQuality    = QualityModeHigh,
121     InterpolationModeBilinear,
122     InterpolationModeBicubic,
123     InterpolationModeNearestNeighbor,
124     InterpolationModeHighQualityBilinear,
125     InterpolationModeHighQualityBicubic
126 };
127
128 enum PenAlignment
129 {
130     PenAlignmentCenter   = 0,
131     PenAlignmentInset    = 1
132 };
133
134 enum PixelOffsetMode
135 {
136     PixelOffsetModeInvalid     = QualityModeInvalid,
137     PixelOffsetModeDefault     = QualityModeDefault,
138     PixelOffsetModeHighSpeed   = QualityModeLow,
139     PixelOffsetModeHighQuality = QualityModeHigh,
140     PixelOffsetModeNone,
141     PixelOffsetModeHalf
142 };
143
144 enum DashCap
145 {
146     DashCapFlat     = 0,
147     DashCapRound    = 2,
148     DashCapTriangle = 3
149 };
150
151 enum DashStyle
152 {
153     DashStyleSolid,
154     DashStyleDash,
155     DashStyleDot,
156     DashStyleDashDot,
157     DashStyleDashDotDot,
158     DashStyleCustom
159 };
160
161 enum MatrixOrder
162 {
163     MatrixOrderPrepend = 0,
164     MatrixOrderAppend  = 1
165 };
166
167 enum ImageType
168 {
169     ImageTypeUnknown,
170     ImageTypeBitmap,
171     ImageTypeMetafile
172 };
173
174 enum WrapMode
175 {
176     WrapModeTile,
177     WrapModeTileFlipX,
178     WrapModeTileFlipY,
179     WrapModeTileFlipXY,
180     WrapModeClamp
181 };
182
183 enum MetafileType
184 {
185     MetafileTypeInvalid,
186     MetafileTypeWmf,
187     MetafileTypeWmfPlaceable,
188     MetafileTypeEmf,
189     MetafileTypeEmfPlusOnly,
190     MetafileTypeEmfPlusDual
191 };
192
193 enum LinearGradientMode
194 {
195     LinearGradientModeHorizontal,
196     LinearGradientModeVertical,
197     LinearGradientModeForwardDiagonal,
198     LinearGradientModeBackwardDiagonal
199 };
200
201 enum EmfType
202 {
203     EmfTypeEmfOnly     = MetafileTypeEmf,
204     EmfTypeEmfPlusOnly = MetafileTypeEmfPlusOnly,
205     EmfTypeEmfPlusDual = MetafileTypeEmfPlusDual
206 };
207
208 enum CompositingMode
209 {
210     CompositingModeSourceOver,
211     CompositingModeSourceCopy
212 };
213
214 enum TextRenderingHint
215 {
216     TextRenderingHintSystemDefault = 0,
217     TextRenderingHintSingleBitPerPixelGridFit,
218     TextRenderingHintSingleBitPerPixel,
219     TextRenderingHintAntiAliasGridFit,
220     TextRenderingHintAntiAlias,
221     TextRenderingHintClearTypeGridFit
222 };
223
224 enum StringAlignment
225 {
226     StringAlignmentNear    = 0,
227     StringAlignmentCenter  = 1,
228     StringAlignmentFar     = 2
229 };
230
231 enum  StringDigitSubstitute
232 {
233     StringDigitSubstituteUser        = 0,
234     StringDigitSubstituteNone        = 1,
235     StringDigitSubstituteNational    = 2,
236     StringDigitSubstituteTraditional = 3
237 };
238
239 enum StringFormatFlags
240 {
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
250 };
251
252 enum StringTrimming
253 {
254     StringTrimmingNone                 = 0,
255     StringTrimmingCharacter            = 1,
256     StringTrimmingWord                 = 2,
257     StringTrimmingEllipsisCharacter    = 3,
258     StringTrimmingEllipsisWord         = 4,
259     StringTrimmingEllipsisPath         = 5
260 };
261
262 enum FontStyle
263 {
264     FontStyleRegular    = 0,
265     FontStyleBold       = 1,
266     FontStyleItalic     = 2,
267     FontStyleBoldItalic = 3,
268     FontStyleUnderline  = 4,
269     FontStyleStrikeout  = 8
270 };
271
272 enum HotkeyPrefix
273 {
274     HotkeyPrefixNone   = 0,
275     HotkeyPrefixShow   = 1,
276     HotkeyPrefixHide   = 2
277 };
278
279 enum ImageCodecFlags
280 {
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
290 };
291
292 enum ImageFlags
293 {
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
308 };
309
310 enum CombineMode
311 {
312     CombineModeReplace,
313     CombineModeIntersect,
314     CombineModeUnion,
315     CombineModeXor,
316     CombineModeExclude,
317     CombineModeComplement
318 };
319
320 enum FlushIntention
321 {
322     FlushIntentionFlush = 0,
323     FlushIntentionSync  = 1
324 };
325
326 enum CoordinateSpace
327 {
328     CoordinateSpaceWorld,
329     CoordinateSpacePage,
330     CoordinateSpaceDevice
331 };
332
333 enum GpTestControlEnum
334 {
335     TestControlForceBilinear  = 0,
336     TestControlNoICM          = 1,
337     TestControlGetBuildNumber = 2
338 };
339
340 enum MetafileFrameUnit
341 {
342     MetafileFrameUnitPixel      = UnitPixel,
343     MetafileFrameUnitPoint      = UnitPoint,
344     MetafileFrameUnitInch       = UnitInch,
345     MetafileFrameUnitDocument   = UnitDocument,
346     MetafileFrameUnitMillimeter = UnitMillimeter,
347     MetafileFrameUnitGdi
348 };
349
350 #ifndef __cplusplus
351
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;
387
388 #endif /* end of c typedefs */
389
390 #endif