ReactOS 0.4.15-dev-7968-g24a56f8
cliprgn.h File Reference
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Functions

 _Success_ (return!=ERROR) INT FASTCALL GdiGetClipBox(_In_ HDC hdc
 
VOID FASTCALL GdiSelectVisRgn (HDC hdc, PREGION prgn)
 
INT FASTCALL IntGdiExtSelectClipRgn (PDC dc, PREGION prgn, int fnMode)
 
VOID FASTCALL CLIPPING_UpdateGCRegion (DC *Dc)
 
VOID FASTCALL IntGdiReleaseRaoRgn (PDC)
 
VOID FASTCALL IntGdiReleaseVisRgn (PDC)
 
VOID FASTCALL UpdateVisRgn (PDC)
 
BOOL FASTCALL REGION_bCopy (PREGION, PREGION)
 
BOOL FASTCALL REGION_bIntersectRegion (PREGION, PREGION, PREGION)
 
int FASTCALL IntGdiExtSelectClipRect (PDC, PRECTL, int)
 

Variables

_Out_ LPRECT prc
 

Function Documentation

◆ _Success_()

_Success_ ( return!  = ERROR)

◆ CLIPPING_UpdateGCRegion()

VOID FASTCALL CLIPPING_UpdateGCRegion ( DC Dc)

◆ GdiSelectVisRgn()

VOID FASTCALL GdiSelectVisRgn ( HDC  hdc,
PREGION  prgn 
)

Definition at line 57 of file cliprgn.c.

60{
61 DC *dc;
62
63 if (!(dc = DC_LockDc(hdc)))
64 {
66 return;
67 }
68
69 if (!prgn)
70 {
71 DPRINT1("SVR: Setting NULL Region\n");
75 return;
76 }
77
78 dc->fs |= DC_DIRTY_RAO;
79
80 ASSERT(dc->prgnVis != NULL);
81 ASSERT(prgn != NULL);
82
83 REGION_bCopy(dc->prgnVis, prgn);
84 REGION_bOffsetRgn(dc->prgnVis, -dc->ptlDCOrig.x, -dc->ptlDCOrig.y);
85
87}
#define DPRINT1
Definition: precomp.h:8
VOID FASTCALL IntGdiReleaseVisRgn(PDC pDC)
Definition: cliprgn.c:26
BOOL FASTCALL REGION_bCopy(PREGION, PREGION)
Definition: region.c:1828
BOOL FASTCALL IntSetDefaultRegion(PDC)
Definition: dcutil.c:350
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
Definition: dc.h:238
@ DC_DIRTY_RAO
Definition: dc.h:23
FORCEINLINE PDC DC_LockDc(HDC hdc)
Definition: dc.h:220
#define NULL
Definition: types.h:112
#define ERROR_INVALID_HANDLE
Definition: compat.h:98
static const WCHAR dc[]
#define ASSERT(a)
Definition: mode.c:44
HDC hdc
Definition: main.c:9
Definition: polytest.cpp:41
BOOL FASTCALL REGION_bOffsetRgn(_Inout_ PREGION prgn, _In_ INT cx, _In_ INT cy)
Definition: region.c:2707
ENGAPI VOID APIENTRY EngSetLastError(_In_ ULONG iError)
Definition: error.c:22

Referenced by DC_vUpdateDC(), and DceUpdateVisRgn().

◆ IntGdiExtSelectClipRect()

int FASTCALL IntGdiExtSelectClipRect ( PDC  ,
PRECTL  ,
int   
)

◆ IntGdiExtSelectClipRgn()

INT FASTCALL IntGdiExtSelectClipRgn ( PDC  dc,
PREGION  prgn,
int  fnMode 
)

◆ IntGdiReleaseRaoRgn()

VOID FASTCALL IntGdiReleaseRaoRgn ( PDC  pDC)

Definition at line 16 of file cliprgn.c.

17{
18 INT Index = GDI_HANDLE_GET_INDEX(pDC->BaseObject.hHmgr);
20 pDC->fs |= DC_DIRTY_RAO;
21 Entry->Flags |= GDI_ENTRY_VALIDATE_VIS; // Need to validate Vis.
22}
#define GDI_HANDLE_GET_INDEX(h)
Definition: gdi.h:28
#define GDI_ENTRY_VALIDATE_VIS
Definition: ntgdihdl.h:40
base of all file and directory entries
Definition: entries.h:83
Definition: gdi.h:2
int32_t INT
Definition: typedefs.h:58
_In_ WDFCOLLECTION _In_ ULONG Index
#define GdiHandleTable
Definition: win32nt.h:37

Referenced by _Success_(), IntGdiReleaseVisRgn(), IntGdiSetMetaRgn(), IntSetDefaultRegion(), and NtGdiOffsetClipRgn().

◆ IntGdiReleaseVisRgn()

VOID FASTCALL IntGdiReleaseVisRgn ( PDC  pDC)

Definition at line 26 of file cliprgn.c.

27{
29 REGION_Delete(pDC->prgnVis);
30 pDC->prgnVis = prgnDefault; // Vis can not be NULL!!!
31}
VOID FASTCALL IntGdiReleaseRaoRgn(PDC pDC)
Definition: cliprgn.c:16
PREGION prgnDefault
Definition: region.c:129
VOID FASTCALL REGION_Delete(PREGION pRgn)
Definition: region.c:2449

Referenced by GdiSelectVisRgn().

◆ REGION_bCopy()

BOOL FASTCALL REGION_bCopy ( PREGION  dst,
PREGION  src 
)

Definition at line 1828 of file region.c.

1834{

Referenced by _Success_(), CLIPPING_UpdateGCRegion(), and GdiSelectVisRgn().

◆ REGION_bIntersectRegion()

BOOL FASTCALL REGION_bIntersectRegion ( PREGION  newReg,
PREGION  reg1,
PREGION  reg2 
)

Definition at line 1838 of file region.c.

1845{

Referenced by CLIPPING_UpdateGCRegion(), and IntGdiSetMetaRgn().

◆ UpdateVisRgn()

VOID FASTCALL UpdateVisRgn ( PDC  pdc)

Definition at line 39 of file cliprgn.c.

41{
42 INT Index = GDI_HANDLE_GET_INDEX(pdc->BaseObject.hHmgr);
44
45 /* Setup Vis Region Attribute information to User side */
47 pdc->pdcattr->VisRectRegion.iComplexity = REGION_GetRgnBox(pdc->prgnVis, &pdc->pdcattr->VisRectRegion.Rect);
48 pdc->pdcattr->VisRectRegion.AttrFlags = ATTR_RGN_VALID;
49 pEntry->Flags &= ~GDI_ENTRY_VALIDATE_VIS;
50}
PLIST_ENTRY pEntry
Definition: fxioqueue.cpp:4484
#define ATTR_RGN_VALID
Definition: ntgdihdl.h:195
INT FASTCALL REGION_GetRgnBox(PREGION Rgn, PRECTL pRect)
Definition: region.c:2543

Referenced by CLIPPING_UpdateGCRegion(), DC_vInitDc(), and NtGdiOffsetClipRgn().

Variable Documentation

◆ prc

Definition at line 8 of file cliprgn.h.