Module: wine Branch: master Commit: b689e63a86bf3986c3d0d06ad17dee3e9111dcf3 URL: http://source.winehq.org/git/wine.git/?a=commit;h=b689e63a86bf3986c3d0d06ad1...
Author: Vincent Povirk vincent@codeweavers.com Date: Fri Jan 21 11:33:52 2011 -0600
gdiplus: Factor out the gdi32 code of GdipFillRegion.
---
dlls/gdiplus/graphics.c | 47 ++++++++++++++++++++++++++++++----------------- 1 files changed, 30 insertions(+), 17 deletions(-)
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c index e85a8ba..a17cbef 100644 --- a/dlls/gdiplus/graphics.c +++ b/dlls/gdiplus/graphics.c @@ -3282,30 +3282,16 @@ GpStatus WINGDIPAPI GdipFillRectanglesI(GpGraphics *graphics, GpBrush *brush, GD return ret; }
-/***************************************************************************** - * GdipFillRegion [GDIPLUS.@] - */ -GpStatus WINGDIPAPI GdipFillRegion(GpGraphics* graphics, GpBrush* brush, - GpRegion* region) +static GpStatus GDI32_GdipFillRegion(GpGraphics* graphics, GpBrush* brush, + GpRegion* region) { INT save_state; GpStatus status; HRGN hrgn; RECT rc;
- TRACE("(%p, %p, %p)\n", graphics, brush, region); - - if (!(graphics && brush && region)) - return InvalidParameter; - - if(graphics->busy) - return ObjectBusy; - if(!graphics->hdc) - { - FIXME("graphics object has no HDC\n"); - return Ok; - } + return NotImplemented;
status = GdipGetRegionHRgn(region, graphics, &hrgn); if(status != Ok) @@ -3332,6 +3318,33 @@ GpStatus WINGDIPAPI GdipFillRegion(GpGraphics* graphics, GpBrush* brush, return Ok; }
+/***************************************************************************** + * GdipFillRegion [GDIPLUS.@] + */ +GpStatus WINGDIPAPI GdipFillRegion(GpGraphics* graphics, GpBrush* brush, + GpRegion* region) +{ + GpStatus stat; + + TRACE("(%p, %p, %p)\n", graphics, brush, region); + + if (!(graphics && brush && region)) + return InvalidParameter; + + if(graphics->busy) + return ObjectBusy; + + stat = GDI32_GdipFillRegion(graphics, brush, region); + + if (stat == NotImplemented) + { + FIXME("partially implemented\n"); + stat = Ok; + } + + return stat; +} + GpStatus WINGDIPAPI GdipFlush(GpGraphics *graphics, GpFlushIntention intention) { TRACE("(%p,%u)\n", graphics, intention);