ReactOS  0.4.15-dev-489-g75a0787
gdiplusgraphics.h
Go to the documentation of this file.
1 /*
2  * GdiPlusGraphics.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 _GDIPLUSGRAPHICS_H
20 #define _GDIPLUSGRAPHICS_H
21 
22 class Graphics : public GdiplusBase
23 {
24  friend class Region;
25  friend class Font;
26  friend class Bitmap;
27  friend class CachedBitmap;
28  friend class ImageAttributes;
29 
30  public:
32  {
33  GpGraphics *graphics = NULL;
34  if (image)
35  {
37  }
38  SetNativeGraphics(graphics);
39  }
40 
42  {
43  GpGraphics *graphics = NULL;
45  SetNativeGraphics(graphics);
46  }
47 
48  Graphics(HDC hdc, HANDLE hdevice)
49  {
50  GpGraphics *graphics = NULL;
51  lastStatus = DllExports::GdipCreateFromHDC2(hdc, hdevice, &graphics);
52  SetNativeGraphics(graphics);
53  }
54 
56  {
57  GpGraphics *graphics = NULL;
58  if (icm)
59  {
61  }
62  else
63  {
65  }
66  SetNativeGraphics(graphics);
67  }
68 
70  {
72  }
73 
74  Status
75  AddMetafileComment(const BYTE *data, UINT sizeData)
76  {
78  }
79 
82  {
83  return GraphicsContainer();
84  }
85 
87  BeginContainer(const RectF &dstrect, const RectF &srcrect, Unit unit)
88  {
89  return GraphicsContainer();
90  }
91 
93  BeginContainer(const Rect &dstrect, const Rect &srcrect, Unit unit)
94  {
95  return GraphicsContainer();
96  }
97 
98  Status
99  Clear(const Color &color)
100  {
102  }
103 
104  Status
105  DrawArc(const Pen *pen, const Rect &rect, REAL startAngle, REAL sweepAngle)
106  {
108  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle));
109  }
110 
111  Status
112  DrawArc(const Pen *pen, const RectF &rect, REAL startAngle, REAL sweepAngle)
113  {
115  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle));
116  }
117 
118  Status
119  DrawArc(const Pen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
120  {
122  nativeGraphics, pen ? getNat(pen) : NULL, x, y, width, height, startAngle, sweepAngle));
123  }
124 
125  Status
126  DrawArc(const Pen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
127  {
129  nativeGraphics, pen ? getNat(pen) : NULL, x, y, width, height, startAngle, sweepAngle));
130  }
131 
132  Status
133  DrawBezier(const Pen *pen, const Point &pt1, const Point &pt2, const Point &pt3, const Point &pt4)
134  {
136  nativeGraphics, pen ? getNat(pen) : NULL, pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y));
137  }
138 
139  Status
140  DrawBezier(const Pen *pen, const PointF &pt1, const PointF &pt2, const PointF &pt3, const PointF &pt4)
141  {
143  nativeGraphics, pen ? getNat(pen) : NULL, pt1.X, pt1.Y, pt2.X, pt2.Y, pt3.X, pt3.Y, pt4.X, pt4.Y));
144  }
145 
146  Status
147  DrawBezier(const Pen *pen, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4)
148  {
149  return SetStatus(
150  DllExports::GdipDrawBezier(nativeGraphics, pen ? getNat(pen) : NULL, x1, y1, x2, y2, x3, y3, x4, y4));
151  }
152 
153  Status
154  DrawBezier(const Pen *pen, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4)
155  {
156  return SetStatus(
157  DllExports::GdipDrawBezierI(nativeGraphics, pen ? getNat(pen) : NULL, x1, y1, x2, y2, x3, y3, x4, y4));
158  }
159 
160  Status
161  DrawBeziers(const Pen *pen, const Point *points, INT count)
162  {
164  }
165 
166  Status
167  DrawBeziers(const Pen *pen, const PointF *points, INT count)
168  {
170  }
171 
172  Status
174  {
176  }
177 
178  Status
179  DrawClosedCurve(const Pen *pen, const Point *points, INT count)
180  {
182  }
183 
184  Status
185  DrawClosedCurve(const Pen *pen, const PointF *points, INT count)
186  {
188  }
189 
190  Status
191  DrawClosedCurve(const Pen *pen, const PointF *points, INT count, REAL tension)
192  {
193  return SetStatus(
195  }
196 
197  Status
198  DrawClosedCurve(const Pen *pen, const Point *points, INT count, REAL tension)
199  {
200  return SetStatus(
202  }
203 
204  Status
205  DrawCurve(const Pen *pen, const Point *points, INT count)
206  {
208  }
209 
210  Status
211  DrawCurve(const Pen *pen, const PointF *points, INT count)
212  {
214  }
215 
216  Status
217  DrawCurve(const Pen *pen, const PointF *points, INT count, REAL tension)
218  {
219  return SetStatus(DllExports::GdipDrawCurve2(nativeGraphics, pen ? getNat(pen) : NULL, points, count, tension));
220  }
221 
222  Status
223  DrawCurve(const Pen *pen, const Point *points, INT count, INT offset, INT numberOfSegments, REAL tension)
224  {
226  nativeGraphics, pen ? getNat(pen) : NULL, points, count, offset, numberOfSegments, tension));
227  }
228 
229  Status
230  DrawCurve(const Pen *pen, const PointF *points, INT count, INT offset, INT numberOfSegments, REAL tension)
231  {
233  nativeGraphics, pen ? getNat(pen) : NULL, points, count, offset, numberOfSegments, tension));
234  }
235 
236  Status
237  DrawCurve(const Pen *pen, const Point *points, INT count, REAL tension)
238  {
239  return SetStatus(DllExports::GdipDrawCurve2I(nativeGraphics, pen ? getNat(pen) : NULL, points, count, tension));
240  }
241 
242  Status
244  const UINT16 *text,
245  INT length,
246  const Font *font,
247  const Brush *brush,
248  const PointF *positions,
249  INT flags,
250  const Matrix *matrix)
251  {
253  nativeGraphics, text, length, font ? getNat(font) : NULL, brush ? getNat(brush) : NULL, positions, flags,
254  matrix ? getNat(matrix) : NULL));
255  }
256 
257  Status
258  DrawEllipse(const Pen *pen, const Rect &rect)
259  {
261  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
262  }
263 
264  Status
266  {
268  }
269 
270  Status
271  DrawEllipse(const Pen *pen, const RectF &rect)
272  {
274  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
275  }
276 
277  Status
279  {
281  }
282 
283  Status
284  DrawImage(Image *image, const Point *destPoints, INT count)
285  {
286  if (count != 3 && count != 4)
287  return SetStatus(InvalidParameter);
288 
289  return SetStatus(
291  }
292 
293  Status
295  {
297  }
298 
299  Status
301  {
302  return DrawImage(image, point.X, point.Y);
303  }
304 
305  Status
307  {
309  }
310 
311  Status
313  {
314  return DrawImage(image, point.X, point.Y);
315  }
316 
317  Status
318  DrawImage(Image *image, const PointF *destPoints, INT count)
319  {
320  if (count != 3 && count != 4)
321  return SetStatus(InvalidParameter);
322 
323  return SetStatus(
325  }
326 
327  Status
328  DrawImage(Image *image, REAL x, REAL y, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit)
329  {
331  nativeGraphics, image ? getNat(image) : NULL, x, y, srcx, srcy, srcwidth, srcheight, srcUnit));
332  }
333 
334  Status
336  {
337  return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height);
338  }
339 
340  Status
342  {
343  return SetStatus(
345  }
346 
347  Status
349  Image *image,
350  const PointF *destPoints,
351  INT count,
352  REAL srcx,
353  REAL srcy,
354  REAL srcwidth,
355  REAL srcheight,
356  Unit srcUnit,
357  ImageAttributes *imageAttributes,
359  VOID *callbackData)
360  {
362  nativeGraphics, image ? getNat(image) : NULL, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit,
363  imageAttributes ? getNat(imageAttributes) : NULL, callback, callbackData));
364  }
365 
366  Status
368  Image *image,
369  const Rect &destRect,
370  INT srcx,
371  INT srcy,
372  INT srcwidth,
373  INT srcheight,
374  Unit srcUnit,
375  const ImageAttributes *imageAttributes = NULL,
377  VOID *callbackData = NULL)
378  {
380  nativeGraphics, image ? getNat(image) : NULL, destRect.X, destRect.Y, destRect.Width, destRect.Height, srcx,
381  srcy, srcwidth, srcheight, srcUnit, imageAttributes ? getNat(imageAttributes) : NULL, callback,
382  callbackData));
383  }
384 
385  Status
387  Image *image,
388  const Point *destPoints,
389  INT count,
390  INT srcx,
391  INT srcy,
392  INT srcwidth,
393  INT srcheight,
394  Unit srcUnit,
395  ImageAttributes *imageAttributes = NULL,
397  VOID *callbackData = NULL)
398  {
400  nativeGraphics, image ? getNat(image) : NULL, destPoints, count, srcx, srcy, srcwidth, srcheight, srcUnit,
401  imageAttributes ? getNat(imageAttributes) : NULL, callback, callbackData));
402  }
403 
404  Status
406  {
407  return SetStatus(
409  }
410 
411  Status
413  {
414  return DrawImage(image, rect.X, rect.Y, rect.Width, rect.Height);
415  }
416 
417  Status
418  DrawImage(Image *image, INT x, INT y, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit)
419  {
421  nativeGraphics, image ? getNat(image) : NULL, x, y, srcx, srcy, srcwidth, srcheight, srcUnit));
422  }
423 
424  Status
426  Image *image,
427  const RectF &destRect,
428  REAL srcx,
429  REAL srcy,
430  REAL srcwidth,
431  REAL srcheight,
432  Unit srcUnit,
433  ImageAttributes *imageAttributes = NULL,
435  VOID *callbackData = NULL)
436  {
438  nativeGraphics, image ? getNat(image) : NULL, destRect.X, destRect.Y, destRect.Width, destRect.Height, srcx,
439  srcy, srcwidth, srcheight, srcUnit, imageAttributes ? getNat(imageAttributes) : NULL, callback,
440  callbackData));
441  }
442 
443  Status
444  DrawLine(const Pen *pen, const Point &pt1, const Point &pt2)
445  {
446  return SetStatus(
447  DllExports::GdipDrawLineI(nativeGraphics, pen ? getNat(pen) : NULL, pt1.X, pt1.Y, pt2.X, pt2.Y));
448  }
449 
450  Status
451  DrawLine(const Pen *pen, const PointF &pt1, const Point &pt2)
452  {
453  return SetStatus(
454  DllExports::GdipDrawLine(nativeGraphics, pen ? getNat(pen) : NULL, pt1.X, pt1.Y, pt2.X, pt2.Y));
455  }
456 
457  Status
458  DrawLine(const Pen *pen, REAL x1, REAL y1, REAL x2, REAL y2)
459  {
461  }
462 
463  Status
464  DrawLine(const Pen *pen, INT x1, INT y1, INT x2, INT y2)
465  {
467  }
468 
469  Status
470  DrawLines(const Pen *pen, const Point *points, INT count)
471  {
473  }
474 
475  Status
476  DrawLines(const Pen *pen, const PointF *points, INT count)
477  {
479  }
480 
481  Status
482  DrawPath(const Pen *pen, const GraphicsPath *path)
483  {
484  return SetStatus(
486  }
487 
488  Status
489  DrawPie(const Pen *pen, const Rect &rect, REAL startAngle, REAL sweepAngle)
490  {
492  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle));
493  }
494 
495  Status
496  DrawPie(const Pen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
497  {
499  nativeGraphics, pen ? getNat(pen) : NULL, x, y, width, height, startAngle, sweepAngle));
500  }
501 
502  Status
503  DrawPie(const Pen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
504  {
506  nativeGraphics, pen ? getNat(pen) : NULL, x, y, width, height, startAngle, sweepAngle));
507  }
508 
509  Status
510  DrawPie(const Pen *pen, const RectF &rect, REAL startAngle, REAL sweepAngle)
511  {
513  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height, startAngle, sweepAngle));
514  }
515 
516  Status
517  DrawPolygon(const Pen *pen, const Point *points, INT count)
518  {
520  }
521 
522  Status
523  DrawPolygon(const Pen *pen, const PointF *points, INT count)
524  {
526  }
527 
528  Status
529  DrawRectangle(const Pen *pen, const Rect &rect)
530  {
532  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
533  }
534 
535  Status
537  {
539  }
540 
541  Status
543  {
545  }
546 
547  Status
548  DrawRectangle(const Pen *pen, const RectF &rect)
549  {
551  nativeGraphics, pen ? getNat(pen) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
552  }
553 
554  Status
555  DrawRectangles(const Pen *pen, const Rect *rects, INT count)
556  {
558  }
559 
560  Status
561  DrawRectangles(const Pen *pen, const RectF *rects, INT count)
562  {
564  }
565 
566  Status
568  const WCHAR *string,
569  INT length,
570  const Font *font,
571  const RectF &layoutRect,
572  const StringFormat *stringFormat,
573  const Brush *brush)
574  {
576  nativeGraphics, string, length, font ? getNat(font) : NULL, &layoutRect,
577  stringFormat ? getNat(stringFormat) : NULL, brush ? brush->nativeBrush : NULL));
578  }
579 
580  Status
581  DrawString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const Brush *brush)
582  {
583  RectF rect(origin.X, origin.Y, 0.0f, 0.0f);
585  nativeGraphics, string, length, font ? getNat(font) : NULL, &rect, NULL, brush ? getNat(brush) : NULL));
586  }
587 
588  Status
590  const WCHAR *string,
591  INT length,
592  const Font *font,
593  const PointF &origin,
594  const StringFormat *stringFormat,
595  const Brush *brush)
596  {
597  RectF rect(origin.X, origin.Y, 0.0f, 0.0f);
599  nativeGraphics, string, length, font ? getNat(font) : NULL, &rect,
600  stringFormat ? getNat(stringFormat) : NULL, brush ? getNat(brush) : NULL));
601  }
602 
603  Status
605  {
607  }
608 
609  Status
611  const Metafile *metafile,
612  const PointF &destPoint,
614  VOID *callbackData = NULL,
615  const ImageAttributes *imageAttributes = NULL)
616  {
617  return SetStatus(NotImplemented);
618  }
619 
620  Status
622  const Metafile *metafile,
623  const Point *destPoints,
624  INT count,
626  VOID *callbackData = NULL,
627  const ImageAttributes *imageAttributes = NULL)
628  {
629  return SetStatus(NotImplemented);
630  }
631 
632  Status
634  const Metafile *metafile,
635  const Point &destPoint,
636  const Rect &srcRect,
637  Unit srcUnit,
639  VOID *callbackData = NULL,
640  const ImageAttributes *imageAttributes = NULL)
641  {
642  return SetStatus(NotImplemented);
643  }
644 
645  Status
647  const Metafile *metafile,
648  const PointF *destPoints,
649  INT count,
651  VOID *callbackData = NULL,
652  const ImageAttributes *imageAttributes = NULL)
653  {
654  return SetStatus(NotImplemented);
655  }
656 
657  Status
659  const Metafile *metafile,
660  const Rect &destRect,
662  VOID *callbackData = NULL,
663  const ImageAttributes *imageAttributes = NULL)
664  {
665  return SetStatus(NotImplemented);
666  }
667 
668  Status
670  const Metafile *metafile,
671  const RectF &destRect,
672  const RectF &srcRect,
673  Unit srcUnit,
675  VOID *callbackData = NULL,
676  const ImageAttributes *imageAttributes = NULL)
677  {
678  return SetStatus(NotImplemented);
679  }
680 
681  Status
683  const Metafile *metafile,
684  const RectF &destRect,
686  VOID *callbackData = NULL,
687  const ImageAttributes *imageAttributes = NULL)
688  {
689  return SetStatus(NotImplemented);
690  }
691 
692  Status
694  const Metafile *metafile,
695  const PointF &destPoint,
696  const RectF &srcRect,
697  Unit srcUnit,
699  VOID *callbackData = NULL,
700  const ImageAttributes *imageAttributes = NULL)
701  {
702  return SetStatus(NotImplemented);
703  }
704 
705  Status
707  const Metafile *metafile,
708  const Point *destPoints,
709  INT count,
710  const Rect &srcRect,
711  Unit srcUnit,
713  VOID *callbackData = NULL,
714  const ImageAttributes *imageAttributes = NULL)
715  {
716  return SetStatus(NotImplemented);
717  }
718 
719  Status
721  const Metafile *metafile,
722  const Rect &destRect,
723  const Rect &srcRect,
724  Unit srcUnit,
726  VOID *callbackData = NULL,
727  const ImageAttributes *imageAttributes = NULL)
728  {
729  return SetStatus(NotImplemented);
730  }
731 
732  Status
734  const Metafile *metafile,
735  const PointF *destPoints,
736  INT count,
737  const RectF &srcRect,
738  Unit srcUnit,
740  VOID *callbackData = NULL,
741  const ImageAttributes *imageAttributes = NULL)
742  {
743  return SetStatus(NotImplemented);
744  }
745 
746  Status
748  const Metafile *metafile,
749  const Point &destPoint,
751  VOID *callbackData = NULL,
752  const ImageAttributes *imageAttributes = NULL)
753  {
754  return SetStatus(NotImplemented);
755  }
756 
757  Status
759  {
760  return SetStatus(
762  }
763 
764  Status
766  {
767  return SetStatus(
769  }
770 
771  Status
772  ExcludeClip(const Region *region)
773  {
775  }
776 
777  Status
778  FillClosedCurve(const Brush *brush, const Point *points, INT count)
779  {
781  }
782 
783  Status
784  FillClosedCurve(const Brush *brush, const Point *points, INT count, FillMode fillMode, REAL tension)
785  {
787  nativeGraphics, brush ? getNat(brush) : NULL, points, count, tension, fillMode));
788  }
789 
790  Status
791  FillClosedCurve(const Brush *brush, const PointF *points, INT count)
792  {
794  }
795 
796  Status
797  FillClosedCurve(const Brush *brush, const PointF *points, INT count, FillMode fillMode, REAL tension)
798  {
800  nativeGraphics, brush ? getNat(brush) : NULL, points, count, tension, fillMode));
801  }
802 
803  Status
804  FillEllipse(const Brush *brush, const Rect &rect)
805  {
807  nativeGraphics, brush ? getNat(brush) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
808  }
809 
810  Status
812  {
813  return SetStatus(
815  }
816 
817  Status
818  FillEllipse(const Brush *brush, const RectF &rect)
819  {
821  nativeGraphics, brush ? getNat(brush) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
822  }
823 
824  Status
825  FillEllipse(const Brush *brush, INT x, INT y, INT width, INT height)
826  {
827  return SetStatus(
829  }
830 
831  Status
832  FillPath(const Brush *brush, const GraphicsPath *path)
833  {
835  }
836 
837  Status
838  FillPie(const Brush *brush, const Rect &rect, REAL startAngle, REAL sweepAngle)
839  {
841  nativeGraphics, brush ? getNat(brush) : NULL, rect.X, rect.Y, rect.Width, rect.Height, startAngle,
842  sweepAngle));
843  }
844 
845  Status
846  FillPie(const Brush *brush, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
847  {
849  nativeGraphics, brush ? getNat(brush) : NULL, x, y, width, height, startAngle, sweepAngle));
850  }
851 
852  Status
853  FillPie(const Brush *brush, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
854  {
856  nativeGraphics, brush ? getNat(brush) : NULL, x, y, width, height, startAngle, sweepAngle));
857  }
858 
859  Status
860  FillPie(const Brush *brush, RectF &rect, REAL startAngle, REAL sweepAngle)
861  {
863  nativeGraphics, brush ? getNat(brush) : NULL, rect.X, rect.Y, rect.Width, rect.Height, startAngle,
864  sweepAngle));
865  }
866 
867  Status
868  FillPolygon(const Brush *brush, const Point *points, INT count)
869  {
871  }
872 
873  Status
874  FillPolygon(const Brush *brush, const PointF *points, INT count)
875  {
877  }
878 
879  Status
881  {
882  return SetStatus(
884  }
885 
886  Status
888  {
889  return SetStatus(
891  }
892 
893  Status
894  FillRectangle(const Brush *brush, const Rect &rect)
895  {
897  nativeGraphics, brush ? getNat(brush) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
898  }
899 
900  Status
901  FillRectangle(const Brush *brush, const RectF &rect)
902  {
904  nativeGraphics, brush ? getNat(brush) : NULL, rect.X, rect.Y, rect.Width, rect.Height));
905  }
906 
907  Status
909  {
910  return SetStatus(
912  }
913 
914  Status
916  {
917  return SetStatus(
919  }
920 
921  Status
922  FillRectangles(const Brush *brush, const Rect *rects, INT count)
923  {
924  return SetStatus(DllExports::GdipFillRectanglesI(nativeGraphics, brush ? getNat(brush) : NULL, rects, count));
925  }
926 
927  Status
928  FillRectangles(const Brush *brush, const RectF *rects, INT count)
929  {
930  return SetStatus(DllExports::GdipFillRectangles(nativeGraphics, brush ? getNat(brush) : NULL, rects, count));
931  }
932 
933  Status
934  FillRegion(const Brush *brush, const Region *region)
935  {
937  }
938 
939  VOID
941  {
943  }
944 
945  static Graphics *
947  {
948  return new Graphics(hdc);
949  }
950 
951  static Graphics *
952  FromHDC(HDC hdc, HANDLE hDevice)
953  {
954  return new Graphics(hdc, hDevice);
955  }
956 
957  static Graphics *
959  {
960  return new Graphics(hWnd, icm);
961  }
962 
963  static Graphics *
965  {
966  return new Graphics(image);
967  }
968 
969  Status
970  GetClip(Region *region) const
971  {
973  }
974 
975  Status
977  {
979  }
980 
981  Status
983  {
985  }
986 
989  {
990  CompositingMode compositingMode;
992  return compositingMode;
993  }
994 
997  {
998  CompositingQuality compositingQuality;
1000  return compositingQuality;
1001  }
1002 
1003  REAL
1004  GetDpiX() const
1005  {
1006  REAL dpi;
1008  return dpi;
1009  }
1010 
1011  REAL
1012  GetDpiY() const
1013  {
1014  REAL dpi;
1016  return dpi;
1017  }
1018 
1019  static HPALETTE
1021  {
1022  return NULL;
1023  }
1024 
1025  HDC
1027  {
1028  HDC hdc = NULL;
1030  return hdc;
1031  }
1032 
1035  {
1036  InterpolationMode interpolationMode;
1038  return interpolationMode;
1039  }
1040 
1041  Status
1043  {
1044  return lastStatus;
1045  }
1046 
1047  Status
1049  {
1050  if (color == NULL)
1051  return SetStatus(InvalidParameter);
1052 
1053  ARGB argb = color->GetValue();
1055 
1056  color->SetValue(argb);
1057  return lastStatus;
1058  }
1059 
1060  REAL
1062  {
1063  REAL scale;
1065  return scale;
1066  }
1067 
1068  Unit
1069  GetPageUnit() const
1070  {
1071  Unit unit;
1073  return unit;
1074  }
1075 
1078  {
1079  PixelOffsetMode pixelOffsetMode;
1081  return pixelOffsetMode;
1082  }
1083 
1084  Status
1086  {
1088  }
1089 
1092  {
1093  SmoothingMode smoothingMode;
1095  return smoothingMode;
1096  }
1097 
1098  UINT
1100  {
1101  UINT contrast;
1103  return contrast;
1104  }
1105 
1108  {
1111  return mode;
1112  }
1113 
1114  UINT
1116  {
1117 #if 1
1118  return SetStatus(NotImplemented); // FIXME
1119 #else
1120  UINT gammaValue;
1121  SetStatus(DllExports::GdipGetTextGammaValue(nativeGraphics, &gammaValue));
1122  return gammaValue;
1123 #endif
1124  }
1125 
1126  Status
1128  {
1130  }
1131 
1132  Status
1134  {
1136  }
1137 
1138  Status
1140  {
1142  }
1143 
1144  Status
1146  {
1148  nativeGraphics, rect.X, rect.Y, rect.Width, rect.Height, CombineModeIntersect));
1149  }
1150 
1151  Status
1152  IntersectClip(const Region *region)
1153  {
1155  }
1156 
1157  Status
1159  {
1160  return SetStatus(
1162  }
1163 
1164  BOOL
1165  IsClipEmpty() const
1166  {
1167  BOOL result;
1169  return result;
1170  }
1171 
1172  BOOL
1173  IsVisible(const Point &point) const
1174  {
1175  BOOL result;
1177  return result;
1178  }
1179 
1180  BOOL
1181  IsVisible(const Rect &rect) const
1182  {
1183  BOOL result;
1185  return result;
1186  }
1187 
1188  BOOL
1190  {
1191  BOOL result;
1193  return result;
1194  }
1195 
1196  BOOL
1197  IsVisible(const RectF &rect) const
1198  {
1199  BOOL result;
1201  return result;
1202  }
1203 
1204  BOOL
1206  {
1207  BOOL result;
1209  return result;
1210  }
1211 
1212  BOOL
1213  IsVisible(INT x, INT y) const
1214  {
1215  BOOL result;
1217  return result;
1218  }
1219 
1220  BOOL
1221  IsVisible(const PointF &point) const
1222  {
1223  BOOL result;
1225  return result;
1226  }
1227 
1228  BOOL
1230  {
1231  BOOL result;
1233  return result;
1234  }
1235 
1236  BOOL
1238  {
1239  BOOL flag = FALSE;
1241  return flag;
1242  }
1243 
1244  Status
1246  const WCHAR *string,
1247  INT length,
1248  const Font *font,
1249  const RectF &layoutRect,
1250  const StringFormat *stringFormat,
1251  INT regionCount,
1252  Region *regions) const
1253  {
1254  return NotImplemented;
1255  }
1256 
1257  Status
1259  const UINT16 *text,
1260  INT length,
1261  const Font *font,
1262  const PointF *positions,
1263  INT flags,
1264  const Matrix *matrix,
1265  RectF *boundingBox) const
1266  {
1267  return NotImplemented;
1268  }
1269 
1270  Status
1271  MeasureString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, RectF *boundingBox) const
1272  {
1273  return NotImplemented;
1274  }
1275 
1276  Status
1278  const WCHAR *string,
1279  INT length,
1280  const Font *font,
1281  const PointF &origin,
1282  const StringFormat *stringFormat,
1283  RectF *boundingBox) const
1284  {
1285  return NotImplemented;
1286  }
1287 
1288  Status
1290  const WCHAR *string,
1291  INT length,
1292  const Font *font,
1293  const RectF &layoutRect,
1294  const StringFormat *stringFormat,
1295  RectF *boundingBox,
1296  INT *codepointsFitted,
1297  INT *linesFilled) const
1298  {
1299  return NotImplemented;
1300  }
1301 
1302  Status
1304  const WCHAR *string,
1305  INT length,
1306  const Font *font,
1307  const SizeF &layoutRectSize,
1308  const StringFormat *stringFormat,
1309  SizeF *size,
1310  INT *codepointsFitted,
1311  INT *linesFilled) const
1312  {
1313  return NotImplemented;
1314  }
1315 
1316  Status
1317  MeasureString(const WCHAR *string, INT length, const Font *font, const PointF &origin, RectF *boundingBox) const
1318  {
1319  return NotImplemented;
1320  }
1321 
1322  Status
1324  {
1326  }
1327 
1328  VOID
1330  {
1332  }
1333 
1334  Status
1336  {
1338  }
1339 
1340  Status
1342  {
1344  }
1345 
1346  Status
1348  {
1350  }
1351 
1352  Status
1354  {
1356  }
1357 
1360  {
1361  GraphicsState gstate;
1363  return gstate;
1364  }
1365 
1366  Status
1368  {
1370  }
1371 
1372  Status
1374  {
1376  }
1377 
1378  Status
1380  {
1382  }
1383 
1384  Status
1385  SetClip(const Region *region, CombineMode combineMode = CombineModeReplace)
1386  {
1387  return SetStatus(DllExports::GdipSetClipRegion(nativeGraphics, getNat(region), combineMode));
1388  }
1389 
1390  Status
1392  {
1393  return SetStatus(
1394  DllExports::GdipSetClipRectI(nativeGraphics, rect.X, rect.Y, rect.Width, rect.Height, combineMode));
1395  }
1396 
1397  Status
1399  {
1401  }
1402 
1403  Status
1405  {
1406  return SetStatus(
1407  DllExports::GdipSetClipRect(nativeGraphics, rect.X, rect.Y, rect.Width, rect.Height, combineMode));
1408  }
1409 
1410  Status
1412  {
1414  }
1415 
1416  Status
1418  {
1419  return SetStatus(DllExports::GdipSetCompositingQuality(nativeGraphics, compositingQuality));
1420  }
1421 
1422  Status
1424  {
1426  }
1427 
1428  Status
1430  {
1432  }
1433 
1434  Status
1436  {
1438  }
1439 
1440  Status
1442  {
1444  }
1445 
1446  Status
1448  {
1450  }
1451 
1452  Status
1454  {
1456  }
1457 
1458  Status
1460  {
1462  }
1463 
1464  Status
1466  {
1468  }
1469 
1470  Status
1472  {
1474  }
1475 
1476  Status
1478  {
1479  return SetStatus(DllExports::GdipTransformPointsI(nativeGraphics, destSpace, srcSpace, pts, count));
1480  }
1481 
1482  Status
1484  {
1485  return SetStatus(DllExports::GdipTransformPoints(nativeGraphics, destSpace, srcSpace, pts, count));
1486  }
1487 
1488  Status
1490  {
1492  }
1493 
1494  Status
1496  {
1498  }
1499 
1500  Status
1502  {
1504  }
1505 
1506  private:
1507  Status
1509  {
1510  if (status != Ok)
1511  lastStatus = status;
1512  return status;
1513  }
1514 
1515  VOID
1517  {
1518  nativeGraphics = graphics;
1519  }
1520 
1521  protected:
1524 
1525  // get native
1526  friend inline GpGraphics *&
1527  getNat(const Graphics *graphics)
1528  {
1529  return const_cast<Graphics *>(graphics)->nativeGraphics;
1530  }
1531 };
1532 
1533 #endif /* _GDIPLUSGRAPHICS_H */
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG y1
Definition: winddi.h:3706
REAL GetDpiY() const
Status DrawBezier(const Pen *pen, const PointF &pt1, const PointF &pt2, const PointF &pt3, const PointF &pt4)
GpStatus WINGDIPAPI GdipGetDpiY(GpGraphics *graphics, REAL *dpi)
Definition: graphics.c:6635
GpStatus WINGDIPAPI GdipSetPixelOffsetMode(GpGraphics *graphics, PixelOffsetMode mode)
Definition: graphics.c:6229
Status TranslateClip(INT dx, INT dy)
const DOCKBAR PVOID HWND HWND * hwnd
Definition: tooldock.h:22
GpStatus WINGDIPAPI GdipSetWorldTransform(GpGraphics *graphics, GpMatrix *matrix)
Definition: graphics.c:6358
BOOL IsClipEmpty() const
GLint GLint GLsizei width
Definition: gl.h:1546
Status TranslateClip(REAL dx, REAL dy)
GLuint GLdouble GLdouble GLint GLint order
Definition: glext.h:11194
Status GetTransform(Matrix *matrix) const
GpStatus WINGDIPAPI GdipDrawEllipse(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height)
Definition: graphics.c:2935
Status FillClosedCurve(const Brush *brush, const Point *points, INT count)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, RectF *boundingBox) const
Status GetNearestColor(Color *color) const
TextRenderingHint GetTextRenderingHint() const
Status FillClosedCurve(const Brush *brush, const Point *points, INT count, FillMode fillMode, REAL tension)
Status DrawImage(Image *image, INT x, INT y)
GpStatus WINGDIPAPI GdipResetWorldTransform(GpGraphics *graphics)
Definition: graphics.c:5840
Status DrawRectangles(const Pen *pen, const RectF *rects, INT count)
Status SetClip(const GraphicsPath *path, CombineMode combineMode=CombineModeReplace)
Status GetClipBounds(RectF *rect) const
GpStatus WINGDIPAPI GdipFillEllipse(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, REAL width, REAL height)
Definition: graphics.c:4290
GpStatus WINGDIPAPI GdipDrawImageI(GpGraphics *graphics, GpImage *image, INT x, INT y)
Definition: graphics.c:2985
Status DrawPie(const Pen *pen, const RectF &rect, REAL startAngle, REAL sweepAngle)
Status DrawBeziers(const Pen *pen, const Point *points, INT count)
GpStatus WINGDIPAPI GdipFillPath(GpGraphics *graphics, GpBrush *brush, GpPath *path)
Definition: graphics.c:4391
GpStatus WINGDIPAPI GdipScaleWorldTransform(GpGraphics *graphics, REAL sx, REAL sy, GpMatrixOrder order)
Definition: graphics.c:6051
Status DrawClosedCurve(const Pen *pen, const Point *points, INT count, REAL tension)
Status DrawEllipse(const Pen *pen, INT x, INT y, INT width, INT height)
Status DrawRectangle(const Pen *pen, INT x, INT y, INT width, INT height)
GpStatus WINGDIPAPI GdipGetDpiX(GpGraphics *graphics, REAL *dpi)
Definition: graphics.c:6621
Unit
Definition: gdiplusenums.h:25
Status ExcludeClip(const Region *region)
Status DrawBeziers(const Pen *pen, const PointF *points, INT count)
GpStatus WINGDIPAPI GdipGetVisibleClipBounds(GpGraphics *graphics, GpRectF *rect)
Definition: graphics.c:5004
GpStatus WINGDIPAPI GdipDrawImagePointsRect(GpGraphics *graphics, GpImage *image, GDIPCONST GpPointF *points, INT count, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes *imageAttributes, DrawImageAbort callback, VOID *callbackData)
Definition: graphics.c:3071
GpStatus WINGDIPAPI GdipGetInterpolationMode(GpGraphics *graphics, InterpolationMode *mode)
Definition: graphics.c:4882
GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string, INT length, GDIPCONST GpFont *font, GDIPCONST RectF *rect, GDIPCONST GpStringFormat *format, GDIPCONST GpBrush *brush)
Definition: graphics.c:5696
GpStatus WINGDIPAPI GdipDrawPolygon(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:6572
Status DrawDriverString(const UINT16 *text, INT length, const Font *font, const Brush *brush, const PointF *positions, INT flags, const Matrix *matrix)
CompositingQuality GetCompositingQuality() const
Status DrawRectangle(const Pen *pen, REAL x, REAL y, REAL width, REAL height)
GpStatus WINGDIPAPI GdipGetPixelOffsetMode(GpGraphics *graphics, PixelOffsetMode *mode)
Definition: graphics.c:4943
Status DrawCurve(const Pen *pen, const Point *points, INT count)
Status DrawArc(const Pen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
GpStatus WINGDIPAPI GdipDrawPolygonI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:6598
Status FillPie(const Brush *brush, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Definition: mk_font.cpp:20
InterpolationMode
Definition: gdiplusenums.h:140
Status MeasureString(const WCHAR *string, INT length, const Font *font, const PointF &origin, RectF *boundingBox) const
Status MeasureCharacterRanges(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, const StringFormat *stringFormat, INT regionCount, Region *regions) const
GpStatus WINGDIPAPI GdipTransformPointsI(GpGraphics *graphics, GpCoordinateSpace dst_space, GpCoordinateSpace src_space, GpPoint *points, INT count)
Definition: graphics.c:6978
GLuint GLenum matrix
Definition: glext.h:9407
INT Width
Definition: gdiplustypes.h:671
GpStatus WINGDIPAPI GdipCreateFromHWNDICM(HWND hwnd, GpGraphics **graphics)
Definition: graphics.c:2551
GpStatus WINGDIPAPI GdipDrawPath(GpGraphics *graphics, GpPen *pen, GpPath *path)
Definition: graphics.c:4066
const WCHAR * text
Definition: package.c:1827
GpStatus WINGDIPAPI GdipReleaseDC(GpGraphics *graphics, HDC hdc)
Definition: graphics.c:6758
Graphics(Image *image)
GLuint GLuint GLsizei count
Definition: gl.h:1545
CompositingMode GetCompositingMode() const
GLint dy
Definition: linetemp.h:97
Status EnumerateMetafile(const Metafile *metafile, const Rect &destRect, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
GLenum GLenum GLenum GLenum GLenum scale
Definition: glext.h:9032
GpStatus WINGDIPAPI GdipDrawRectangles(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRectF *rects, INT count)
Definition: graphics.c:4159
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG x1
Definition: winddi.h:3706
Status SetPageScale(REAL scale)
Status DrawLine(const Pen *pen, REAL x1, REAL y1, REAL x2, REAL y2)
GpStatus WINGDIPAPI GdipDrawLine(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1, REAL x2, REAL y2)
Definition: graphics.c:3569
static HDC
Definition: imagelist.c:92
GLintptr offset
Definition: glext.h:5920
HWND hWnd
Definition: settings.c:17
Status SetClip(const Region *region, CombineMode combineMode=CombineModeReplace)
Status SetTextRenderingHint(TextRenderingHint newMode)
Status FillPie(const Brush *brush, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
GpStatus WINGDIPAPI GdipIsVisiblePointI(GpGraphics *graphics, INT x, INT y, BOOL *result)
Definition: graphics.c:5152
Status DrawCurve(const Pen *pen, const PointF *points, INT count, INT offset, INT numberOfSegments, REAL tension)
Status DrawLine(const Pen *pen, const Point &pt1, const Point &pt2)
GpStatus WINGDIPAPI GdipGetSmoothingMode(GpGraphics *graphics, SmoothingMode *mode)
Definition: graphics.c:4960
GpStatus WINGDIPAPI GdipFillClosedCurve2(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count, REAL tension, GpFillMode fill)
Definition: graphics.c:4213
GpStatus WINGDIPAPI GdipSetClipRect(GpGraphics *graphics, REAL x, REAL y, REAL width, REAL height, CombineMode mode)
Definition: graphics.c:6473
static HRGN hRgn
Definition: mapping.c:33
VOID ReleaseHDC(HDC hdc)
Status DrawImage(Image *image, const RectF &destRect, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit, ImageAttributes *imageAttributes=NULL, DrawImageAbort callback=NULL, VOID *callbackData=NULL)
GpStatus WINGDIPAPI GdipDrawImagePoints(GpGraphics *graphics, GpImage *image, GDIPCONST GpPointF *dstpoints, INT count)
Definition: graphics.c:3027
Status DrawEllipse(const Pen *pen, const RectF &rect)
voidpf uLong int origin
Definition: ioapi.h:142
Status DrawRectangle(const Pen *pen, const Rect &rect)
GLint GLint GLint GLint GLint x
Definition: gl.h:1548
GpStatus WINGDIPAPI GdipDrawClosedCurve2(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count, REAL tension)
Definition: graphics.c:2760
Status EnumerateMetafile(const Metafile *metafile, const Rect &destRect, const Rect &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status FillPie(const Brush *brush, const Rect &rect, REAL startAngle, REAL sweepAngle)
Status DrawClosedCurve(const Pen *pen, const Point *points, INT count)
Status DrawCurve(const Pen *pen, const Point *points, INT count, REAL tension)
UINT GraphicsContainer
Definition: gdiplusenums.h:23
GpStatus WINGDIPAPI GdipGetImageGraphicsContext(GpImage *image, GpGraphics **graphics)
Definition: image.c:2201
Status FillRectangles(const Brush *brush, const RectF *rects, INT count)
GLfloat angle
Definition: glext.h:10853
Status ScaleTransform(REAL sx, REAL sy, MatrixOrder order=MatrixOrderPrepend)
GpStatus WINGDIPAPI GdipDrawBezier(GpGraphics *graphics, GpPen *pen, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4)
Definition: graphics.c:2654
GpStatus WINGDIPAPI GdipGetWorldTransform(GpGraphics *graphics, GpMatrix *matrix)
Definition: graphics.c:5062
GpStatus WINGDIPAPI GdipGetCompositingQuality(GpGraphics *graphics, CompositingQuality *quality)
Definition: graphics.c:4865
Status ExcludeClip(const RectF &rect)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const SizeF &layoutRectSize, const StringFormat *stringFormat, SizeF *size, INT *codepointsFitted, INT *linesFilled) const
GraphicsState Save()
Status Restore(GraphicsState gstate)
Status RotateTransform(REAL angle, MatrixOrder order=MatrixOrderPrepend)
GpStatus WINGDIPAPI GdipDrawImageRect(GpGraphics *graphics, GpImage *image, REAL x, REAL y, REAL width, REAL height)
Definition: graphics.c:3540
Status SetRenderingOrigin(INT x, INT y)
Status SetSmoothingMode(SmoothingMode smoothingMode)
Status FillPie(const Brush *brush, RectF &rect, REAL startAngle, REAL sweepAngle)
GpStatus WINGDIPAPI GdipGetClipBoundsI(GpGraphics *graphics, GpRect *rect)
Definition: graphics.c:4834
int32_t INT
Definition: typedefs.h:57
GpStatus WINGDIPAPI GdipCreateFromHDC2(HDC hdc, HANDLE hDevice, GpGraphics **graphics)
Definition: graphics.c:2416
Status IntersectClip(const Region *region)
Status DrawImage(Image *image, REAL x, REAL y)
Status EnumerateMetafile(const Metafile *metafile, const Point &destPoint, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
POINTL point
Definition: edittest.c:50
GpStatus WINGDIPAPI GdipDrawCurveI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:2822
& rect
Definition: startmenu.cpp:1413
GpStatus WINGDIPAPI GdipFillEllipseI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, INT width, INT height)
Definition: graphics.c:4319
Unit GetPageUnit() const
Status SetClip(const Graphics *g, CombineMode combineMode=CombineModeReplace)
static const unsigned char metafile[]
Definition: olepicture.c:138
GpStatus WINGDIPAPI GdipGetClip(GpGraphics *graphics, GpRegion *region)
Definition: graphics.c:6809
Status FillRectangle(const Brush *brush, const Rect &rect)
GpStatus WINGDIPAPI GdipDrawRectangleI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height)
Definition: graphics.c:4151
Status DrawImage(Image *image, const Rect &destRect, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit, const ImageAttributes *imageAttributes=NULL, DrawImageAbort callback=NULL, VOID *callbackData=NULL)
static Graphics * FromImage(Image *image)
Status DrawImage(Image *image, INT x, INT y, INT width, INT height)
GpStatus WINGDIPAPI GdipGetRenderingOrigin(GpGraphics *graphics, INT *x, INT *y)
Definition: graphics.c:6276
Status FillRectangles(const Brush *brush, const Rect *rects, INT count)
GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, INT x2, INT y2)
Definition: graphics.c:3589
FillMode
Definition: gdiplusenums.h:53
UINT GetTextGammaValue() const
GpStatus WINGDIPAPI GdipDrawCurve3I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count, INT offset, INT numberOfSegments, REAL tension)
Definition: graphics.c:2918
GpStatus WINGDIPAPI GdipIsVisibleRect(GpGraphics *graphics, REAL x, REAL y, REAL width, REAL height, BOOL *result)
Definition: graphics.c:5157
CombineMode
Definition: gdiplusenums.h:349
Status SetClip(const Rect &rect, CombineMode combineMode=CombineModeReplace)
GpStatus WINGDIPAPI GdipFillClosedCurve2I(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count, REAL tension, GpFillMode fill)
Definition: graphics.c:4242
Status DrawLines(const Pen *pen, const PointF *points, INT count)
PixelOffsetMode
Definition: gdiplusenums.h:159
BOOL IsVisible(REAL x, REAL y, REAL width, REAL height) const
Status DrawImage(Image *image, INT x, INT y, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit)
Status SetClip(const RectF &rect, CombineMode combineMode=CombineModeReplace)
Status DrawBezier(const Pen *pen, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4)
GpStatus WINGDIPAPI GdipSetPageUnit(GpGraphics *graphics, GpUnit unit)
Definition: graphics.c:6202
Status DrawCurve(const Pen *pen, const Point *points, INT count, INT offset, INT numberOfSegments, REAL tension)
GpStatus WINGDIPAPI GdipIsClipEmpty(GpGraphics *graphics, BOOL *res)
Definition: graphics.c:5109
Status EnumerateMetafile(const Metafile *metafile, const PointF &destPoint, const RectF &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
GpStatus WINGDIPAPI GdipSetSmoothingMode(GpGraphics *graphics, SmoothingMode mode)
Definition: graphics.c:6289
Status DrawPie(const Pen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
unsigned int BOOL
Definition: ntddk_ex.h:94
GLuint color
Definition: glext.h:6243
GpStatus WINGDIPAPI GdipDeleteGraphics(GpGraphics *graphics)
Definition: graphics.c:2581
GpStatus WINGDIPAPI GdipSetCompositingMode(GpGraphics *graphics, CompositingMode mode)
Definition: graphics.c:6085
Status DrawPolygon(const Pen *pen, const Point *points, INT count)
INT X
Definition: gdiplustypes.h:669
Status SetTextContrast(UINT contrast)
VOID Flush(FlushIntention intention)
Status DrawRectangles(const Pen *pen, const Rect *rects, INT count)
Graphics(HDC hdc, HANDLE hdevice)
Status SetCompositingMode(CompositingMode compositingMode)
GpStatus WINGDIPAPI GdipSetRenderingOrigin(GpGraphics *graphics, INT x, INT y)
Definition: graphics.c:6258
Status DrawString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const Brush *brush)
GpStatus WINGDIPAPI GdipFillPolygonI(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count, GpFillMode fillMode)
Definition: graphics.c:4492
GpStatus WINGDIPAPI GdipFillRectangle(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, REAL width, REAL height)
Definition: graphics.c:4537
png_const_structrp png_const_inforp int * unit
Definition: png.h:2161
smooth NULL
Definition: ftsmooth.c:416
Status FillPolygon(const Brush *brush, const Point *points, INT count, FillMode fillMode)
GpStatus WINGDIPAPI GdipDrawImagePointsRectI(GpGraphics *graphics, GpImage *image, GDIPCONST GpPoint *points, INT count, INT srcx, INT srcy, INT srcwidth, INT srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes *imageAttributes, DrawImageAbort callback, VOID *callbackData)
Definition: graphics.c:3469
Status FillClosedCurve(const Brush *brush, const PointF *points, INT count)
CompositingQuality
Definition: gdiplusenums.h:130
GpStatus WINGDIPAPI GdipGetVisibleClipBoundsI(GpGraphics *graphics, GpRect *rect)
Definition: graphics.c:5041
Status IntersectClip(const Rect &rect)
GpStatus WINGDIPAPI GdipFillPolygon2(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:4521
REAL Height
Definition: gdiplustypes.h:664
Status MeasureDriverString(const UINT16 *text, INT length, const Font *font, const PointF *positions, INT flags, const Matrix *matrix, RectF *boundingBox) const
GpStatus WINGDIPAPI GdipFillRegion(GpGraphics *graphics, GpBrush *brush, GpRegion *region)
Definition: graphics.c:4758
GpStatus WINGDIPAPI GdipMultiplyWorldTransform(GpGraphics *graphics, GDIPCONST GpMatrix *matrix, GpMatrixOrder order)
Definition: graphics.c:6649
Status SetCompositingQuality(CompositingQuality compositingQuality)
GpStatus WINGDIPAPI GdipComment(GpGraphics *graphics, UINT sizeData, GDIPCONST BYTE *data)
Definition: graphics.c:5990
MatrixOrder
Definition: gdiplusenums.h:186
GraphicsContainer BeginContainer()
Status FillRectangle(const Brush *brush, INT x, INT y, INT width, INT height)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, const StringFormat *stringFormat, RectF *boundingBox, INT *codepointsFitted, INT *linesFilled) const
GpBrush * nativeBrush
Definition: gdiplusbrush.h:64
Status SetPixelOffsetMode(PixelOffsetMode pixelOffsetMode)
Status TransformPoints(CoordinateSpace destSpace, CoordinateSpace srcSpace, Point *pts, INT count)
GpStatus WINGDIPAPI GdipFillRectangleI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, INT width, INT height)
Definition: graphics.c:4552
GpStatus WINGDIPAPI GdipTranslateClipI(GpGraphics *graphics, INT dx, INT dy)
Definition: graphics.c:7042
BOOL IsVisible(const PointF &point) const
GpStatus WINGDIPAPI GdipDrawCurve3(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count, INT offset, INT numberOfSegments, REAL tension)
Definition: graphics.c:2905
#define dpi
Definition: sysparams.c:22
GLboolean GLboolean g
Definition: glext.h:6204
Status FillPolygon(const Brush *brush, const PointF *points, INT count, FillMode fillMode)
MmuTrapHandler callback[0x30]
Definition: mmuobject.c:44
GpStatus WINGDIPAPI GdipRotateWorldTransform(GpGraphics *graphics, REAL angle, GpMatrixOrder order)
Definition: graphics.c:5862
GpStatus WINGDIPAPI GdipCreateFromHWND(HWND hwnd, GpGraphics **graphics)
Definition: graphics.c:2529
GpStatus WINGDIPAPI GdipEndContainer(GpGraphics *graphics, GraphicsContainer state)
Definition: graphics.c:6039
GLsizeiptr size
Definition: glext.h:5919
Status Clear(const Color &color)
GraphicsContainer BeginContainer(const Rect &dstrect, const Rect &srcrect, Unit unit)
GpStatus WINGDIPAPI GdipDrawCurve(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:2814
Status FillEllipse(const Brush *brush, const RectF &rect)
GpStatus WINGDIPAPI GdipFillPieI(GpGraphics *graphics, GpBrush *brush, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
Definition: graphics.c:4454
GpStatus WINGDIPAPI GdipIsVisiblePoint(GpGraphics *graphics, REAL x, REAL y, BOOL *result)
Definition: graphics.c:5119
GpStatus WINGDIPAPI GdipDrawImageRectI(GpGraphics *graphics, GpImage *image, INT x, INT y, INT width, INT height)
Definition: graphics.c:3561
Status DrawCachedBitmap(CachedBitmap *cb, INT x, INT y)
Status TranslateTransform(REAL dx, REAL dy, MatrixOrder order=MatrixOrderPrepend)
__wchar_t WCHAR
Definition: xmlstorage.h:180
GpStatus WINGDIPAPI GdipSetInterpolationMode(GpGraphics *graphics, InterpolationMode mode)
Definition: graphics.c:6143
Status EnumerateMetafile(const Metafile *metafile, const PointF *destPoints, INT count, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
GLenum GLuint GLenum GLsizei length
Definition: glext.h:5579
Status DrawImage(Image *image, const Point *destPoints, INT count)
InterpolationMode GetInterpolationMode() const
Status FillRegion(const Brush *brush, const Region *region)
REAL X
Definition: gdiplustypes.h:661
Status DrawLines(const Pen *pen, const Point *points, INT count)
Status GetRenderingOrigin(INT *x, INT *y) const
GpStatus WINGDIPAPI GdipDrawLinesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:3622
Status EnumerateMetafile(const Metafile *metafile, const PointF &destPoint, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
GpStatus WINGDIPAPI GdipGetNearestColor(GpGraphics *graphics, ARGB *argb)
Definition: graphics.c:4899
GpStatus WINGDIPAPI GdipDrawCurve2(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count, REAL tension)
Definition: graphics.c:2850
GpStatus WINGDIPAPI GdipFillPolygon2I(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:4529
Status EnumerateMetafile(const Metafile *metafile, const PointF *destPoints, INT count, const RectF &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status GetClip(Region *region) const
Status FillRectangle(const Brush *brush, const RectF &rect)
REAL GetPageScale() const
Status ResetClip()
GpStatus WINGDIPAPI GdipRestoreGraphics(GpGraphics *graphics, GraphicsState state)
Definition: graphics.c:6045
GpStatus WINGDIPAPI GdipIsVisibleRectI(GpGraphics *graphics, INT x, INT y, INT width, INT height, BOOL *result)
Definition: graphics.c:5196
GpStatus WINGDIPAPI GdipGetDC(GpGraphics *graphics, HDC *hdc)
Definition: graphics.c:6682
Status DrawRectangle(const Pen *pen, const RectF &rect)
GpStatus WINGDIPAPI GdipGetTextRenderingHint(GpGraphics *graphics, TextRenderingHint *hint)
Definition: graphics.c:4988
Status DrawBezier(const Pen *pen, REAL x1, REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4)
REAL Y
Definition: gdiplustypes.h:649
Status FillClosedCurve(const Brush *brush, const PointF *points, INT count, FillMode fillMode, REAL tension)
GpStatus WINGDIPAPI GdipSetClipHrgn(GpGraphics *graphics, HRGN hrgn, CombineMode mode)
Definition: graphics.c:6412
GpStatus WINGDIPAPI GdipIsVisibleClipEmpty(GpGraphics *graphics, BOOL *res)
Definition: graphics.c:7475
CompositingMode
Definition: gdiplusenums.h:247
GpStatus WINGDIPAPI GdipSetTextRenderingHint(GpGraphics *graphics, TextRenderingHint hint)
Definition: graphics.c:6330
Status DrawEllipse(const Pen *pen, const Rect &rect)
GpStatus WINGDIPAPI GdipFillClosedCurve(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:4274
GpStatus WINGDIPAPI GdipSetCompositingQuality(GpGraphics *graphics, CompositingQuality quality)
Definition: graphics.c:6114
GpStatus WINGDIPAPI GdipGetPageScale(GpGraphics *graphics, REAL *scale)
Definition: graphics.c:4912
GpStatus WINGDIPAPI GdipResetClip(GpGraphics *graphics)
Definition: graphics.c:5827
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
static HPALETTE GetHalftonePalette()
static const WCHAR stringFormat[]
Definition: wordpad.c:55
Graphics(HDC hdc)
Status SetClip(HRGN hRgn, CombineMode combineMode=CombineModeReplace)
GLbitfield flags
Definition: glext.h:7161
Status FillPath(const Brush *brush, const GraphicsPath *path)
Status FillRectangle(const Brush *brush, REAL x, REAL y, REAL width, REAL height)
GpStatus WINGDIPAPI GdipDrawImagePointRectI(GpGraphics *graphics, GpImage *image, INT x, INT y, INT srcx, INT srcy, INT srcwidth, INT srcheight, GpUnit srcUnit)
Definition: graphics.c:3020
Status GetLastStatus() const
Status DrawClosedCurve(const Pen *pen, const PointF *points, INT count, REAL tension)
GLsizei const GLfloat * points
Definition: glext.h:8112
friend GpGraphics *& getNat(const Graphics *graphics)
Status MeasureString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const StringFormat *stringFormat, RectF *boundingBox) const
Status GetClipBounds(Rect *rect) const
Status DrawImage(Image *image, const Point &point)
GpStatus WINGDIPAPI GdipFillPolygon(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPointF *points, INT count, GpFillMode fillMode)
Definition: graphics.c:4463
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean flag
Definition: glfuncs.h:52
HDC hdc
Definition: main.c:9
Status DrawLine(const Pen *pen, INT x1, INT y1, INT x2, INT y2)
Status SetPageUnit(Unit unit)
Status DrawImage(Image *image, REAL x, REAL y, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit)
GpStatus WINGDIPAPI GdipDrawPieI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
Definition: graphics.c:4117
SmoothingMode
Definition: gdiplusenums.h:120
static int state
Definition: maze.c:121
REAL X
Definition: gdiplustypes.h:648
TextRenderingHint
Definition: gdiplusenums.h:253
BOOL(CALLBACK * EnumerateMetafileProc)(EmfPlusRecordType, UINT, UINT, const BYTE *, VOID *)
Definition: gdiplustypes.h:60
Status DrawArc(const Pen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
GpStatus WINGDIPAPI GdipDrawImage(GpGraphics *graphics, GpImage *image, REAL x, REAL y)
Definition: graphics.c:2969
GpStatus WINGDIPAPI GdipFlush(GpGraphics *graphics, GpFlushIntention intention)
Definition: graphics.c:4786
GpStatus WINGDIPAPI GdipGetCompositingMode(GpGraphics *graphics, CompositingMode *mode)
Definition: graphics.c:4848
GpStatus WINGDIPAPI GdipDrawArcI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height, REAL startAngle, REAL sweepAngle)
Definition: graphics.c:2645
Status DrawPath(const Pen *pen, const GraphicsPath *path)
Status AddMetafileComment(const BYTE *data, UINT sizeData)
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG _In_ LONG y2
Definition: winddi.h:3706
UINT GraphicsState
Definition: gdiplusenums.h:22
GpStatus WINGDIPAPI GdipTranslateClip(GpGraphics *graphics, REAL dx, REAL dy)
Definition: graphics.c:7026
GLenum mode
Definition: glext.h:6217
GpGraphics * nativeGraphics
UINT GetTextContrast() const
unsigned char BYTE
Definition: xxhash.c:193
GLint GLint GLsizei GLsizei height
Definition: gl.h:1546
Status DrawCurve(const Pen *pen, const PointF *points, INT count)
VOID SetNativeGraphics(GpGraphics *graphics)
Status GetVisibleClipBounds(RectF *rect) const
Status GetVisibleClipBounds(Rect *rect) const
GpStatus WINGDIPAPI GdipGetPageUnit(GpGraphics *graphics, GpUnit *unit)
Definition: graphics.c:4927
Status
Definition: gdiplustypes.h:24
REAL Width
Definition: gdiplustypes.h:663
static Graphics * FromHWND(HWND hWnd, BOOL icm)
GpStatus WINGDIPAPI GdipDrawBeziers(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:2688
GpStatus WINGDIPAPI GdipDrawClosedCurveI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:2752
Status DrawImage(Image *image, const RectF &rect)
Status DrawLine(const Pen *pen, const PointF &pt1, const Point &pt2)
GpStatus WINGDIPAPI GdipDrawDriverString(GpGraphics *graphics, GDIPCONST UINT16 *text, INT length, GDIPCONST GpFont *font, GDIPCONST GpBrush *brush, GDIPCONST PointF *positions, INT flags, GDIPCONST GpMatrix *matrix)
Definition: graphics.c:7458
GpStatus WINGDIPAPI GdipDrawEllipseI(GpGraphics *graphics, GpPen *pen, INT x, INT y, INT width, INT height)
Definition: graphics.c:2960
Graphics(HWND hwnd, BOOL icm=FALSE)
Status EnumerateMetafile(const Metafile *metafile, const Point *destPoints, INT count, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
GpStatus WINGDIPAPI GdipDrawBezierI(GpGraphics *graphics, GpPen *pen, INT x1, INT y1, INT x2, INT y2, INT x3, INT y3, INT x4, INT y4)
Definition: graphics.c:2679
Status DrawArc(const Pen *pen, const Rect &rect, REAL startAngle, REAL sweepAngle)
Status DrawBezier(const Pen *pen, const Point &pt1, const Point &pt2, const Point &pt3, const Point &pt4)
GraphicsContainer BeginContainer(const RectF &dstrect, const RectF &srcrect, Unit unit)
Status DrawArc(const Pen *pen, const RectF &rect, REAL startAngle, REAL sweepAngle)
GpStatus WINGDIPAPI GdipSetClipRegion(GpGraphics *graphics, GpRegion *region, CombineMode mode)
Definition: graphics.c:6533
GpStatus WINGDIPAPI GdipDrawImagePointRect(GpGraphics *graphics, GpImage *image, REAL x, REAL y, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, GpUnit srcUnit)
Definition: graphics.c:2993
GpStatus WINGDIPAPI GdipGraphicsClear(GpGraphics *graphics, ARGB color)
Definition: graphics.c:5076
Status ResetTransform()
GpStatus WINGDIPAPI GdipSaveGraphics(GpGraphics *graphics, GraphicsState *state)
Definition: graphics.c:5911
Status TransformPoints(CoordinateSpace destSpace, CoordinateSpace srcSpace, PointF *pts, INT count)
SmoothingMode GetSmoothingMode() const
PixelOffsetMode GetPixelOffsetMode() const
BOOL IsVisible(const RectF &rect) const
Status DrawImage(Image *image, const Rect &rect)
unsigned short UINT16
ImageAbort DrawImageAbort
Definition: gdiplustypes.h:56
BOOL IsVisibleClipEmpty() const
static Graphics * FromHDC(HDC hdc)
GpStatus WINGDIPAPI GdipCreateFromHDC(HDC hdc, GpGraphics **graphics)
Definition: graphics.c:2395
unsigned int UINT
Definition: ndis.h:50
GpStatus WINGDIPAPI GdipDrawArc(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Definition: graphics.c:2619
GpStatus WINGDIPAPI GdipSetClipPath(GpGraphics *graphics, GpPath *path, CombineMode mode)
Definition: graphics.c:6444
GpStatus WINGDIPAPI GdipFillRectangles(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpRectF *rects, INT count)
Definition: graphics.c:4567
Status DrawImage(Image *image, const PointF *destPoints, INT count, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, Unit srcUnit, ImageAttributes *imageAttributes, DrawImageAbort callback, VOID *callbackData)
Status MultiplyTransform(Matrix *matrix, MatrixOrder order)
Status DrawCurve(const Pen *pen, const PointF *points, INT count, REAL tension)
FlushIntention
Definition: gdiplusenums.h:359
GLint GLint GLint GLint GLint GLint y
Definition: gl.h:1548
GLint dx
Definition: linetemp.h:97
INT Height
Definition: gdiplustypes.h:672
Status DrawImage(Image *image, const PointF &point)
_In_ CLIPOBJ _In_ BRUSHOBJ _In_ LONG _In_ LONG _In_ LONG x2
Definition: winddi.h:3706
GpStatus WINGDIPAPI GdipSetClipGraphics(GpGraphics *graphics, GpGraphics *srcgraphics, CombineMode mode)
Definition: graphics.c:6074
Status EnumerateMetafile(const Metafile *metafile, const Point *destPoints, INT count, const Rect &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status lastStatus
BOOL IsVisible(const Rect &rect) const
GpStatus WINGDIPAPI GdipDrawPie(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Definition: graphics.c:4091
Status FillPolygon(const Brush *brush, const Point *points, INT count)
GpStatus WINGDIPAPI GdipDrawBeziersI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:2713
static HMODULE MODULEINFO DWORD cb
Definition: module.c:32
Status EndContainer(GraphicsContainer state)
Status EnumerateMetafile(const Metafile *metafile, const Point &destPoint, const Rect &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
GpStatus WINGDIPAPI GdipFillRectanglesI(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpRect *rects, INT count)
Definition: graphics.c:4596
Status FillEllipse(const Brush *brush, const Rect &rect)
GpStatus WINGDIPAPI GdipDrawCurve2I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count, REAL tension)
Definition: graphics.c:2878
Status DrawImage(Image *image, const PointF *destPoints, INT count)
BOOL IsVisible(INT x, INT y, INT width, INT height) const
GpStatus WINGDIPAPI GdipGetTextContrast(GpGraphics *graphics, UINT *contrast)
Definition: graphics.c:4975
Status DrawPie(const Pen *pen, const Rect &rect, REAL startAngle, REAL sweepAngle)
BOOL IsVisible(const Point &point) const
Status ExcludeClip(const Rect &rect)
Status SetTransform(const Matrix *matrix)
BOOL IsVisible(REAL x, REAL y) const
Status DrawString(const WCHAR *string, INT length, const Font *font, const RectF &layoutRect, const StringFormat *stringFormat, const Brush *brush)
REAL GetDpiX() const
CoordinateSpace
Definition: gdiplusenums.h:365
static Graphics * FromHDC(HDC hdc, HANDLE hDevice)
GpStatus WINGDIPAPI GdipGetClipBounds(GpGraphics *graphics, GpRectF *rect)
Definition: graphics.c:4807
GpStatus WINGDIPAPI GdipDrawImageRectRectI(GpGraphics *graphics, GpImage *image, INT dstx, INT dsty, INT dstwidth, INT dstheight, INT srcx, INT srcy, INT srcwidth, INT srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes *imageAttributes, DrawImageAbort callback, VOID *callbackData)
Definition: graphics.c:3517
INT Y
Definition: gdiplustypes.h:670
GpStatus WINGDIPAPI GdipSetClipRectI(GpGraphics *graphics, INT x, INT y, INT width, INT height, CombineMode mode)
Definition: graphics.c:6518
GpStatus WINGDIPAPI GdipDrawImagePointsI(GpGraphics *graphics, GpImage *image, GDIPCONST GpPoint *dstpoints, INT count)
Definition: graphics.c:3044
Status FillEllipse(const Brush *brush, INT x, INT y, INT width, INT height)
GpStatus WINGDIPAPI GdipSetPageScale(GpGraphics *graphics, REAL scale)
Definition: graphics.c:6178
GpStatus WINGDIPAPI GdipDrawLines(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:3597
GpStatus WINGDIPAPI GdipTranslateWorldTransform(GpGraphics *graphics, REAL dx, REAL dy, GpMatrixOrder order)
Definition: graphics.c:6386
float REAL
Definition: types.h:41
GpStatus WINGDIPAPI GdipDrawCachedBitmap(GpGraphics *graphics, GpCachedBitmap *cachedbmp, INT x, INT y)
Definition: image.c:2020
BOOL IsVisible(INT x, INT y) const
Status DrawImage(Image *image, REAL x, REAL y, REAL width, REAL height)
Status FillPolygon(const Brush *brush, const PointF *points, INT count)
GpStatus WINGDIPAPI GdipDrawClosedCurve2I(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPoint *points, INT count, REAL tension)
Definition: graphics.c:2786
GpStatus WINGDIPAPI GdipSetTextContrast(GpGraphics *graphics, UINT contrast)
Definition: graphics.c:6318
REAL Y
Definition: gdiplustypes.h:662
Definition: gdipluspen.h:22
GLuint64EXT * result
Definition: glext.h:11304
Status DrawImage(Image *image, const Point *destPoints, INT count, INT srcx, INT srcy, INT srcwidth, INT srcheight, Unit srcUnit, ImageAttributes *imageAttributes=NULL, DrawImageAbort callback=NULL, VOID *callbackData=NULL)
static SERVICE_STATUS status
Definition: service.c:31
Status DrawString(const WCHAR *string, INT length, const Font *font, const PointF &origin, const StringFormat *stringFormat, const Brush *brush)
GpStatus WINGDIPAPI GdipFillPie(GpGraphics *graphics, GpBrush *brush, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
Definition: graphics.c:4424
Status EnumerateMetafile(const Metafile *metafile, const RectF &destRect, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status FillEllipse(const Brush *brush, REAL x, REAL y, REAL width, REAL height)
Status SetStatus(Status status) const
GpStatus WINGDIPAPI GdipTransformPoints(GpGraphics *graphics, GpCoordinateSpace dst_space, GpCoordinateSpace src_space, GpPointF *points, INT count)
Definition: graphics.c:6960
Status DrawPolygon(const Pen *pen, const PointF *points, INT count)
Status DrawEllipse(const Pen *pen, REAL x, REAL y, REAL width, REAL height)
GpStatus WINGDIPAPI GdipDrawRectangle(GpGraphics *graphics, GpPen *pen, REAL x, REAL y, REAL width, REAL height)
Definition: graphics.c:4126
Status DrawClosedCurve(const Pen *pen, const PointF *points, INT count)
GpStatus WINGDIPAPI GdipDrawRectanglesI(GpGraphics *graphics, GpPen *pen, GDIPCONST GpRect *rects, INT count)
Definition: graphics.c:4184
GpStatus WINGDIPAPI GdipDrawImageRectRect(GpGraphics *graphics, GpImage *image, REAL dstx, REAL dsty, REAL dstwidth, REAL dstheight, REAL srcx, REAL srcy, REAL srcwidth, REAL srcheight, GpUnit srcUnit, GDIPCONST GpImageAttributes *imageattr, DrawImageAbort callback, VOID *callbackData)
Definition: graphics.c:3494
GLenum fillMode
Definition: glext.h:11728
Status EnumerateMetafile(const Metafile *metafile, const RectF &destRect, const RectF &srcRect, Unit srcUnit, EnumerateMetafileProc callback, VOID *callbackData=NULL, const ImageAttributes *imageAttributes=NULL)
Status IntersectClip(const RectF &rect)
Status DrawPie(const Pen *pen, REAL x, REAL y, REAL width, REAL height, REAL startAngle, REAL sweepAngle)
GpStatus WINGDIPAPI GdipDrawClosedCurve(GpGraphics *graphics, GpPen *pen, GDIPCONST GpPointF *points, INT count)
Definition: graphics.c:2744
GpStatus WINGDIPAPI GdipFillClosedCurveI(GpGraphics *graphics, GpBrush *brush, GDIPCONST GpPoint *points, INT count)
Definition: graphics.c:4282
Definition: ps.c:97
Status SetInterpolationMode(InterpolationMode interpolationMode)
DWORD ARGB