22 if (pdcattr->
hbrush != pdc->dclevel.pbrFill->BaseObject.hHmgr)
30 pdc->dclevel.pbrFill = pbrFill;
38 pdcattr->
hbrush = pdc->dclevel.pbrFill->BaseObject.hHmgr;
68 if (pdcattr->
hpen != pdc->dclevel.pbrLine->BaseObject.hHmgr)
76 pdc->dclevel.pbrLine = pbrLine;
84 pdcattr->
hpen = pdc->dclevel.pbrLine->BaseObject.hHmgr;
137 pdcattr->
ulDirty_ &= ~DIRTY_BACKGROUND;
145 pdc->dclevel.ptlBrushOrigin.x =
x;
146 pdc->dclevel.ptlBrushOrigin.y =
y;
149 pdc->ptlFillOrigin.x =
x + pdc->ptlDCOrig.x;
150 pdc->ptlFillOrigin.y =
y + pdc->ptlDCOrig.y;
202 BOOL ForceBackground)
205 HPALETTE oldPal =
NULL;
225 if ((!pdc->dclevel.pSurface) ||
226 (
BitsPerFormat(pdc->dclevel.pSurface->SurfObj.iBitmapFormat) <= 8
228 (
BitsPerFormat(pdc->dclevel.pSurface->SurfObj.iBitmapFormat) > 8))
231 oldPal = pdc->dclevel.hpal;
232 pdc->dclevel.hpal = hpal;
273 hOrgBrush = pDC->pdcattr->hbrush;
274 pDC->pdcattr->hbrush = hBrush;
303 hOrgPen = pDC->pdcattr->hpen;
304 pDC->pdcattr->hpen = hPen;
332 if ((cBitsPixel == 1) || (cBitsPixel == pdc->ppdev->gdiinfo.cBitsPixel))
371 psurfOld = pdc->dclevel.pSurface;
399 pdc->dclevel.sizl.cx = 1;
400 pdc->dclevel.sizl.cy = 1;
446 pdc->pdcattr->ulDirty_ &= ~DC_DIBSECTION;
451 pdc->dclevel.pSurface = psurfNew;
471 pdc->dclevel.sizl.cx,
472 pdc->dclevel.sizl.cy);
489 PPATH pPath, pNewPath;
500 pdcattr = pdc->pdcattr;
540 pdc->dclevel.flPath &= ~DCPATH_ACTIVE;
541 pdc->dclevel.hPath =
NULL;
564 hlfntOld = pdc->dclevel.plfnt->BaseObject.hHmgr;
567 if (hlfntNew != hlfntOld)
577 pdc->dclevel.plfnt = plfntNew;
578 pdc->pdcattr->hlfntNew = hlfntNew;
582 pdc->pdcattr->ulDirty_ &= ~SLOW_WIDTHS;
587 pdc->pdcattr->hlfntNew = hlfntOld;
642 pdcattr = pdc->pdcattr;
654 SelObject = pdcattr->
hpen;
658 SelObject = pdcattr->
hbrush;
662 SelObject = pdc->dclevel.hpal;
671 SURFACE *psurf = pdc->dclevel.pSurface;
677 DPRINT1(
"FIXME: NtGdiGetCurrentObject() ObjectType OBJ_COLORSPACE not supported yet!\n");
728 prgnSrc = pdc->dclevel.prgnClip;
732 prgnSrc = pdc->dclevel.prgnMeta;
740 prgnSrc = pdc->prgnAPI;
742 else if (pdc->dclevel.prgnClip)
744 prgnSrc = pdc->dclevel.prgnClip;
746 else if (pdc->dclevel.prgnMeta)
748 prgnSrc = pdc->dclevel.prgnMeta;
753 prgnSrc = pdc->prgnVis;
VOID FASTCALL CLIPPING_UpdateGCRegion(PDC pDC)
INT FASTCALL IntGdiExtSelectClipRgn(PDC dc, PREGION prgn, int fnMode)
_Notnull_ PBRUSH pbrDefaultBrush
FORCEINLINE VOID DC_vSelectPalette(PDC pdc, PPALETTE ppal)
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
BOOL FASTCALL GreSetBrushOrg(HDC, INT, INT, LPPOINT)
FORCEINLINE PDC DC_LockDc(HDC hdc)
BOOL NTAPI DC_bIsBitmapCompatible(PDC pdc, PSURFACE psurf)
VOID FASTCALL DC_vUpdateLineBrush(PDC pdc)
HBITMAP APIENTRY NtGdiSelectBitmap(IN HDC hdc, IN HBITMAP hbmp)
HFONT NTAPI DC_hSelectFont(_In_ PDC pdc, _In_ HFONT hlfntNew)
HANDLE APIENTRY NtGdiGetDCObject(HDC hDC, INT ObjectType)
VOID FASTCALL DC_vUpdateTextBrush(PDC pdc)
HPALETTE NTAPI GdiSelectPalette(HDC hDC, HPALETTE hpal, BOOL ForceBackground)
ULONG APIENTRY NtGdiEnumObjects(IN HDC hdc, IN INT iObjectType, IN ULONG cjBuf, OUT OPTIONAL PVOID pvBuf)
VOID FASTCALL DC_vUpdateBackgroundBrush(PDC pdc)
VOID NTAPI DC_vSetBrushOrigin(PDC pdc, LONG x, LONG y)
BOOL APIENTRY NtGdiSelectClipPath(HDC hDC, int Mode)
HBRUSH APIENTRY NtGdiSelectBrush(IN HDC hDC, IN HBRUSH hBrush)
INT APIENTRY NtGdiGetRandomRgn(HDC hdc, HRGN hrgnDest, INT iCode)
VOID FASTCALL DC_vUpdateFillBrush(PDC pdc)
HFONT APIENTRY NtGdiSelectFont(_In_ HDC hdc, _In_ HFONT hfont)
HPEN APIENTRY NtGdiSelectPen(IN HDC hDC, IN HPEN hPen)
#define ERROR_NOT_ENOUGH_MEMORY
#define NT_SUCCESS(StatCode)
#define ERROR_INVALID_PARAMETER
#define ERROR_INVALID_HANDLE
VOID NTAPI EBRUSHOBJ_vUpdateFromDC(EBRUSHOBJ *pebo, PBRUSH pbrush, PDC pdc)
VOID FASTCALL EBRUSHOBJ_vSetSolidRGBColor(EBRUSHOBJ *pebo, COLORREF crColor)
VOID NTAPI ProbeForWrite(IN PVOID Address, IN SIZE_T Length, IN ULONG Alignment)
NTSTATUS FASTCALL TextIntRealizeFont(HFONT FontHandle, PTEXTOBJ pTextObj)
#define BRUSH_ShareLockBrush(hBrush)
#define BRUSH_ShareUnlockBrush(pBrush)
#define GDI_OBJECT_TYPE_BRUSH
#define GDI_OBJECT_TYPE_COLORSPACE
#define GDI_OBJECT_TYPE_BITMAP
#define GDI_OBJECT_TYPE_PALETTE
#define GDI_OBJECT_TYPE_EXTPEN
#define GDI_OBJECT_TYPE_FONT
#define GDI_OBJECT_TYPE_PEN
#define ASSERT_NOGDILOCKS()
GLint GLint GLint GLint GLint x
GLint GLint GLint GLint GLint GLint y
#define EXCEPTION_EXECUTE_HANDLER
#define InterlockedCompareExchangePointer
static DWORD *static HFONT(WINAPI *pCreateFontIndirectExA)(const ENUMLOGFONTEXDVA *)
_In_ UINT _Out_ PPOINTL pptOut
#define PATH_UnlockPath(pPath)
#define PATH_LockPath(hPath)
#define _SEH2_EXCEPT(...)
#define _SEH2_YIELD(__stmt)
PULONG MinorVersion OPTIONAL
UCHAR gajBitsPerFormat[11]
#define SURFACE_ShareUnlockSurface(pBMObj)
#define SURFACE_ShareLockSurface(hBMObj)
#define BitsPerFormat(Format)
#define PALETTE_ShareLockPalette(hpal)
#define PALETTE_ShareUnlockPalette(ppal)
BOOL FASTCALL PATH_PathToRegion(PPATH pPath, INT Mode, PREGION Rgn)
BOOL FASTCALL PATH_Delete(HPATH hPath)
PPATH FASTCALL PATH_FlattenPath(PPATH pPath)
PBRUSH FASTCALL PEN_ShareLockPen(HPEN hobj)
VOID FASTCALL REGION_Delete(PREGION pRgn)
PREGION FASTCALL REGION_LockRgn(_In_ HRGN hrgn)
VOID FASTCALL REGION_SetRectRgn(PREGION rgn, INT LeftRect, INT TopRect, INT RightRect, INT BottomRect)
VOID FASTCALL REGION_UnlockRgn(_In_ PREGION prgn)
PREGION FASTCALL IntSysCreateRectpRgn(INT LeftRect, INT TopRect, INT RightRect, INT BottomRect)
BOOL FASTCALL REGION_bOffsetRgn(_Inout_ PREGION prgn, _In_ INT cx, _In_ INT cy)
INT FASTCALL IntGdiCombineRgn(PREGION prgnDest, PREGION prgnSrc1, PREGION prgnSrc2, INT iCombineMode)
#define LFONT_ShareLockFont(hfont)
#define LFONT_ShareUnlockFont(plfnt)
#define success(from, fromstr, to, tostr)
ENGAPI VOID APIENTRY EngSetLastError(_In_ ULONG iError)
#define ERROR_CAN_NOT_COMPLETE