Evan Stade : gdiplus: Added GdipSetImagePalette stub.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Aug 9 08:23:15 CDT 2007


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

Author: Evan Stade <estade at gmail.com>
Date:   Wed Aug  8 19:42:16 2007 -0700

gdiplus: Added GdipSetImagePalette stub.

---

 dlls/gdiplus/gdiplus.spec     |    2 +-
 dlls/gdiplus/image.c          |   14 ++++++++++++++
 include/gdiplusflat.h         |    1 +
 include/gdipluspixelformats.h |   21 +++++++++++++++++++++
 4 files changed, 37 insertions(+), 1 deletions(-)

diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec
index f0d1bde..834d0e2 100644
--- a/dlls/gdiplus/gdiplus.spec
+++ b/dlls/gdiplus/gdiplus.spec
@@ -532,7 +532,7 @@
 @ stub GdipSetImageAttributesThreshold
 @ stub GdipSetImageAttributesToIdentity
 @ stdcall GdipSetImageAttributesWrapMode(ptr long long long)
-@ stub GdipSetImagePalette
+@ stdcall GdipSetImagePalette(ptr ptr)
 @ stub GdipSetInfinite
 @ stdcall GdipSetInterpolationMode(ptr long)
 @ stub GdipSetLineBlend
diff --git a/dlls/gdiplus/image.c b/dlls/gdiplus/image.c
index 85cfc07..ec52d5d 100644
--- a/dlls/gdiplus/image.c
+++ b/dlls/gdiplus/image.c
@@ -668,3 +668,17 @@ GpStatus WINGDIPAPI GdipSaveImageToStream(GpImage *image, IStream* stream,
 
     return Ok;
 }
+
+GpStatus WINGDIPAPI GdipSetImagePalette(GpImage *image,
+    GDIPCONST ColorPalette *palette)
+{
+    static int calls;
+
+    if(!image || !palette)
+        return InvalidParameter;
+
+    if(!(calls++))
+        FIXME("not implemented\n");
+
+    return NotImplemented;
+}
diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h
index 1ae9ced..57b14ab 100644
--- a/include/gdiplusflat.h
+++ b/include/gdiplusflat.h
@@ -208,6 +208,7 @@ GpStatus WINGDIPAPI GdipLoadImageFromStreamICM(IStream*,GpImage**);
 GpStatus WINGDIPAPI GdipRemovePropertyItem(GpImage*,PROPID);
 GpStatus WINGDIPAPI GdipSaveImageToStream(GpImage*,IStream*,
     GDIPCONST CLSID*,GDIPCONST EncoderParameters*);
+GpStatus WINGDIPAPI GdipSetImagePalette(GpImage*,GDIPCONST ColorPalette*);
 
 GpStatus WINGDIPAPI GdipCreateImageAttributes(GpImageAttributes**);
 GpStatus WINGDIPAPI GdipDisposeImageAttributes(GpImageAttributes*);
diff --git a/include/gdipluspixelformats.h b/include/gdipluspixelformats.h
index dd67410..d7382f1 100644
--- a/include/gdipluspixelformats.h
+++ b/include/gdipluspixelformats.h
@@ -48,4 +48,25 @@ typedef INT PixelFormat;
 #define    PixelFormat64bppPARGB        (14 | (64 << 8) | PixelFormatAlpha  | PixelFormatPAlpha | PixelFormatExtended)
 #define    PixelFormatMax               15
 
+#ifdef __cplusplus
+
+struct ColorPalette
+{
+public:
+    UINT Flags;
+    UINT Count;
+    ARGB Entries[1];
+};
+
+#else /* end of c++ typedefs */
+
+typedef struct ColorPalette
+{
+    UINT Flags;
+    UINT Count;
+    ARGB Entries[1];
+} ColorPalette;
+
+#endif  /* end of c typedefs */
+
 #endif




More information about the wine-cvs mailing list