windowscodecs: Implement IWICBitmapFrameEncode::SetPalette in BMP encoder.
Signed-off-by: Vincent Povirk <vincent@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
02870de541
commit
f515878cad
@ -67,6 +67,8 @@ typedef struct BmpFrameEncode {
|
|||||||
double xres, yres;
|
double xres, yres;
|
||||||
UINT lineswritten;
|
UINT lineswritten;
|
||||||
UINT stride;
|
UINT stride;
|
||||||
|
WICColor palette[256];
|
||||||
|
UINT colors;
|
||||||
BOOL committed;
|
BOOL committed;
|
||||||
} BmpFrameEncode;
|
} BmpFrameEncode;
|
||||||
|
|
||||||
@ -197,10 +199,18 @@ static HRESULT WINAPI BmpFrameEncode_SetColorContexts(IWICBitmapFrameEncode *ifa
|
|||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI BmpFrameEncode_SetPalette(IWICBitmapFrameEncode *iface,
|
static HRESULT WINAPI BmpFrameEncode_SetPalette(IWICBitmapFrameEncode *iface,
|
||||||
IWICPalette *pIPalette)
|
IWICPalette *palette)
|
||||||
{
|
{
|
||||||
FIXME("(%p,%p): stub\n", iface, pIPalette);
|
BmpFrameEncode *This = impl_from_IWICBitmapFrameEncode(iface);
|
||||||
return WINCODEC_ERR_UNSUPPORTEDOPERATION;
|
|
||||||
|
TRACE("(%p,%p)\n", iface, palette);
|
||||||
|
|
||||||
|
if (!palette) return E_INVALIDARG;
|
||||||
|
|
||||||
|
if (!This->initialized)
|
||||||
|
return WINCODEC_ERR_NOTINITIALIZED;
|
||||||
|
|
||||||
|
return IWICPalette_GetColors(palette, 256, This->palette, &This->colors);
|
||||||
}
|
}
|
||||||
|
|
||||||
static HRESULT WINAPI BmpFrameEncode_SetThumbnail(IWICBitmapFrameEncode *iface,
|
static HRESULT WINAPI BmpFrameEncode_SetThumbnail(IWICBitmapFrameEncode *iface,
|
||||||
@ -520,6 +530,7 @@ static HRESULT WINAPI BmpEncoder_CreateNewFrame(IWICBitmapEncoder *iface,
|
|||||||
encode->xres = 0.0;
|
encode->xres = 0.0;
|
||||||
encode->yres = 0.0;
|
encode->yres = 0.0;
|
||||||
encode->lineswritten = 0;
|
encode->lineswritten = 0;
|
||||||
|
encode->colors = 0;
|
||||||
encode->committed = FALSE;
|
encode->committed = FALSE;
|
||||||
|
|
||||||
*ppIFrameEncode = &encode->IWICBitmapFrameEncode_iface;
|
*ppIFrameEncode = &encode->IWICBitmapFrameEncode_iface;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user