[PSDK][GDIPLUS]
[reactos.git] / reactos / sdk / include / psdk / gdiplusbrush.h
1 /*
2 * GdiPlusBrush.h
3 *
4 * Windows GDI+
5 *
6 * This file is part of the w32api package.
7 *
8 * THIS SOFTWARE IS NOT COPYRIGHTED
9 *
10 * This source code is offered for use in the public domain. You may
11 * use, modify or distribute it freely.
12 *
13 * This code is distributed in the hope that it will be useful but
14 * WITHOUT ANY WARRANTY. ALL WARRANTIES, EXPRESS OR IMPLIED ARE HEREBY
15 * DISCLAIMED. This includes but is not limited to warranties of
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
17 */
18
19 #ifndef _GDIPLUSBRUSH_H
20 #define _GDIPLUSBRUSH_H
21
22 class Image;
23
24 class Brush : public GdiplusBase
25 {
26 public:
27 Brush *Clone(VOID) const
28 {
29 return NULL;
30 }
31
32 Status GetLastStatus(VOID)
33 {
34 return NotImplemented;
35 }
36
37 BrushType GetType(VOID)
38 {
39 return BrushTypeSolidColor;
40 }
41 };
42
43
44 class HatchBrush : public Brush
45 {
46 public:
47 HatchBrush(HatchStyle hatchStyle, const Color &foreColor, const Color &backColor)
48 {
49 }
50
51 Status GetBackgroundColor(Color *color) const
52 {
53 return NotImplemented;
54 }
55
56 Status GetForegroundColor(Color *color) const
57 {
58 return NotImplemented;
59 }
60
61 HatchStyle GetHatchStyle(VOID) const
62 {
63 return HatchStyleHorizontal;
64 }
65 };
66
67
68 class LinearGradientBrush : public Brush
69 {
70 public:
71 LinearGradientBrush(const PointF &point1, const PointF &point2, const Color &color1, const Color &color2)
72 {
73 }
74
75 LinearGradientBrush(const Rect &rect, const Color &color1, const Color &color2, REAL angle, BOOL isAngleScalable)
76 {
77 }
78
79 LinearGradientBrush(const Rect &rect, const Color &color1, const Color &color2, LinearGradientMode mode)
80 {
81 }
82
83 LinearGradientBrush(const Point &point1, const Point &point2, const Color &color1, const Color &color2)
84 {
85 }
86
87 LinearGradientBrush(const RectF &rect, const Color &color1, const Color &color2, REAL angle, BOOL isAngleScalable)
88 {
89 }
90
91 LinearGradientBrush(const RectF &rect, const Color &color1, const Color &color2, LinearGradientMode mode)
92 {
93 }
94
95 Status GetBlend(REAL *blendFactors, REAL *blendPositions, INT count)
96 {
97 return NotImplemented;
98 }
99
100 INT GetBlendCount(VOID) const
101 {
102 return 0;
103 }
104
105 BOOL GetGammaCorrection(VOID) const
106 {
107 return FALSE;
108 }
109
110 INT GetInterpolationColorCount(VOID) const
111 {
112 return 0;
113 }
114
115 Status GetInterpolationColors(Color *presetColors, REAL *blendPositions, INT count) const
116 {
117 return NotImplemented;
118 }
119
120 Status GetLinearColors(Color* colors) const
121 {
122 return NotImplemented;
123 }
124
125 Status GetRectangle(Rect *rect) const
126 {
127 return NotImplemented;
128 }
129
130 Status GetRectangle(RectF* rect) const
131 {
132 return NotImplemented;
133 }
134
135 Status GetTransform(Matrix* matrix) const
136 {
137 return NotImplemented;
138 }
139
140 WrapMode GetWrapMode(VOID) const
141 {
142 return WrapModeTile;
143 }
144
145 Status MultiplyTransform(const Matrix *matrix, MatrixOrder order)
146 {
147 return NotImplemented;
148 }
149
150 Status ResetTransform(VOID)
151 {
152 return NotImplemented;
153 }
154
155 Status RotateTransform(REAL angle, MatrixOrder order)
156 {
157 return NotImplemented;
158 }
159
160 Status ScaleTransform(REAL sx, REAL sy, MatrixOrder order)
161 {
162 return NotImplemented;
163 }
164
165 Status SetBlend(const REAL *blendFactors, const REAL *blendPositions, INT count)
166 {
167 return NotImplemented;
168 }
169
170 Status SetBlendBellShape(REAL focus, REAL scale)
171 {
172 return NotImplemented;
173 }
174
175 Status SetBlendTriangularShape(REAL focus, REAL scale)
176 {
177 return NotImplemented;
178 }
179
180 Status SetGammaCorrection(BOOL useGammaCorrection)
181 {
182 return NotImplemented;
183 }
184
185 Status SetInterpolationColors(const Color *presetColors, const REAL *blendPositions, INT count)
186 {
187 return NotImplemented;
188 }
189
190 Status SetLinearColors(const Color& color1, const Color& color2)
191 {
192 return NotImplemented;
193 }
194
195 Status SetTransform(const Matrix* matrix)
196 {
197 return NotImplemented;
198 }
199
200 Status SetWrapMode(WrapMode wrapMode)
201 {
202 return NotImplemented;
203 }
204
205 Status TranslateTransform(REAL dx, REAL dy, MatrixOrder order)
206 {
207 return NotImplemented;
208 }
209 };
210
211
212 class SolidBrush : Brush
213 {
214 public:
215 SolidBrush(const Color &color)
216 {
217 }
218
219 Status GetColor(Color *color) const
220 {
221 return NotImplemented;
222 }
223
224 Status SetColor(const Color &color)
225 {
226 return NotImplemented;
227 }
228 };
229
230
231 class TextureBrush : Brush
232 {
233 public:
234 TextureBrush(Image *image, WrapMode wrapMode, const RectF &dstRect)
235 {
236 }
237
238 TextureBrush(Image *image, Rect &dstRect, ImageAttributes *imageAttributes)
239 {
240 }
241
242 TextureBrush(Image *image, WrapMode wrapMode, INT dstX, INT dstY, INT dstWidth, INT dstHeight)
243 {
244 }
245
246 TextureBrush(Image *image, WrapMode wrapMode, REAL dstX, REAL dstY, REAL dstWidth, REAL dstHeight)
247 {
248 }
249
250 TextureBrush(Image *image, RectF &dstRect, ImageAttributes *imageAttributes)
251 {
252 }
253
254 TextureBrush(Image *image, WrapMode wrapMode)
255 {
256 }
257
258 TextureBrush(Image *image, WrapMode wrapMode, const Rect &dstRect)
259 {
260 }
261
262 Image *GetImage(VOID) const
263 {
264 return NULL;
265 }
266
267 Status GetTransform(Matrix *matrix) const
268 {
269 return NotImplemented;
270 }
271
272 WrapMode GetWrapMode(VOID) const
273 {
274 return WrapModeTile;
275 }
276
277 Status MultiplyTransform(Matrix *matrix, MatrixOrder order)
278 {
279 return NotImplemented;
280 }
281
282 Status ResetTransform(VOID)
283 {
284 return NotImplemented;
285 }
286
287 Status RotateTransform(REAL angle, MatrixOrder order)
288 {
289 return NotImplemented;
290 }
291
292 Status ScaleTransform(REAL sx, REAL sy, MatrixOrder order)
293 {
294 return NotImplemented;
295 }
296
297 Status SetTransform(const Matrix *matrix)
298 {
299 return NotImplemented;
300 }
301
302 Status SetWrapMode(WrapMode wrapMode)
303 {
304 return NotImplemented;
305 }
306
307 Status TranslateTransform(REAL dx, REAL dy, MatrixOrder order)
308 {
309 return NotImplemented;
310 }
311 };
312
313 #endif /* _GDIPLUSBRUSH_H */