Commit 8b9f5342 authored by Evan Stade's avatar Evan Stade Committed by Alexandre Julliard

gdiplus: Implemented GdipDrawBezier.

parent b8d1560a
......@@ -144,7 +144,7 @@
@ stub GdipDisposeImageAttributes
@ stub GdipDrawArc
@ stub GdipDrawArcI
@ stub GdipDrawBezier
@ stdcall GdipDrawBezier(ptr ptr long long long long long long long long)
@ stub GdipDrawBezierI
@ stub GdipDrawBeziers
@ stub GdipDrawBeziersI
......
......@@ -27,6 +27,11 @@
#include "gdiplus_private.h"
#include "wine/debug.h"
static inline INT roundr(REAL x)
{
return (INT) floor(x+0.5);
}
GpStatus WINGDIPAPI GdipCreateFromHDC(HDC hdc, GpGraphics **graphics)
{
if(hdc == NULL)
......@@ -66,6 +71,25 @@ GpStatus WINGDIPAPI GdipDeleteGraphics(GpGraphics *graphics)
return Ok;
}
GpStatus WINGDIPAPI GdipDrawBezier(GpGraphics *graphics, GpPen *pen, REAL x1,
REAL y1, REAL x2, REAL y2, REAL x3, REAL y3, REAL x4, REAL y4)
{
HGDIOBJ old_pen;
POINT pt[4] = {{roundr(x1), roundr(y1)}, {roundr(x2), roundr(y2)},
{roundr(x3), roundr(y3)}, {roundr(x4), roundr(y4)}};
if(!graphics || !pen)
return InvalidParameter;
old_pen = SelectObject(graphics->hdc, pen->gdipen);
PolyBezier(graphics->hdc, pt, 4);
SelectObject(graphics->hdc, old_pen);
return Ok;
}
GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics *graphics, GpPen *pen, INT x1,
INT y1, INT x2, INT y2)
{
......
......@@ -31,6 +31,8 @@ GpStatus WINGDIPAPI GdipDeletePen(GpPen*);
GpStatus WINGDIPAPI GdipCreateFromHDC(HDC,GpGraphics**);
GpStatus WINGDIPAPI GdipCreateFromHWND(HWND,GpGraphics**);
GpStatus WINGDIPAPI GdipDeleteGraphics(GpGraphics *);
GpStatus WINGDIPAPI GdipDrawBezier(GpGraphics*,GpPen*,REAL,REAL,REAL,REAL,REAL,
REAL,REAL,REAL);
GpStatus WINGDIPAPI GdipDrawLineI(GpGraphics*,GpPen*,INT,INT,INT,INT);
GpStatus WINGDIPAPI GdipDrawRectangleI(GpGraphics*,GpPen*,INT,INT,INT,INT);
GpStatus WINGDIPAPI GdipFillPie(GpGraphics*,GpBrush*,REAL,REAL,REAL,REAL,REAL,REAL);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment