Huw Davies : gdiplus: Add stubs for a few region functions.

Alexandre Julliard julliard at winehq.org
Tue Jul 1 08:27:25 CDT 2008


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

Author: Huw Davies <huw at codeweavers.com>
Date:   Mon Jun 30 14:54:26 2008 +0100

gdiplus: Add stubs for a few region functions.

---

 dlls/gdiplus/gdiplus.spec |   14 ++++++------
 dlls/gdiplus/region.c     |   51 +++++++++++++++++++++++++++++++++++++++++++++
 include/gdiplusflat.h     |    7 ++++++
 3 files changed, 65 insertions(+), 7 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index 7e127d7..5cbc5ba 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -62,9 +62,9 @@
 @ stdcall GdipClosePathFigure(ptr)
 @ stdcall GdipClosePathFigures(ptr)
 @ stub GdipCombineRegionPath
-@ stub GdipCombineRegionRect
-@ stub GdipCombineRegionRectI
-@ stub GdipCombineRegionRegion
+@ stdcall GdipCombineRegionRect(ptr ptr long)
+@ stdcall GdipCombineRegionRectI(ptr ptr long)
+@ stdcall GdipCombineRegionRegion(ptr ptr long)
 @ stub GdipComment
 @ stdcall GdipConvertToEmfPlus(ptr ptr ptr long ptr ptr)
 @ stub GdipConvertToEmfPlusToFile
@@ -125,8 +125,8 @@
 @ stdcall GdipCreateRegion(ptr)
 @ stub GdipCreateRegionHrgn
 @ stdcall GdipCreateRegionPath(ptr ptr)
-@ stub GdipCreateRegionRect
-@ stub GdipCreateRegionRectI
+@ stdcall GdipCreateRegionRect(ptr ptr)
+@ stdcall GdipCreateRegionRectI(ptr ptr)
 @ stub GdipCreateRegionRgnData
 @ stdcall GdipCreateSolidFill(long ptr)
 @ stdcall GdipCreateStreamOnFile(ptr long ptr)
@@ -377,8 +377,8 @@
 @ stub GdipGetPropertySize
 @ stub GdipGetRegionBounds
 @ stub GdipGetRegionBoundsI
-@ stub GdipGetRegionData
-@ stub GdipGetRegionDataSize
+@ stdcall GdipGetRegionData(ptr ptr long ptr)
+@ stdcall GdipGetRegionDataSize(ptr ptr)
 @ stdcall GdipGetRegionHRgn(ptr ptr ptr)
 @ stub GdipGetRegionScans
 @ stub GdipGetRegionScansCount
diff --git a/dlls/gdiplus/region.c b/dlls/gdiplus/region.c
index 46e9919..92239ff 100644
--- a/dlls/gdiplus/region.c
+++ b/dlls/gdiplus/region.c
@@ -67,6 +67,27 @@ WINE_DEFAULT_DEBUG_CHANNEL(gdiplus);
  *
  */
 
+GpStatus WINGDIPAPI GdipCombineRegionRect(GpRegion *region, GDIPCONST GpRectF *rect,
+                                          CombineMode mode)
+{
+    FIXME("(%p %p %d): stub\n", region, rect, mode);
+    return NotImplemented;
+}
+
+GpStatus WINGDIPAPI GdipCombineRegionRectI(GpRegion *region, GDIPCONST GpRect *rect,
+                                           CombineMode mode)
+{
+    FIXME("(%p %p %d): stub\n", region, rect, mode);
+    return NotImplemented;
+}
+
+GpStatus WINGDIPAPI GdipCombineRegionRegion(GpRegion *region1, GpRegion *region2,
+                                            CombineMode mode)
+{
+    FIXME("(%p %p %d): stub\n", region1, region2, mode);
+    return NotImplemented;
+}
+
 GpStatus WINGDIPAPI GdipCreateRegion(GpRegion **region)
 {
     FIXME("(%p): stub\n", region);
@@ -83,12 +104,42 @@ GpStatus WINGDIPAPI GdipCreateRegionPath(GpPath *path, GpRegion **region)
     return NotImplemented;
 }
 
+GpStatus WINGDIPAPI GdipCreateRegionRect(GDIPCONST GpRectF *rect, GpRegion **region)
+{
+    FIXME("(%p, %p): stub\n", rect, region);
+
+    *region = NULL;
+    return NotImplemented;
+}
+
+GpStatus WINGDIPAPI GdipCreateRegionRectI(GDIPCONST GpRect *rect, GpRegion **region)
+{
+    FIXME("(%p, %p): stub\n", rect, region);
+
+    *region = NULL;
+    return NotImplemented;
+}
+
 GpStatus WINGDIPAPI GdipDeleteRegion(GpRegion *region)
 {
     FIXME("(%p): stub\n", region);
     return NotImplemented;
 }
 
+GpStatus WINGDIPAPI GdipGetRegionData(GpRegion *region, BYTE *buffer, UINT size, UINT *needed)
+{
+    FIXME("(%p, %p, %d, %p): stub\n", region, buffer, size, needed);
+
+    return NotImplemented;
+}
+
+GpStatus WINGDIPAPI GdipGetRegionDataSize(GpRegion *region, UINT *needed)
+{
+    FIXME("(%p, %p): stub\n", region, needed);
+
+    return NotImplemented;
+}
+
 GpStatus WINGDIPAPI GdipGetRegionHRgn(GpRegion *region, GpGraphics *graphics, HRGN *hrgn)
 {
     FIXME("(%p, %p, %p): stub\n", region, graphics, hrgn);
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 0903637..87135e3 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -389,9 +389,16 @@ GpStatus WINGDIPAPI GdipCloneStringFormat(GDIPCONST GpStringFormat*,GpStringForm
 GpStatus WINGDIPAPI GdipGetDpiX(GpGraphics*,REAL*);
 GpStatus WINGDIPAPI GdipGetDpiY(GpGraphics*,REAL*);
 
+GpStatus WINGDIPAPI GdipCombineRegionRect(GpRegion *, GDIPCONST GpRectF *, CombineMode);
+GpStatus WINGDIPAPI GdipCombineRegionRectI(GpRegion *, GDIPCONST GpRect *, CombineMode);
+GpStatus WINGDIPAPI GdipCombineRegionRegion(GpRegion *, GpRegion *, CombineMode);
 GpStatus WINGDIPAPI GdipCreateRegion(GpRegion **);
 GpStatus WINGDIPAPI GdipCreateRegionPath(GpPath *, GpRegion **);
+GpStatus WINGDIPAPI GdipCreateRegionRect(GDIPCONST GpRectF *, GpRegion **);
+GpStatus WINGDIPAPI GdipCreateRegionRectI(GDIPCONST GpRect *, GpRegion **);
 GpStatus WINGDIPAPI GdipDeleteRegion(GpRegion *);
+GpStatus WINGDIPAPI GdipGetRegionData(GpRegion *, BYTE *, UINT, UINT *);
+GpStatus WINGDIPAPI GdipGetRegionDataSize(GpRegion *, UINT *);
 GpStatus WINGDIPAPI GdipGetRegionHRgn(GpRegion *, GpGraphics *, HRGN *);
 GpStatus WINGDIPAPI GdipSetEmpty(GpRegion *);
 GpStatus WINGDIPAPI GdipSetInfinite(GpRegion *);




More information about the wine-cvs mailing list