diff --git a/reactos/win32ss/gdi/ntgdi/dc.h b/reactos/win32ss/gdi/ntgdi/dc.h index dd685f48d52..b72ea214396 100644 --- a/reactos/win32ss/gdi/ntgdi/dc.h +++ b/reactos/win32ss/gdi/ntgdi/dc.h @@ -180,6 +180,7 @@ COLORREF FASTCALL GreGetBkColor(HDC); COLORREF FASTCALL IntSetDCBrushColor(HDC,COLORREF); COLORREF FASTCALL IntSetDCPenColor(HDC,COLORREF); int FASTCALL GreGetGraphicsMode(HDC); +BOOL FASTCALL GreSetBrushOrg(HDC,INT,INT,LPPOINT); INIT_FUNCTION NTSTATUS NTAPI InitDcImpl(VOID); PPDEVOBJ FASTCALL IntEnumHDev(VOID); diff --git a/reactos/win32ss/gdi/ntgdi/dcutil.c b/reactos/win32ss/gdi/ntgdi/dcutil.c index 8ec7a8cfc5a..75dbc51c54d 100644 --- a/reactos/win32ss/gdi/ntgdi/dcutil.c +++ b/reactos/win32ss/gdi/ntgdi/dcutil.c @@ -222,6 +222,31 @@ IntSetDCBrushColor(HDC hdc, COLORREF crColor) return OldColor; } +BOOL FASTCALL +GreSetBrushOrg( + HDC hdc, + INT x, + INT y, + LPPOINT pptOut) +{ + PDC pdc = DC_LockDc(hdc); + if (pdc == NULL) + { + EngSetLastError(ERROR_INVALID_HANDLE); + return FALSE; + } + + if (pptOut != NULL) + { + *pptOut = pdc->pdcattr->ptlBrushOrigin; + } + + DC_vSetBrushOrigin(pdc, x, y); + + DC_UnlockDc(pdc); + return TRUE; +} + COLORREF FASTCALL IntSetDCPenColor(HDC hdc, COLORREF crColor) {