Alistair Leslie-Hughes : gdiplus: Implement GdipIsVisibleClipEmpty.

Alexandre Julliard julliard at winehq.org
Tue Jan 5 11:37:52 CST 2010


Module: wine
Branch: master
Commit: 03e31f9b86dc645574ca2ee21038d04997093f54
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=03e31f9b86dc645574ca2ee21038d04997093f54

Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date:   Wed Dec 23 13:53:27 2009 +1100

gdiplus: Implement GdipIsVisibleClipEmpty.

---

 dlls/gdiplus/gdiplus.spec |    2 +-
 dlls/gdiplus/graphics.c   |   23 +++++++++++++++++++++++
 2 files changed, 24 insertions(+), 1 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index aa64a3c..7d6081d 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -424,7 +424,7 @@
 @ stdcall GdipIsOutlineVisiblePathPoint(ptr long long ptr ptr ptr)
 @ stdcall GdipIsOutlineVisiblePathPointI(ptr long long ptr ptr ptr)
 @ stdcall GdipIsStyleAvailable(ptr long ptr)
-@ stub GdipIsVisibleClipEmpty
+@ stdcall GdipIsVisibleClipEmpty(ptr ptr)
 @ stdcall GdipIsVisiblePathPoint(ptr long long ptr ptr)
 @ stdcall GdipIsVisiblePathPointI(ptr long long ptr ptr)
 @ stdcall GdipIsVisiblePoint(ptr long long ptr)
diff --git a/dlls/gdiplus/graphics.c b/dlls/gdiplus/graphics.c
index 67b0ff9..39ab18c 100644
--- a/dlls/gdiplus/graphics.c
+++ b/dlls/gdiplus/graphics.c
@@ -4359,3 +4359,26 @@ GpStatus WINGDIPAPI GdipRecordMetafileI(HDC hdc, EmfType type, GDIPCONST GpRect
     FIXME("(%p %d %p %d %p %p): stub\n", hdc, type, frameRect, frameUnit, desc, metafile);
     return NotImplemented;
 }
+
+/*****************************************************************************
+ * GdipIsVisibleClipEmpty [GDIPLUS.@]
+ */
+GpStatus WINGDIPAPI GdipIsVisibleClipEmpty(GpGraphics *graphics, BOOL *res)
+{
+    GpStatus stat;
+    GpRegion* rgn;
+
+    TRACE("(%p, %p)\n", graphics, res);
+
+    if((stat = GdipCreateRegion(&rgn)) != Ok)
+        return stat;
+
+    if((stat = get_visible_clip_region(graphics, rgn)) != Ok)
+        goto cleanup;
+
+    stat = GdipIsEmptyRegion(rgn, graphics, res);
+
+cleanup:
+    GdipDeleteRegion(rgn);
+    return stat;
+}




More information about the wine-cvs mailing list