[PATCH 1/9] gdiplus: add a stub for GdipSetImageAttributesRemapTable.

Lei Zhang thestig at google.com
Thu Apr 10 14:40:13 CDT 2008


---
 dlls/gdiplus/gdiplus.spec      |    2 +-
 dlls/gdiplus/imageattributes.c |   12 ++++++++++++
 include/gdipluscolor.h         |   18 +++++++++++++++++-
 include/gdipluscolormatrix.h   |    7 +++++++
 include/gdiplusgpstubs.h       |    1 +
 5 files changed, 38 insertions(+), 2 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index 8157f4f..349e10f 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -528,7 +528,7 @@
 @ stdcall GdipSetImageAttributesNoOp(ptr long long)
 @ stdcall GdipSetImageAttributesOutputChannel(ptr long long long)
 @ stdcall GdipSetImageAttributesOutputChannelColorProfile(ptr long long ptr)
-@ stub GdipSetImageAttributesRemapTable
+@ stdcall GdipSetImageAttributesRemapTable(ptr long long long ptr)
 @ stub GdipSetImageAttributesThreshold
 @ stub GdipSetImageAttributesToIdentity
 @ stdcall GdipSetImageAttributesWrapMode(ptr long long long)
diff --git a/dlls/gdiplus/imageattributes.c b/dlls/gdiplus/imageattributes.c
index b74fc66..f4cecbe 100644
--- a/dlls/gdiplus/imageattributes.c
+++ b/dlls/gdiplus/imageattributes.c
@@ -146,3 +146,15 @@ GpStatus WINGDIPAPI GdipSetImageAttributesOutputChannelColorProfile(GpImageAttri
 
     return NotImplemented;
 }
+
+GpStatus WINGDIPAPI GdipSetImageAttributesRemapTable(GpImageAttributes *imageAttr,
+    ColorAdjustType type, BOOL enableFlag, UINT mapSize,
+    GDIPCONST ColorMap *map)
+{
+    static int calls;
+
+    if(!(calls++))
+        FIXME("not implemented\n");
+
+    return NotImplemented;
+}
diff --git a/include/gdipluscolor.h b/include/gdipluscolor.h
index 5c8e53f..b6348a5 100644
--- a/include/gdipluscolor.h
+++ b/include/gdipluscolor.h
@@ -19,6 +19,8 @@
 #ifndef _GDIPLUSCOLOR_H
 #define _GDIPLUSCOLOR_H
 
+#include "gdipluspixelformats.h"
+
 enum ColorChannelFlags
 {
     ColorChannelFlagsC,
@@ -28,7 +30,21 @@ enum ColorChannelFlags
     ColorChannelFlagsLast
 };
 
-#ifndef __cplusplus
+#ifdef __cplusplus
+
+/* FIXME: missing the methods. */
+class Color
+{
+public:
+    ARGB color;
+};
+
+#else /* end of c++ typedefs */
+
+typedef struct Color
+{
+    ARGB color;
+} Color;
 
 typedef enum ColorChannelFlags ColorChannelFlags;
 
diff --git a/include/gdipluscolormatrix.h b/include/gdipluscolormatrix.h
index afc04c0..532e8f4 100644
--- a/include/gdipluscolormatrix.h
+++ b/include/gdipluscolormatrix.h
@@ -42,11 +42,18 @@ enum ColorAdjustType
     ColorAdjustTypeAny
 };
 
+struct ColorMap
+{
+    Color oldColor;
+    Color newCOlor;
+};
+
 #ifndef __cplusplus
 
 typedef enum ColorAdjustType ColorAdjustType;
 typedef enum ColorMatrixFlags ColorMatrixFlags;
 typedef struct ColorMatrix ColorMatrix;
+typedef struct ColorMap ColorMap;
 
 #endif  /* end of c typedefs */
 
diff --git a/include/gdiplusgpstubs.h b/include/gdiplusgpstubs.h
index d7d8702..9f7d092 100644
--- a/include/gdiplusgpstubs.h
+++ b/include/gdiplusgpstubs.h
@@ -80,5 +80,6 @@ typedef DashStyle GpDashStyle;
 typedef MatrixOrder GpMatrixOrder;
 typedef Point GpPoint;
 typedef WrapMode GpWrapMode;
+typedef Color GpColor;
 
 #endif
-- 
1.5.3.6




More information about the wine-patches mailing list