gdi32: Use NtGdiDoPalette for AnimatePalette.

Signed-off-by: Jacek Caban <jacek@codeweavers.com>
Signed-off-by: Huw Davies <huw@codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
Jacek Caban 2021-08-16 10:27:50 +02:00 committed by Alexandre Julliard
parent 4fc5f0ff70
commit 44313dcb49
2 changed files with 13 additions and 17 deletions

View File

@ -542,3 +542,11 @@ UINT WINAPI SetPaletteEntries( HPALETTE palette, UINT start, UINT count,
{ {
return NtGdiDoPalette( palette, start, count, (void *)entries, NtGdiSetPaletteEntries, FALSE ); return NtGdiDoPalette( palette, start, count, (void *)entries, NtGdiSetPaletteEntries, FALSE );
} }
/***********************************************************************
* AnimatePalette (GDI32.@)
*/
BOOL WINAPI AnimatePalette( HPALETTE palette, UINT start, UINT count, const PALETTEENTRY *entries )
{
return NtGdiDoPalette( palette, start, count, (void *)entries, NtGdiAnimatePalette, FALSE );
}

View File

@ -248,23 +248,9 @@ BOOL WINAPI NtGdiResizePalette( HPALETTE hPal, UINT cEntries )
} }
/*********************************************************************** /* Replaces entries in logical palette. */
* AnimatePalette [GDI32.@] static BOOL animate_palette( HPALETTE hPal, UINT StartIndex, UINT NumEntries,
* const PALETTEENTRY *PaletteColors )
* Replaces entries in logical palette.
*
* RETURNS
* Success: TRUE
* Failure: FALSE
*
* FIXME
* Should use existing mapping when animating a primary palette
*/
BOOL WINAPI AnimatePalette(
HPALETTE hPal, /* [in] Handle to logical palette */
UINT StartIndex, /* [in] First entry in palette */
UINT NumEntries, /* [in] Count of entries in palette */
const PALETTEENTRY* PaletteColors) /* [in] Pointer to first replacement */
{ {
TRACE("%p (%i - %i)\n", hPal, StartIndex,StartIndex+NumEntries); TRACE("%p (%i - %i)\n", hPal, StartIndex,StartIndex+NumEntries);
@ -679,6 +665,8 @@ LONG WINAPI NtGdiDoPalette( HGDIOBJ handle, WORD start, WORD count, void *entrie
{ {
switch (func) switch (func)
{ {
case NtGdiAnimatePalette:
return animate_palette( handle, start, count, entries );
case NtGdiSetPaletteEntries: case NtGdiSetPaletteEntries:
return set_palette_entries( handle, start, count, entries ); return set_palette_entries( handle, start, count, entries );
case NtGdiGetPaletteEntries: case NtGdiGetPaletteEntries: