gdi32: GetDIBColorTable doesn't need to be part of the DC driver interface.
This commit is contained in:
parent
e6d9486453
commit
fcfbb46d2e
|
@ -453,29 +453,24 @@ UINT WINAPI SetDIBColorTable( HDC hdc, UINT startpos, UINT entries, CONST RGBQUA
|
|||
UINT WINAPI GetDIBColorTable( HDC hdc, UINT startpos, UINT entries, RGBQUAD *colors )
|
||||
{
|
||||
DC * dc;
|
||||
BITMAPOBJ *bitmap;
|
||||
UINT result = 0;
|
||||
|
||||
if (!(dc = get_dc_ptr( hdc ))) return 0;
|
||||
|
||||
if (dc->funcs->pGetDIBColorTable)
|
||||
result = dc->funcs->pGetDIBColorTable(dc->physDev, startpos, entries, colors);
|
||||
else
|
||||
if ((bitmap = GDI_GetObjPtr( dc->hBitmap, OBJ_BITMAP )))
|
||||
{
|
||||
BITMAPOBJ *bitmap = GDI_GetObjPtr( dc->hBitmap, OBJ_BITMAP );
|
||||
if (bitmap)
|
||||
/* Check if currently selected bitmap is a DIB */
|
||||
if (bitmap->color_table)
|
||||
{
|
||||
/* Check if currently selected bitmap is a DIB */
|
||||
if (bitmap->color_table)
|
||||
if (startpos < bitmap->nb_colors)
|
||||
{
|
||||
if (startpos < bitmap->nb_colors)
|
||||
{
|
||||
if (startpos + entries > bitmap->nb_colors) entries = bitmap->nb_colors - startpos;
|
||||
memcpy(colors, bitmap->color_table + startpos, entries * sizeof(RGBQUAD));
|
||||
result = entries;
|
||||
}
|
||||
if (startpos + entries > bitmap->nb_colors) entries = bitmap->nb_colors - startpos;
|
||||
memcpy(colors, bitmap->color_table + startpos, entries * sizeof(RGBQUAD));
|
||||
result = entries;
|
||||
}
|
||||
GDI_ReleaseObj( dc->hBitmap );
|
||||
}
|
||||
GDI_ReleaseObj( dc->hBitmap );
|
||||
}
|
||||
release_dc_ptr( dc );
|
||||
return result;
|
||||
|
|
|
@ -110,7 +110,6 @@ static struct graphics_driver *create_driver( HMODULE module )
|
|||
GET_FUNC(GdiComment);
|
||||
GET_FUNC(GetBitmapBits);
|
||||
GET_FUNC(GetCharWidth);
|
||||
GET_FUNC(GetDIBColorTable);
|
||||
GET_FUNC(GetDIBits);
|
||||
GET_FUNC(GetDeviceCaps);
|
||||
GET_FUNC(GetDeviceGammaRamp);
|
||||
|
|
|
@ -72,7 +72,6 @@ static const DC_FUNCTIONS EMFDRV_Funcs =
|
|||
EMFDRV_GdiComment, /* pGdiComment */
|
||||
NULL, /* pGetBitmapBits */
|
||||
NULL, /* pGetCharWidth */
|
||||
NULL, /* pGetDIBColorTable */
|
||||
NULL, /* pGetDIBits */
|
||||
EMFDRV_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
NULL, /* pGetDeviceGammaRamp */
|
||||
|
|
|
@ -114,7 +114,6 @@ typedef struct tagDC_FUNCS
|
|||
BOOL (CDECL *pGdiComment)(PHYSDEV,UINT,CONST BYTE*);
|
||||
LONG (CDECL *pGetBitmapBits)(HBITMAP,void*,LONG);
|
||||
BOOL (CDECL *pGetCharWidth)(PHYSDEV,UINT,UINT,LPINT);
|
||||
UINT (CDECL *pGetDIBColorTable)(PHYSDEV,UINT,UINT,RGBQUAD*);
|
||||
INT (CDECL *pGetDIBits)(PHYSDEV,HBITMAP,UINT,UINT,LPVOID,BITMAPINFO*,UINT);
|
||||
INT (CDECL *pGetDeviceCaps)(PHYSDEV,INT);
|
||||
BOOL (CDECL *pGetDeviceGammaRamp)(PHYSDEV,LPVOID);
|
||||
|
|
|
@ -70,7 +70,6 @@ static const DC_FUNCTIONS MFDRV_Funcs =
|
|||
NULL, /* pGdiComment */
|
||||
NULL, /* pGetBitmapBits */
|
||||
NULL, /* pGetCharWidth */
|
||||
NULL, /* pGetDIBColorTable */
|
||||
NULL, /* pGetDIBits */
|
||||
MFDRV_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
NULL, /* pGetDeviceGammaRamp */
|
||||
|
|
Loading…
Reference in New Issue