gdiplus: Implemented GdipFillEllipse/GdipFillEllipseI.
This commit is contained in:
parent
79b49a8f19
commit
fc2dc8bc2a
|
@ -217,8 +217,8 @@
|
||||||
@ stub GdipFillClosedCurve2I
|
@ stub GdipFillClosedCurve2I
|
||||||
@ stub GdipFillClosedCurve
|
@ stub GdipFillClosedCurve
|
||||||
@ stub GdipFillClosedCurveI
|
@ stub GdipFillClosedCurveI
|
||||||
@ stub GdipFillEllipse
|
@ stdcall GdipFillEllipse(ptr ptr long long long long)
|
||||||
@ stub GdipFillEllipseI
|
@ stdcall GdipFillEllipseI(ptr ptr long long long long)
|
||||||
@ stdcall GdipFillPath(ptr ptr ptr)
|
@ stdcall GdipFillPath(ptr ptr ptr)
|
||||||
@ stdcall GdipFillPie(ptr ptr long long long long long long)
|
@ stdcall GdipFillPie(ptr ptr long long long long long long)
|
||||||
@ stdcall GdipFillPieI(ptr ptr long long long long long long)
|
@ stdcall GdipFillPieI(ptr ptr long long long long long long)
|
||||||
|
|
|
@ -1682,6 +1682,41 @@ GpStatus WINGDIPAPI GdipDrawString(GpGraphics *graphics, GDIPCONST WCHAR *string
|
||||||
return Ok;
|
return Ok;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipFillEllipse(GpGraphics *graphics, GpBrush *brush, REAL x,
|
||||||
|
REAL y, REAL width, REAL height)
|
||||||
|
{
|
||||||
|
INT save_state;
|
||||||
|
GpPointF ptf[2];
|
||||||
|
POINT pti[2];
|
||||||
|
|
||||||
|
if(!graphics || !brush)
|
||||||
|
return InvalidParameter;
|
||||||
|
|
||||||
|
ptf[0].X = x;
|
||||||
|
ptf[0].Y = y;
|
||||||
|
ptf[1].X = x + width;
|
||||||
|
ptf[1].Y = y + height;
|
||||||
|
|
||||||
|
save_state = SaveDC(graphics->hdc);
|
||||||
|
EndPath(graphics->hdc);
|
||||||
|
SelectObject(graphics->hdc, brush->gdibrush);
|
||||||
|
SelectObject(graphics->hdc, GetStockObject(NULL_PEN));
|
||||||
|
|
||||||
|
transform_and_round_points(graphics, pti, ptf, 2);
|
||||||
|
|
||||||
|
Ellipse(graphics->hdc, pti[0].x, pti[0].y, pti[1].x, pti[1].y);
|
||||||
|
|
||||||
|
RestoreDC(graphics->hdc, save_state);
|
||||||
|
|
||||||
|
return Ok;
|
||||||
|
}
|
||||||
|
|
||||||
|
GpStatus WINGDIPAPI GdipFillEllipseI(GpGraphics *graphics, GpBrush *brush, INT x,
|
||||||
|
INT y, INT width, INT height)
|
||||||
|
{
|
||||||
|
return GdipFillEllipse(graphics,brush,(REAL)x,(REAL)y,(REAL)width,(REAL)height);
|
||||||
|
}
|
||||||
|
|
||||||
GpStatus WINGDIPAPI GdipFillPath(GpGraphics *graphics, GpBrush *brush, GpPath *path)
|
GpStatus WINGDIPAPI GdipFillPath(GpGraphics *graphics, GpBrush *brush, GpPath *path)
|
||||||
{
|
{
|
||||||
INT save_state;
|
INT save_state;
|
||||||
|
|
|
@ -106,6 +106,8 @@ GpStatus WINGDIPAPI GdipDrawRectanglesI(GpGraphics*,GpPen*,GDIPCONST GpRect*,INT
|
||||||
GpStatus WINGDIPAPI GdipDrawString(GpGraphics*,GDIPCONST WCHAR*,INT,
|
GpStatus WINGDIPAPI GdipDrawString(GpGraphics*,GDIPCONST WCHAR*,INT,
|
||||||
GDIPCONST GpFont*,GDIPCONST RectF*, GDIPCONST GpStringFormat*,
|
GDIPCONST GpFont*,GDIPCONST RectF*, GDIPCONST GpStringFormat*,
|
||||||
GDIPCONST GpBrush*);
|
GDIPCONST GpBrush*);
|
||||||
|
GpStatus WINGDIPAPI GdipFillEllipse(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL);
|
||||||
|
GpStatus WINGDIPAPI GdipFillEllipseI(GpGraphics*,GpBrush*,INT,INT,INT,INT);
|
||||||
GpStatus WINGDIPAPI GdipFillPath(GpGraphics*,GpBrush*,GpPath*);
|
GpStatus WINGDIPAPI GdipFillPath(GpGraphics*,GpBrush*,GpPath*);
|
||||||
GpStatus WINGDIPAPI GdipFillPie(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL,REAL,REAL);
|
GpStatus WINGDIPAPI GdipFillPie(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL,REAL,REAL);
|
||||||
GpStatus WINGDIPAPI GdipFillPieI(GpGraphics*,GpBrush*,INT,INT,INT,INT,REAL,REAL);
|
GpStatus WINGDIPAPI GdipFillPieI(GpGraphics*,GpBrush*,INT,INT,INT,INT,REAL,REAL);
|
||||||
|
|
Loading…
Reference in New Issue