From c2de38ea47046039d21c2ef38e8c4b01d95663f5 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Mon, 8 Sep 2008 01:25:04 +0400 Subject: [PATCH] gdiplus: Added missed stubs for Image metadata access. --- dlls/gdiplus/gdiplus.spec | 10 ++++---- dlls/gdiplus/image.c | 62 +++++++++++++++++++++++++++++++++++++++++++++++ include/gdiplusflat.h | 7 ++++++ 3 files changed, 74 insertions(+), 5 deletions(-) diff --git a/dlls/gdiplus/gdiplus.spec b/dlls/gdiplus/gdiplus.spec index 9eafbde8756..5de555aa58d 100644 --- a/dlls/gdiplus/gdiplus.spec +++ b/dlls/gdiplus/gdiplus.spec @@ -370,11 +370,11 @@ @ stdcall GdipGetPenWidth(ptr ptr) @ stdcall GdipGetPixelOffsetMode(ptr ptr) @ stdcall GdipGetPointCount(ptr ptr) -@ stub GdipGetPropertyCount -@ stub GdipGetPropertyIdList -@ stub GdipGetPropertyItem +@ stdcall GdipGetPropertyCount(ptr ptr) +@ stdcall GdipGetPropertyIdList(ptr long ptr) +@ stdcall GdipGetPropertyItem(ptr long long ptr) @ stdcall GdipGetPropertyItemSize(ptr long ptr) -@ stub GdipGetPropertySize +@ stdcall GdipGetPropertySize(ptr ptr ptr) @ stdcall GdipGetRegionBounds(ptr ptr ptr) @ stdcall GdipGetRegionBoundsI(ptr ptr ptr) @ stdcall GdipGetRegionData(ptr ptr long ptr) @@ -581,7 +581,7 @@ @ stub GdipSetPenUnit @ stdcall GdipSetPenWidth(ptr long) @ stdcall GdipSetPixelOffsetMode(ptr long) -@ stub GdipSetPropertyItem +@ stdcall GdipSetPropertyItem(ptr ptr) @ stub GdipSetRenderingOrigin @ stdcall GdipSetSmoothingMode(ptr long) @ stdcall GdipSetSolidFillColor(ptr ptr) diff --git a/dlls/gdiplus/image.c b/dlls/gdiplus/image.c index 61dade919cb..050187a0750 100644 --- a/dlls/gdiplus/image.c +++ b/dlls/gdiplus/image.c @@ -767,6 +767,48 @@ GpStatus WINGDIPAPI GdipGetMetafileHeaderFromMetafile(GpMetafile * metafile, return Ok; } +GpStatus WINGDIPAPI GdipGetAllPropertyItems(GpImage *image, UINT size, + UINT num, PropertyItem* items) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return InvalidParameter; +} + +GpStatus WINGDIPAPI GdipGetPropertyCount(GpImage *image, UINT* num) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return InvalidParameter; +} + +GpStatus WINGDIPAPI GdipGetPropertyIdList(GpImage *image, UINT num, PROPID* list) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return InvalidParameter; +} + +GpStatus WINGDIPAPI GdipGetPropertyItem(GpImage *image, PROPID id, UINT size, + PropertyItem* buffer) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return InvalidParameter; +} + GpStatus WINGDIPAPI GdipGetPropertyItemSize(GpImage *image, PROPID pid, UINT* size) { @@ -783,6 +825,16 @@ GpStatus WINGDIPAPI GdipGetPropertyItemSize(GpImage *image, PROPID pid, return NotImplemented; } +GpStatus WINGDIPAPI GdipGetPropertySize(GpImage *image, UINT* size, UINT* num) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return InvalidParameter; +} + GpStatus WINGDIPAPI GdipImageGetFrameCount(GpImage *image, GDIPCONST GUID* dimensionID, UINT* count) { @@ -952,6 +1004,16 @@ GpStatus WINGDIPAPI GdipRemovePropertyItem(GpImage *image, PROPID propId) return NotImplemented; } +GpStatus WINGDIPAPI GdipSetPropertyItem(GpImage *image, GDIPCONST PropertyItem* item) +{ + static int calls; + + if(!(calls++)) + FIXME("not implemented\n"); + + return NotImplemented; +} + GpStatus WINGDIPAPI GdipSaveImageToFile(GpImage *image, GDIPCONST WCHAR* filename, GDIPCONST CLSID *clsidEncoder, GDIPCONST EncoderParameters *encoderParams) diff --git a/include/gdiplusflat.h b/include/gdiplusflat.h index 03980eabe1d..5babd5eb807 100644 --- a/include/gdiplusflat.h +++ b/include/gdiplusflat.h @@ -403,7 +403,14 @@ GpStatus WINGDIPAPI GdipGetMetafileHeaderFromFile(GDIPCONST WCHAR*,MetafileHeade GpStatus WINGDIPAPI GdipGetMetafileHeaderFromMetafile(GpMetafile*,MetafileHeader*); GpStatus WINGDIPAPI GdipGetMetafileHeaderFromStream(IStream*,MetafileHeader*); GpStatus WINGDIPAPI GdipGetMetafileHeaderFromWmf(HMETAFILE,GDIPCONST WmfPlaceableFileHeader*,MetafileHeader*); +GpStatus WINGDIPAPI GdipGetPropertyCount(GpImage*,UINT*); +GpStatus WINGDIPAPI GdipGetPropertyIdList(GpImage*,UINT,PROPID*); +GpStatus WINGDIPAPI GdipGetPropertyItem(GpImage*,PROPID,UINT,PropertyItem*); GpStatus WINGDIPAPI GdipGetPropertyItemSize(GpImage*,PROPID,UINT*); +GpStatus WINGDIPAPI GdipGetPropertySize(GpImage*,UINT*,UINT*); +GpStatus WINGDIPAPI GdipGetAllPropertyItems(GpImage*,UINT,UINT,PropertyItem*); +GpStatus WINGDIPAPI GdipRemovePropertyItem(GpImage*,PROPID); +GpStatus WINGDIPAPI GdipSetPropertyItem(GpImage*,GDIPCONST PropertyItem*); GpStatus WINGDIPAPI GdipImageGetFrameCount(GpImage*,GDIPCONST GUID*,UINT*); GpStatus WINGDIPAPI GdipImageGetFrameDimensionsCount(GpImage*,UINT*); GpStatus WINGDIPAPI GdipImageGetFrameDimensionsList(GpImage*,GUID*,UINT); -- 2.11.4.GIT