gdi32: Add driver entry points for GetImage and PutImage.
This commit is contained in:
parent
340643af30
commit
cf05fca878
|
@ -469,6 +469,7 @@ const DC_FUNCTIONS dib_driver =
|
|||
NULL, /* pGetDeviceCaps */
|
||||
NULL, /* pGetDeviceGammaRamp */
|
||||
NULL, /* pGetICMProfile */
|
||||
NULL, /* pGetImage */
|
||||
NULL, /* pGetNearestColor */
|
||||
NULL, /* pGetPixel */
|
||||
NULL, /* pGetPixelFormat */
|
||||
|
@ -494,6 +495,7 @@ const DC_FUNCTIONS dib_driver =
|
|||
NULL, /* pPolygon */
|
||||
NULL, /* pPolyline */
|
||||
NULL, /* pPolylineTo */
|
||||
NULL, /* pPutImage */
|
||||
NULL, /* pRealizeDefaultPalette */
|
||||
NULL, /* pRealizePalette */
|
||||
dibdrv_Rectangle, /* pRectangle */
|
||||
|
|
|
@ -347,6 +347,12 @@ static BOOL nulldrv_GetICMProfile( PHYSDEV dev, LPDWORD size, LPWSTR filename )
|
|||
return FALSE;
|
||||
}
|
||||
|
||||
static DWORD nulldrv_GetImage( PHYSDEV dev, HBITMAP hbitmap, BITMAPINFO *info,
|
||||
struct gdi_image_bits *bits, const RECT *rect )
|
||||
{
|
||||
return ERROR_NOT_SUPPORTED;
|
||||
}
|
||||
|
||||
static COLORREF nulldrv_GetPixel( PHYSDEV dev, INT x, INT y )
|
||||
{
|
||||
return 0;
|
||||
|
@ -421,6 +427,12 @@ static BOOL nulldrv_Polyline( PHYSDEV dev, const POINT *points, INT count )
|
|||
return TRUE;
|
||||
}
|
||||
|
||||
static DWORD nulldrv_PutImage( PHYSDEV dev, HBITMAP hbitmap, BITMAPINFO *info,
|
||||
const struct gdi_image_bits *bits, const RECT *rect, DWORD rop )
|
||||
{
|
||||
return ERROR_SUCCESS;
|
||||
}
|
||||
|
||||
static UINT nulldrv_RealizeDefaultPalette( PHYSDEV dev )
|
||||
{
|
||||
return 0;
|
||||
|
@ -701,6 +713,7 @@ const DC_FUNCTIONS null_driver =
|
|||
nulldrv_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
nulldrv_GetDeviceGammaRamp, /* pGetDeviceGammaRamp */
|
||||
nulldrv_GetICMProfile, /* pGetICMProfile */
|
||||
nulldrv_GetImage, /* pGetImage */
|
||||
nulldrv_GetNearestColor, /* pGetNearestColor */
|
||||
nulldrv_GetPixel, /* pGetPixel */
|
||||
nulldrv_GetPixelFormat, /* pGetPixelFormat */
|
||||
|
@ -726,6 +739,7 @@ const DC_FUNCTIONS null_driver =
|
|||
nulldrv_Polygon, /* pPolygon */
|
||||
nulldrv_Polyline, /* pPolyline */
|
||||
nulldrv_PolylineTo, /* pPolylineTo */
|
||||
nulldrv_PutImage, /* pPutImage */
|
||||
nulldrv_RealizeDefaultPalette, /* pRealizeDefaultPalette */
|
||||
nulldrv_RealizePalette, /* pRealizePalette */
|
||||
nulldrv_Rectangle, /* pRectangle */
|
||||
|
|
|
@ -77,6 +77,7 @@ static const DC_FUNCTIONS EMFDRV_Funcs =
|
|||
EMFDRV_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
NULL, /* pGetDeviceGammaRamp */
|
||||
NULL, /* pGetICMProfile */
|
||||
NULL, /* pGetImage */
|
||||
NULL, /* pGetNearestColor */
|
||||
NULL, /* pGetPixel */
|
||||
NULL, /* pGetPixelFormat */
|
||||
|
@ -102,6 +103,7 @@ static const DC_FUNCTIONS EMFDRV_Funcs =
|
|||
EMFDRV_Polygon, /* pPolygon */
|
||||
EMFDRV_Polyline, /* pPolyline */
|
||||
NULL, /* pPolylineTo */
|
||||
NULL, /* pPutImage */
|
||||
NULL, /* pRealizeDefaultPalette */
|
||||
NULL, /* pRealizePalette */
|
||||
EMFDRV_Rectangle, /* pRectangle */
|
||||
|
|
|
@ -121,6 +121,7 @@ static const DC_FUNCTIONS MFDRV_Funcs =
|
|||
MFDRV_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
NULL, /* pGetDeviceGammaRamp */
|
||||
NULL, /* pGetICMProfile */
|
||||
NULL, /* pGetImage */
|
||||
NULL, /* pGetNearestColor */
|
||||
NULL, /* pGetPixel */
|
||||
NULL, /* pGetPixelFormat */
|
||||
|
@ -146,6 +147,7 @@ static const DC_FUNCTIONS MFDRV_Funcs =
|
|||
MFDRV_Polygon, /* pPolygon */
|
||||
MFDRV_Polyline, /* pPolyline */
|
||||
NULL, /* pPolylineTo */
|
||||
NULL, /* pPutImage */
|
||||
NULL, /* pRealizeDefaultPalette */
|
||||
MFDRV_RealizePalette, /* pRealizePalette */
|
||||
MFDRV_Rectangle, /* pRectangle */
|
||||
|
|
|
@ -843,6 +843,7 @@ static const struct gdi_dc_funcs psdrv_funcs =
|
|||
PSDRV_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
NULL, /* pGetDeviceGammaRamp */
|
||||
NULL, /* pGetICMProfile */
|
||||
NULL, /* pGetImage */
|
||||
NULL, /* pGetNearestColor */
|
||||
NULL, /* pGetPixel */
|
||||
NULL, /* pGetPixelFormat */
|
||||
|
@ -868,6 +869,7 @@ static const struct gdi_dc_funcs psdrv_funcs =
|
|||
PSDRV_Polygon, /* pPolygon */
|
||||
PSDRV_Polyline, /* pPolyline */
|
||||
NULL, /* pPolylineTo */
|
||||
NULL, /* pPutImage */
|
||||
NULL, /* pRealizeDefaultPalette */
|
||||
NULL, /* pRealizePalette */
|
||||
PSDRV_Rectangle, /* pRectangle */
|
||||
|
|
|
@ -486,6 +486,7 @@ static const struct gdi_dc_funcs x11drv_funcs =
|
|||
X11DRV_GetDeviceCaps, /* pGetDeviceCaps */
|
||||
X11DRV_GetDeviceGammaRamp, /* pGetDeviceGammaRamp */
|
||||
X11DRV_GetICMProfile, /* pGetICMProfile */
|
||||
NULL, /* pGetImage */
|
||||
X11DRV_GetNearestColor, /* pGetNearestColor */
|
||||
X11DRV_GetPixel, /* pGetPixel */
|
||||
X11DRV_GetPixelFormat, /* pGetPixelFormat */
|
||||
|
@ -511,6 +512,7 @@ static const struct gdi_dc_funcs x11drv_funcs =
|
|||
X11DRV_Polygon, /* pPolygon */
|
||||
X11DRV_Polyline, /* pPolyline */
|
||||
NULL, /* pPolylineTo */
|
||||
NULL, /* pPutImage */
|
||||
X11DRV_RealizeDefaultPalette, /* pRealizeDefaultPalette */
|
||||
X11DRV_RealizePalette, /* pRealizePalette */
|
||||
X11DRV_Rectangle, /* pRectangle */
|
||||
|
|
|
@ -44,6 +44,15 @@ struct bitblt_coords
|
|||
DWORD layout; /* DC layout */
|
||||
};
|
||||
|
||||
struct gdi_image_bits
|
||||
{
|
||||
void *ptr; /* pointer to the bits */
|
||||
unsigned int offset; /* x offset of first requested pixel */
|
||||
BOOL is_copy; /* whether this is a copy of the bits that can be modified */
|
||||
void (*free)(struct gdi_image_bits *); /* callback for freeing the bits */
|
||||
void *param; /* extra parameter for callback private use */
|
||||
};
|
||||
|
||||
struct gdi_dc_funcs
|
||||
{
|
||||
INT (*pAbortDoc)(PHYSDEV);
|
||||
|
@ -87,6 +96,7 @@ struct gdi_dc_funcs
|
|||
INT (*pGetDeviceCaps)(PHYSDEV,INT);
|
||||
BOOL (*pGetDeviceGammaRamp)(PHYSDEV,LPVOID);
|
||||
BOOL (*pGetICMProfile)(PHYSDEV,LPDWORD,LPWSTR);
|
||||
DWORD (*pGetImage)(PHYSDEV,HBITMAP,BITMAPINFO*,struct gdi_image_bits*,const RECT*);
|
||||
COLORREF (*pGetNearestColor)(PHYSDEV,COLORREF);
|
||||
COLORREF (*pGetPixel)(PHYSDEV,INT,INT);
|
||||
INT (*pGetPixelFormat)(PHYSDEV);
|
||||
|
@ -112,6 +122,7 @@ struct gdi_dc_funcs
|
|||
BOOL (*pPolygon)(PHYSDEV,const POINT*,INT);
|
||||
BOOL (*pPolyline)(PHYSDEV,const POINT*,INT);
|
||||
BOOL (*pPolylineTo)(PHYSDEV,const POINT*,INT);
|
||||
DWORD (*pPutImage)(PHYSDEV,HBITMAP,BITMAPINFO*,const struct gdi_image_bits*,const RECT*,DWORD);
|
||||
UINT (*pRealizeDefaultPalette)(PHYSDEV);
|
||||
UINT (*pRealizePalette)(PHYSDEV,HPALETTE,BOOL);
|
||||
BOOL (*pRectangle)(PHYSDEV,INT,INT,INT,INT);
|
||||
|
|
Loading…
Reference in New Issue