mirror of
https://github.com/reactos/reactos.git
synced 2024-08-28 22:28:36 +00:00
145 lines
3.7 KiB
C
145 lines
3.7 KiB
C
#pragma once
|
|
|
|
/* Convert WIN32 ROP into an ENG ROP */
|
|
#define WIN32_ROP3_TO_ENG_ROP4(dwRop4) ((((dwRop4) & 0x00FF0000) >> 16) | (((dwRop4) & 0x00FF0000) >> 8))
|
|
#define WIN32_ROP4_TO_ENG_ROP4(dwRop4) ((dwRop4) >> 16)
|
|
|
|
#define WIN32_ROP4_USES_SOURCE(Rop) ((((Rop) & 0xCCCC0000) >> 2) != ((Rop) & 0x33330000))
|
|
|
|
/* The range of valid ROP2 values is 1 .. 16 */
|
|
#define FIXUP_ROP2(rop2) ((((rop2) - 1) & 0xF) + 1)
|
|
|
|
/* Brush functions */
|
|
|
|
extern HDC hSystemBM;
|
|
extern HSEMAPHORE hsemDriverMgmt;
|
|
|
|
/* Line functions */
|
|
|
|
BOOL FASTCALL
|
|
IntGdiLineTo(DC *dc,
|
|
int XEnd,
|
|
int YEnd);
|
|
|
|
BOOL FASTCALL
|
|
IntGdiMoveToEx(DC *dc,
|
|
int X,
|
|
int Y,
|
|
LPPOINT Point);
|
|
|
|
BOOL FASTCALL
|
|
IntGdiPolyBezier(DC *dc,
|
|
LPPOINT pt,
|
|
DWORD Count);
|
|
|
|
BOOL FASTCALL
|
|
IntGdiPolyline(DC *dc,
|
|
LPPOINT pt,
|
|
int Count);
|
|
|
|
BOOL FASTCALL
|
|
IntGdiPolyBezierTo(DC *dc,
|
|
LPPOINT pt,
|
|
DWORD Count);
|
|
|
|
BOOL FASTCALL
|
|
IntGdiPolyPolyline(DC *dc,
|
|
LPPOINT pt,
|
|
PULONG PolyPoints,
|
|
DWORD Count);
|
|
|
|
BOOL FASTCALL
|
|
IntGdiPolylineTo(DC *dc,
|
|
LPPOINT pt,
|
|
DWORD Count);
|
|
|
|
BOOL FASTCALL
|
|
GreMoveTo( HDC hdc,
|
|
INT x,
|
|
INT y,
|
|
LPPOINT pptOut);
|
|
|
|
/* Shape functions */
|
|
|
|
BOOL
|
|
NTAPI
|
|
GreGradientFill(
|
|
HDC hdc,
|
|
PTRIVERTEX pVertex,
|
|
ULONG nVertex,
|
|
PVOID pMesh,
|
|
ULONG nMesh,
|
|
ULONG ulMode);
|
|
|
|
/* DC functions */
|
|
|
|
HDC FASTCALL
|
|
IntGdiCreateDC(PUNICODE_STRING Driver,
|
|
PUNICODE_STRING Device,
|
|
PVOID pUMdhpdev,
|
|
CONST PDEVMODEW InitData,
|
|
BOOL CreateAsIC);
|
|
|
|
/* Stock objects */
|
|
|
|
VOID FASTCALL
|
|
IntSetSysColors(UINT nColors, CONST INT *Elements, CONST COLORREF *Colors);
|
|
|
|
HGDIOBJ FASTCALL
|
|
IntGetSysColorBrush(INT Object);
|
|
|
|
DWORD FASTCALL
|
|
IntGetSysColor(INT nIndex);
|
|
|
|
/* Other Stuff */
|
|
|
|
NTSTATUS
|
|
APIENTRY
|
|
NtGdiFlushUserBatch(
|
|
VOID);
|
|
|
|
DWORD
|
|
APIENTRY
|
|
NtDxEngGetRedirectionBitmap(
|
|
DWORD Unknown0);
|
|
|
|
HBITMAP
|
|
FASTCALL
|
|
IntCreateCompatibleBitmap(
|
|
_In_ PDC Dc,
|
|
_In_ INT Width,
|
|
_In_ INT Height,
|
|
_In_ UINT Bpp,
|
|
_In_ UINT Planes);
|
|
|
|
WORD APIENTRY IntGdiSetHookFlags(HDC hDC, WORD Flags);
|
|
|
|
UINT APIENTRY IntSetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, CONST RGBQUAD *Colors);
|
|
|
|
UINT APIENTRY IntGetDIBColorTable(HDC hDC, UINT StartIndex, UINT Entries, RGBQUAD *Colors);
|
|
|
|
UINT APIENTRY
|
|
IntGetPaletteEntries(HPALETTE hpal,
|
|
UINT StartIndex,
|
|
UINT Entries,
|
|
LPPALETTEENTRY pe);
|
|
|
|
UINT APIENTRY
|
|
IntGetSystemPaletteEntries(HDC hDC,
|
|
UINT StartIndex,
|
|
UINT Entries,
|
|
LPPALETTEENTRY pe);
|
|
|
|
VOID FASTCALL CreateStockObjects (VOID);
|
|
VOID FASTCALL CreateSysColorObjects (VOID);
|
|
|
|
PPOINT GDI_Bezier (const POINT *Points, INT count, PINT nPtsOut);
|
|
|
|
BOOL FASTCALL IntFillArc( PDC dc, INT XLeft, INT YLeft, INT Width, INT Height, double StartArc, double EndArc, ARCTYPE arctype);
|
|
BOOL FASTCALL IntDrawArc( PDC dc, INT XLeft, INT YLeft, INT Width, INT Height, double StartArc, double EndArc, ARCTYPE arctype, PBRUSH pbrush);
|
|
|
|
BOOL FASTCALL IntFillEllipse( PDC dc, INT XLeft, INT YLeft, INT Width, INT Height, PBRUSH pbrush);
|
|
BOOL FASTCALL IntDrawEllipse( PDC dc, INT XLeft, INT YLeft, INT Width, INT Height, PBRUSH pbrush);
|
|
BOOL FASTCALL IntFillRoundRect( PDC dc, INT Left, INT Top, INT Right, INT Bottom, INT Wellipse, INT Hellipse, PBRUSH pbrush);
|
|
BOOL FASTCALL IntDrawRoundRect( PDC dc, INT Left, INT Top, INT Right, INT Bottom, INT Wellipse, INT Hellipse, PBRUSH pbrush);
|