win32u: Use syscall interface for more painting functions.
This commit is contained in:
parent
3b01fb113f
commit
8cc95b5487
7 changed files with 113 additions and 76 deletions
|
@ -1034,7 +1034,6 @@ static struct unix_funcs unix_funcs =
|
|||
NtGdiAbortPath,
|
||||
NtGdiAlphaBlend,
|
||||
NtGdiAngleArc,
|
||||
NtGdiArcInternal,
|
||||
NtGdiBeginPath,
|
||||
NtGdiBitBlt,
|
||||
NtGdiCloseFigure,
|
||||
|
@ -1055,7 +1054,6 @@ static struct unix_funcs unix_funcs =
|
|||
NtGdiDdDDISetVidPnSourceOwner,
|
||||
NtGdiDeleteObjectApp,
|
||||
NtGdiDoPalette,
|
||||
NtGdiEllipse,
|
||||
NtGdiEndDoc,
|
||||
NtGdiEndPath,
|
||||
NtGdiEndPage,
|
||||
|
@ -1085,7 +1083,6 @@ static struct unix_funcs unix_funcs =
|
|||
NtGdiGetKerningPairs,
|
||||
NtGdiGetNearestColor,
|
||||
NtGdiGetOutlineTextMetricsInternalW,
|
||||
NtGdiGetPixel,
|
||||
NtGdiGetRandomRgn,
|
||||
NtGdiGetRasterizerCaps,
|
||||
NtGdiGetRealizationInfo,
|
||||
|
@ -1096,10 +1093,8 @@ static struct unix_funcs unix_funcs =
|
|||
NtGdiGradientFill,
|
||||
NtGdiIntersectClipRect,
|
||||
NtGdiInvertRgn,
|
||||
NtGdiLineTo,
|
||||
NtGdiMaskBlt,
|
||||
NtGdiModifyWorldTransform,
|
||||
NtGdiMoveTo,
|
||||
NtGdiOffsetClipRgn,
|
||||
NtGdiPatBlt,
|
||||
NtGdiPlgBlt,
|
||||
|
@ -1107,11 +1102,9 @@ static struct unix_funcs unix_funcs =
|
|||
NtGdiPolyPolyDraw,
|
||||
NtGdiPtVisible,
|
||||
NtGdiRectVisible,
|
||||
NtGdiRectangle,
|
||||
NtGdiResetDC,
|
||||
NtGdiResizePalette,
|
||||
NtGdiRestoreDC,
|
||||
NtGdiRoundRect,
|
||||
NtGdiScaleViewportExtEx,
|
||||
NtGdiScaleWindowExtEx,
|
||||
NtGdiSelectBitmap,
|
||||
|
@ -1123,7 +1116,6 @@ static struct unix_funcs unix_funcs =
|
|||
NtGdiSetDIBitsToDeviceInternal,
|
||||
NtGdiSetDeviceGammaRamp,
|
||||
NtGdiSetLayout,
|
||||
NtGdiSetPixel,
|
||||
NtGdiSetSystemPaletteUse,
|
||||
NtGdiStartDoc,
|
||||
NtGdiStartPage,
|
||||
|
|
|
@ -38,6 +38,7 @@ static void * const syscalls[] =
|
|||
{
|
||||
NtGdiAddFontMemResourceEx,
|
||||
NtGdiAddFontResourceW,
|
||||
NtGdiArcInternal,
|
||||
NtGdiCombineRgn,
|
||||
NtGdiCreateBitmap,
|
||||
NtGdiCreateClientObj,
|
||||
|
@ -59,6 +60,7 @@ static void * const syscalls[] =
|
|||
NtGdiDeleteClientObj,
|
||||
NtGdiDescribePixelFormat,
|
||||
NtGdiDrawStream,
|
||||
NtGdiEllipse,
|
||||
NtGdiEqualRgn,
|
||||
NtGdiExtCreatePen,
|
||||
NtGdiExtCreateRegion,
|
||||
|
@ -75,6 +77,7 @@ static void * const syscalls[] =
|
|||
NtGdiGetFontFileInfo,
|
||||
NtGdiGetNearestPaletteIndex,
|
||||
NtGdiGetPath,
|
||||
NtGdiGetPixel,
|
||||
NtGdiGetRegionData,
|
||||
NtGdiGetRgnBox,
|
||||
NtGdiGetSpoolMessage,
|
||||
|
@ -82,13 +85,17 @@ static void * const syscalls[] =
|
|||
NtGdiGetTransform,
|
||||
NtGdiHfontCreate,
|
||||
NtGdiInitSpool,
|
||||
NtGdiLineTo,
|
||||
NtGdiMoveTo,
|
||||
NtGdiOffsetRgn,
|
||||
NtGdiOpenDCW,
|
||||
NtGdiPathToRegion,
|
||||
NtGdiPtInRegion,
|
||||
NtGdiRectInRegion,
|
||||
NtGdiRectangle,
|
||||
NtGdiRemoveFontMemResourceEx,
|
||||
NtGdiRemoveFontResourceW,
|
||||
NtGdiRoundRect,
|
||||
NtGdiSaveDC,
|
||||
NtGdiSetBitmapBits,
|
||||
NtGdiSetBitmapDimension,
|
||||
|
@ -96,6 +103,7 @@ static void * const syscalls[] =
|
|||
NtGdiSetColorAdjustment,
|
||||
NtGdiSetMagicColors,
|
||||
NtGdiSetMetaRgn,
|
||||
NtGdiSetPixel,
|
||||
NtGdiSetPixelFormat,
|
||||
NtGdiSetRectRgn,
|
||||
NtGdiSetTextJustification,
|
||||
|
|
|
@ -115,7 +115,7 @@
|
|||
@ stdcall NtGdiAlphaBlend(long long long long long long long long long long long ptr)
|
||||
@ stdcall NtGdiAngleArc(long long long long long long)
|
||||
@ stub NtGdiAnyLinkedFonts
|
||||
@ stdcall NtGdiArcInternal(long long long long long long long long long long)
|
||||
@ stdcall -syscall NtGdiArcInternal(long long long long long long long long long long)
|
||||
@ stub NtGdiBRUSHOBJ_DeleteRbrush
|
||||
@ stub NtGdiBRUSHOBJ_hGetColorTransform
|
||||
@ stub NtGdiBRUSHOBJ_pvAllocRbrush
|
||||
|
@ -376,7 +376,7 @@
|
|||
@ stub NtGdiDrawEscape
|
||||
@ stdcall -syscall NtGdiDrawStream(long long ptr)
|
||||
@ stub NtGdiDwmCreatedBitmapRemotingOutput
|
||||
@ stdcall NtGdiEllipse(long long long long long)
|
||||
@ stdcall -syscall NtGdiEllipse(long long long long long)
|
||||
@ stub NtGdiEnableEudc
|
||||
@ stdcall NtGdiEndDoc(long)
|
||||
@ stub NtGdiEndGdiRendering
|
||||
|
@ -501,7 +501,7 @@
|
|||
@ stub NtGdiGetPerBandInfo
|
||||
@ stub NtGdiGetPhysicalMonitorDescription
|
||||
@ stub NtGdiGetPhysicalMonitors
|
||||
@ stdcall NtGdiGetPixel(long long long)
|
||||
@ stdcall -syscall NtGdiGetPixel(long long long)
|
||||
@ stub NtGdiGetProcessSessionFonts
|
||||
@ stub NtGdiGetPublicFontTableChangeCookie
|
||||
@ stdcall NtGdiGetRandomRgn(long long long)
|
||||
|
@ -535,7 +535,7 @@
|
|||
@ stdcall -syscall NtGdiInitSpool()
|
||||
@ stdcall NtGdiIntersectClipRect(long long long long long)
|
||||
@ stdcall NtGdiInvertRgn(long long)
|
||||
@ stdcall NtGdiLineTo(long long long)
|
||||
@ stdcall -syscall NtGdiLineTo(long long long)
|
||||
@ stub NtGdiMakeFontDir
|
||||
@ stub NtGdiMakeInfoDC
|
||||
@ stub NtGdiMakeObjectUnXferable
|
||||
|
@ -544,7 +544,7 @@
|
|||
@ stub NtGdiMirrorWindowOrg
|
||||
@ stdcall NtGdiModifyWorldTransform(long ptr long)
|
||||
@ stub NtGdiMonoBitmap
|
||||
@ stdcall NtGdiMoveTo(long long long ptr)
|
||||
@ stdcall -syscall NtGdiMoveTo(long long long ptr)
|
||||
@ stdcall NtGdiOffsetClipRgn(long long long)
|
||||
@ stdcall -syscall NtGdiOffsetRgn(long long long)
|
||||
@ stdcall -syscall NtGdiOpenDCW(ptr ptr ptr long long ptr ptr ptr)
|
||||
|
@ -566,14 +566,14 @@
|
|||
@ stub NtGdiQueryFonts
|
||||
@ stdcall -syscall NtGdiRectInRegion(long ptr)
|
||||
@ stdcall NtGdiRectVisible(long ptr)
|
||||
@ stdcall NtGdiRectangle(long long long long long)
|
||||
@ stdcall -syscall NtGdiRectangle(long long long long long)
|
||||
@ stdcall -syscall NtGdiRemoveFontMemResourceEx(long)
|
||||
@ stdcall -syscall NtGdiRemoveFontResourceW(wstr long long long long ptr)
|
||||
@ stub NtGdiRemoveMergeFont
|
||||
@ stdcall NtGdiResetDC(long ptr ptr ptr ptr)
|
||||
@ stdcall NtGdiResizePalette(long long)
|
||||
@ stdcall NtGdiRestoreDC(long long)
|
||||
@ stdcall NtGdiRoundRect(long long long long long long long)
|
||||
@ stdcall -syscall NtGdiRoundRect(long long long long long long long)
|
||||
@ stub NtGdiSTROBJ_bEnum
|
||||
@ stub NtGdiSTROBJ_bEnumPositionsOnly
|
||||
@ stub NtGdiSTROBJ_bGetAdvanceWidths
|
||||
|
@ -609,7 +609,7 @@
|
|||
@ stub NtGdiSetMiterLimit
|
||||
@ stub NtGdiSetOPMSigningKeyAndSequenceNumbers
|
||||
@ stub NtGdiSetPUMPDOBJ
|
||||
@ stdcall NtGdiSetPixel(long long long long)
|
||||
@ stdcall -syscall NtGdiSetPixel(long long long long)
|
||||
@ stdcall -syscall NtGdiSetPixelFormat(long long)
|
||||
@ stub NtGdiSetPrivateDeviceGammaRamp
|
||||
@ stdcall -syscall NtGdiSetRectRgn(long long long long long)
|
||||
|
|
|
@ -42,8 +42,6 @@ struct unix_funcs
|
|||
BLENDFUNCTION blend_function, HANDLE xform );
|
||||
BOOL (WINAPI *pNtGdiAngleArc)( HDC hdc, INT x, INT y, DWORD radius, DWORD start_angle,
|
||||
DWORD sweep_angle );
|
||||
BOOL (WINAPI *pNtGdiArcInternal)( UINT type, HDC hdc, INT left, INT top, INT right, INT bottom,
|
||||
INT xstart, INT ystart, INT xend, INT yend );
|
||||
BOOL (WINAPI *pNtGdiBeginPath)( HDC hdc );
|
||||
BOOL (WINAPI *pNtGdiBitBlt)( HDC hdc_dst, INT x_dst, INT y_dst, INT width, INT height, HDC hdc_src,
|
||||
INT x_src, INT y_src, DWORD rop, DWORD bk_color, FLONG fl );
|
||||
|
@ -69,7 +67,6 @@ struct unix_funcs
|
|||
BOOL (WINAPI *pNtGdiDeleteObjectApp)( HGDIOBJ obj );
|
||||
LONG (WINAPI *pNtGdiDoPalette)( HGDIOBJ handle, WORD start, WORD count, void *entries,
|
||||
DWORD func, BOOL inbound );
|
||||
BOOL (WINAPI *pNtGdiEllipse)( HDC hdc, INT left, INT top, INT right, INT bottom );
|
||||
INT (WINAPI *pNtGdiEndDoc)(HDC hdc);
|
||||
BOOL (WINAPI *pNtGdiEndPath)( HDC hdc );
|
||||
INT (WINAPI *pNtGdiEndPage)( HDC hdc );
|
||||
|
@ -110,7 +107,6 @@ struct unix_funcs
|
|||
COLORREF (WINAPI *pNtGdiGetNearestColor)( HDC hdc, COLORREF color );
|
||||
UINT (WINAPI *pNtGdiGetOutlineTextMetricsInternalW)( HDC hdc, UINT cbData,
|
||||
OUTLINETEXTMETRICW *otm, ULONG opts );
|
||||
COLORREF (WINAPI *pNtGdiGetPixel)( HDC hdc, INT x, INT y );
|
||||
INT (WINAPI *pNtGdiGetRandomRgn)( HDC hdc, HRGN region, INT code );
|
||||
BOOL (WINAPI *pNtGdiGetRasterizerCaps)( RASTERIZER_STATUS *status, UINT size );
|
||||
BOOL (WINAPI *pNtGdiGetRealizationInfo)( HDC hdc, struct font_realization_info *info );
|
||||
|
@ -123,12 +119,10 @@ struct unix_funcs
|
|||
void *grad_array, ULONG ngrad, ULONG mode );
|
||||
INT (WINAPI *pNtGdiIntersectClipRect)( HDC hdc, INT left, INT top, INT right, INT bottom );
|
||||
BOOL (WINAPI *pNtGdiInvertRgn)( HDC hdc, HRGN hrgn );
|
||||
BOOL (WINAPI *pNtGdiLineTo)( HDC hdc, INT x, INT y );
|
||||
BOOL (WINAPI *pNtGdiMaskBlt)( HDC hdc, INT x_dst, INT y_dst, INT width_dst, INT height_dst,
|
||||
HDC hdc_src, INT x_src, INT y_src, HBITMAP mask,
|
||||
INT x_mask, INT y_mask, DWORD rop, DWORD bk_color );
|
||||
BOOL (WINAPI *pNtGdiModifyWorldTransform)( HDC hdc, const XFORM *xform, DWORD mode );
|
||||
BOOL (WINAPI *pNtGdiMoveTo)( HDC hdc, INT x, INT y, POINT *pt );
|
||||
INT (WINAPI *pNtGdiOffsetClipRgn)( HDC hdc, INT x, INT y );
|
||||
BOOL (WINAPI *pNtGdiPatBlt)( HDC hdc, INT left, INT top, INT width, INT height, DWORD rop );
|
||||
BOOL (WINAPI *pNtGdiPlgBlt)( HDC hdc, const POINT *point, HDC hdc_src, INT x_src, INT y_src,
|
||||
|
@ -139,13 +133,10 @@ struct unix_funcs
|
|||
DWORD count, UINT function );
|
||||
BOOL (WINAPI *pNtGdiPtVisible)( HDC hdc, INT x, INT y );
|
||||
BOOL (WINAPI *pNtGdiRectVisible)( HDC hdc, const RECT *rect );
|
||||
BOOL (WINAPI *pNtGdiRectangle)( HDC hdc, INT left, INT top, INT right, INT bottom );
|
||||
BOOL (WINAPI *pNtGdiResetDC)( HDC hdc, const DEVMODEW *devmode, BOOL *banding,
|
||||
DRIVER_INFO_2W *driver_info, void *dev );
|
||||
BOOL (WINAPI *pNtGdiResizePalette)( HPALETTE palette, UINT count );
|
||||
BOOL (WINAPI *pNtGdiRestoreDC)( HDC hdc, INT level );
|
||||
BOOL (WINAPI *pNtGdiRoundRect)( HDC hdc, INT left, INT top, INT right,
|
||||
INT bottom, INT ell_width, INT ell_height );
|
||||
BOOL (WINAPI *pNtGdiScaleViewportExtEx)( HDC hdc, INT x_num, INT x_denom,
|
||||
INT y_num, INT y_denom, SIZE *size );
|
||||
BOOL (WINAPI *pNtGdiScaleWindowExtEx)( HDC hdc, INT x_num, INT x_denom,
|
||||
|
@ -163,7 +154,6 @@ struct unix_funcs
|
|||
BOOL xform_coords, HANDLE xform );
|
||||
BOOL (WINAPI *pNtGdiSetDeviceGammaRamp)( HDC hdc, void *ptr );
|
||||
DWORD (WINAPI *pNtGdiSetLayout)( HDC hdc, LONG wox, DWORD layout );
|
||||
COLORREF (WINAPI *pNtGdiSetPixel)( HDC hdc, INT x, INT y, COLORREF color );
|
||||
UINT (WINAPI *pNtGdiSetSystemPaletteUse)( HDC hdc, UINT use );
|
||||
INT (WINAPI *pNtGdiStartDoc)( HDC hdc, const DOCINFOW *doc, BOOL *banding, INT job );
|
||||
INT (WINAPI *pNtGdiStartPage)( HDC hdc );
|
||||
|
|
|
@ -51,13 +51,6 @@ BOOL WINAPI NtGdiAngleArc( HDC hdc, INT x, INT y, DWORD radius, DWORD start_angl
|
|||
return unix_funcs->pNtGdiAngleArc( hdc, x, y, radius, start_angle, sweep_angle );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiArcInternal( UINT type, HDC hdc, INT left, INT top, INT right, INT bottom,
|
||||
INT xstart, INT ystart, INT xend, INT yend )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
return unix_funcs->pNtGdiArcInternal( type, hdc, left, top, right, bottom, xstart, ystart, xend, yend );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiBeginPath( HDC hdc )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
|
@ -125,12 +118,6 @@ LONG WINAPI NtGdiDoPalette( HGDIOBJ handle, WORD start, WORD count, void *entrie
|
|||
return unix_funcs->pNtGdiDoPalette( handle, start, count, entries, func, inbound );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiEllipse( HDC hdc, INT left, INT top, INT right, INT bottom )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
return unix_funcs->pNtGdiEllipse( hdc, left, top, right, bottom );
|
||||
}
|
||||
|
||||
INT WINAPI NtGdiEndDoc( HDC hdc )
|
||||
{
|
||||
if (!unix_funcs) return SP_ERROR;
|
||||
|
@ -325,12 +312,6 @@ UINT WINAPI NtGdiGetOutlineTextMetricsInternalW( HDC hdc, UINT cbData,
|
|||
return unix_funcs->pNtGdiGetOutlineTextMetricsInternalW( hdc, cbData, otm, opts );
|
||||
}
|
||||
|
||||
COLORREF WINAPI NtGdiGetPixel( HDC hdc, INT x, INT y )
|
||||
{
|
||||
if (!unix_funcs) return CLR_INVALID;
|
||||
return unix_funcs->pNtGdiGetPixel( hdc, x, y );
|
||||
}
|
||||
|
||||
INT WINAPI NtGdiGetRandomRgn( HDC hdc, HRGN region, INT code )
|
||||
{
|
||||
if (!unix_funcs) return -1;
|
||||
|
@ -393,12 +374,6 @@ BOOL WINAPI NtGdiInvertRgn( HDC hdc, HRGN hrgn )
|
|||
return unix_funcs->pNtGdiInvertRgn( hdc, hrgn );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiLineTo( HDC hdc, INT x, INT y )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
return unix_funcs->pNtGdiLineTo( hdc, x, y );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiMaskBlt( HDC hdc, INT x_dst, INT y_dst, INT width_dst, INT height_dst,
|
||||
HDC hdc_src, INT x_src, INT y_src, HBITMAP mask,
|
||||
INT x_mask, INT y_mask, DWORD rop, DWORD bk_color )
|
||||
|
@ -414,12 +389,6 @@ BOOL WINAPI NtGdiModifyWorldTransform( HDC hdc, const XFORM *xform, DWORD mode )
|
|||
return unix_funcs->pNtGdiModifyWorldTransform( hdc, xform, mode );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiMoveTo( HDC hdc, INT x, INT y, POINT *pt )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
return unix_funcs->pNtGdiMoveTo( hdc, x, y, pt );
|
||||
}
|
||||
|
||||
INT WINAPI NtGdiOffsetClipRgn( HDC hdc, INT x, INT y )
|
||||
{
|
||||
if (!unix_funcs) return ERROR;
|
||||
|
@ -466,12 +435,6 @@ BOOL WINAPI NtGdiRectVisible( HDC hdc, const RECT *rect )
|
|||
return unix_funcs->pNtGdiRectVisible( hdc, rect );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiRectangle( HDC hdc, INT left, INT top, INT right, INT bottom )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
return unix_funcs->pNtGdiRectangle( hdc, left, top, right, bottom );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiResetDC( HDC hdc, const DEVMODEW *devmode, BOOL *banding,
|
||||
DRIVER_INFO_2W *driver_info, void *dev )
|
||||
{
|
||||
|
@ -491,13 +454,6 @@ BOOL WINAPI NtGdiRestoreDC( HDC hdc, INT level )
|
|||
return unix_funcs->pNtGdiRestoreDC( hdc, level );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiRoundRect( HDC hdc, INT left, INT top, INT right,
|
||||
INT bottom, INT ell_width, INT ell_height )
|
||||
{
|
||||
if (!unix_funcs) return FALSE;
|
||||
return unix_funcs->pNtGdiRoundRect( hdc, left, top, right, bottom, ell_width, ell_height );
|
||||
}
|
||||
|
||||
BOOL WINAPI NtGdiScaleViewportExtEx( HDC hdc, INT x_num, INT x_denom,
|
||||
INT y_num, INT y_denom, SIZE *size )
|
||||
{
|
||||
|
@ -572,12 +528,6 @@ DWORD WINAPI NtGdiSetLayout( HDC hdc, LONG wox, DWORD layout )
|
|||
return unix_funcs->pNtGdiSetLayout( hdc, wox, layout );
|
||||
}
|
||||
|
||||
COLORREF WINAPI NtGdiSetPixel( HDC hdc, INT x, INT y, COLORREF color )
|
||||
{
|
||||
if (!unix_funcs) return CLR_INVALID;
|
||||
return unix_funcs->pNtGdiSetPixel( hdc, x, y, color );
|
||||
}
|
||||
|
||||
UINT WINAPI NtGdiSetSystemPaletteUse( HDC hdc, UINT use )
|
||||
{
|
||||
if (!unix_funcs) return SYSPAL_ERROR;
|
||||
|
|
|
@ -79,6 +79,22 @@ NTSTATUS WINAPI wow64_NtGdiAddFontResourceW( UINT *args )
|
|||
return NtGdiAddFontResourceW( str, size, files, flags, tid, dv );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiArcInternal( UINT *args )
|
||||
{
|
||||
UINT type = get_ulong( &args );
|
||||
HDC hdc = get_handle( &args );
|
||||
INT left = get_ulong( &args );
|
||||
INT top = get_ulong( &args );
|
||||
INT right = get_ulong( &args );
|
||||
INT bottom = get_ulong( &args );
|
||||
INT xstart = get_ulong( &args );
|
||||
INT ystart = get_ulong( &args );
|
||||
INT xend = get_ulong( &args );
|
||||
INT yend = get_ulong( &args );
|
||||
|
||||
return NtGdiArcInternal( type, hdc, left, top, right, bottom, xstart, ystart, xend, yend );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiCombineRgn( UINT *args )
|
||||
{
|
||||
HRGN dest = get_handle( &args );
|
||||
|
@ -318,6 +334,17 @@ NTSTATUS WINAPI wow64_NtGdiDrawStream( UINT *args )
|
|||
return NtGdiDrawStream( hdc, in, pvin );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiEllipse( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT left = get_ulong( &args );
|
||||
INT top = get_ulong( &args );
|
||||
INT right = get_ulong( &args );
|
||||
INT bottom = get_ulong( &args );
|
||||
|
||||
return NtGdiEllipse( hdc, left, top, right, bottom );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiEqualRgn( UINT *args )
|
||||
{
|
||||
HRGN hrgn1 = get_handle( &args );
|
||||
|
@ -555,6 +582,45 @@ NTSTATUS WINAPI wow64_NtGdiGetPath( UINT *args )
|
|||
return NtGdiGetPath( hdc, points, types, size );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiGetPixel( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT x = get_ulong( &args );
|
||||
INT y = get_ulong( &args );
|
||||
|
||||
return NtGdiGetPixel( hdc, x, y );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiLineTo( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT x = get_ulong( &args );
|
||||
INT y = get_ulong( &args );
|
||||
|
||||
return NtGdiLineTo( hdc, x, y );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiMoveTo( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT x = get_ulong( &args );
|
||||
INT y = get_ulong( &args );
|
||||
POINT *pt = get_ptr( &args );
|
||||
|
||||
return NtGdiMoveTo( hdc, x, y, pt );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiRectangle( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT left = get_ulong( &args );
|
||||
INT top = get_ulong( &args );
|
||||
INT right = get_ulong( &args );
|
||||
INT bottom = get_ulong( &args );
|
||||
|
||||
return NtGdiRectangle( hdc, left, top, right, bottom );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiGetRegionData( UINT *args )
|
||||
{
|
||||
HRGN hrgn = get_ptr( &args );
|
||||
|
@ -572,6 +638,19 @@ NTSTATUS WINAPI wow64_NtGdiGetRgnBox( UINT *args )
|
|||
return NtGdiGetRgnBox( hrgn, rect );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiRoundRect( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT left = get_ulong( &args );
|
||||
INT top = get_ulong( &args );
|
||||
INT right = get_ulong( &args );
|
||||
INT bottom = get_ulong( &args );
|
||||
INT ell_width = get_ulong( &args );
|
||||
INT ell_height = get_ulong( &args );
|
||||
|
||||
return NtGdiRoundRect( hdc, left, top, right, bottom, ell_width, ell_height );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiGetSpoolMessage( UINT *args )
|
||||
{
|
||||
void *ptr1 = get_ptr( &args );
|
||||
|
@ -744,6 +823,16 @@ NTSTATUS WINAPI wow64_NtGdiSetMetaRgn( UINT *args )
|
|||
return NtGdiSetMetaRgn( hdc );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiSetPixel( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
INT x = get_ulong( &args );
|
||||
INT y = get_ulong( &args );
|
||||
COLORREF color = get_ulong( &args );
|
||||
|
||||
return NtGdiSetPixel( hdc, x, y, color );
|
||||
}
|
||||
|
||||
NTSTATUS WINAPI wow64_NtGdiSetPixelFormat( UINT *args )
|
||||
{
|
||||
HDC hdc = get_handle( &args );
|
||||
|
|
|
@ -24,6 +24,7 @@
|
|||
#define ALL_WIN32_SYSCALLS \
|
||||
SYSCALL_ENTRY( NtGdiAddFontMemResourceEx ) \
|
||||
SYSCALL_ENTRY( NtGdiAddFontResourceW ) \
|
||||
SYSCALL_ENTRY( NtGdiArcInternal ) \
|
||||
SYSCALL_ENTRY( NtGdiCombineRgn ) \
|
||||
SYSCALL_ENTRY( NtGdiCreateBitmap ) \
|
||||
SYSCALL_ENTRY( NtGdiCreateClientObj ) \
|
||||
|
@ -45,6 +46,7 @@
|
|||
SYSCALL_ENTRY( NtGdiDeleteClientObj ) \
|
||||
SYSCALL_ENTRY( NtGdiDescribePixelFormat ) \
|
||||
SYSCALL_ENTRY( NtGdiDrawStream ) \
|
||||
SYSCALL_ENTRY( NtGdiEllipse ) \
|
||||
SYSCALL_ENTRY( NtGdiEqualRgn ) \
|
||||
SYSCALL_ENTRY( NtGdiExtCreatePen ) \
|
||||
SYSCALL_ENTRY( NtGdiExtCreateRegion ) \
|
||||
|
@ -61,6 +63,7 @@
|
|||
SYSCALL_ENTRY( NtGdiGetFontFileInfo ) \
|
||||
SYSCALL_ENTRY( NtGdiGetNearestPaletteIndex ) \
|
||||
SYSCALL_ENTRY( NtGdiGetPath ) \
|
||||
SYSCALL_ENTRY( NtGdiGetPixel ) \
|
||||
SYSCALL_ENTRY( NtGdiGetRegionData ) \
|
||||
SYSCALL_ENTRY( NtGdiGetRgnBox ) \
|
||||
SYSCALL_ENTRY( NtGdiGetSpoolMessage ) \
|
||||
|
@ -68,13 +71,17 @@
|
|||
SYSCALL_ENTRY( NtGdiGetTransform ) \
|
||||
SYSCALL_ENTRY( NtGdiHfontCreate ) \
|
||||
SYSCALL_ENTRY( NtGdiInitSpool ) \
|
||||
SYSCALL_ENTRY( NtGdiLineTo ) \
|
||||
SYSCALL_ENTRY( NtGdiMoveTo ) \
|
||||
SYSCALL_ENTRY( NtGdiOffsetRgn ) \
|
||||
SYSCALL_ENTRY( NtGdiOpenDCW ) \
|
||||
SYSCALL_ENTRY( NtGdiPathToRegion ) \
|
||||
SYSCALL_ENTRY( NtGdiPtInRegion ) \
|
||||
SYSCALL_ENTRY( NtGdiRectInRegion ) \
|
||||
SYSCALL_ENTRY( NtGdiRectangle ) \
|
||||
SYSCALL_ENTRY( NtGdiRemoveFontMemResourceEx ) \
|
||||
SYSCALL_ENTRY( NtGdiRemoveFontResourceW ) \
|
||||
SYSCALL_ENTRY( NtGdiRoundRect ) \
|
||||
SYSCALL_ENTRY( NtGdiSaveDC ) \
|
||||
SYSCALL_ENTRY( NtGdiSetBitmapBits ) \
|
||||
SYSCALL_ENTRY( NtGdiSetBitmapDimension ) \
|
||||
|
@ -82,6 +89,7 @@
|
|||
SYSCALL_ENTRY( NtGdiSetColorAdjustment ) \
|
||||
SYSCALL_ENTRY( NtGdiSetMagicColors ) \
|
||||
SYSCALL_ENTRY( NtGdiSetMetaRgn ) \
|
||||
SYSCALL_ENTRY( NtGdiSetPixel ) \
|
||||
SYSCALL_ENTRY( NtGdiSetPixelFormat ) \
|
||||
SYSCALL_ENTRY( NtGdiSetRectRgn ) \
|
||||
SYSCALL_ENTRY( NtGdiSetTextJustification ) \
|
||||
|
|
Loading…
Add table
Reference in a new issue