ReactOS  0.4.14-dev-376-gaedba84
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");
74  DC_UnlockDc(dc);
75  return;
76  }
77 
78  dc->fs |= DC_FLAG_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 
86  DC_UnlockDc(dc);
87 }
FORCEINLINE PDC DC_LockDc(HDC hdc)
Definition: dc.h:219
#define ERROR_INVALID_HANDLE
Definition: compat.h:88
VOID FASTCALL IntGdiReleaseVisRgn(PDC pDC)
Definition: cliprgn.c:26
HDC dc
Definition: cylfrac.c:34
BOOL FASTCALL REGION_bOffsetRgn(_Inout_ PREGION prgn, _In_ INT cx, _In_ INT cy)
Definition: region.c:2727
smooth NULL
Definition: ftsmooth.c:416
Definition: polytest.cpp:40
BOOL FASTCALL REGION_bCopy(PREGION, PREGION)
Definition: region.c:1844
#define DC_FLAG_DIRTY_RAO
Definition: ntgdihdl.h:132
ASSERT((InvokeOnSuccess||InvokeOnError||InvokeOnCancel) ?(CompletionRoutine !=NULL) :TRUE)
HDC hdc
Definition: main.c:9
BOOL FASTCALL IntSetDefaultRegion(PDC)
Definition: dcutil.c:350
FORCEINLINE VOID DC_UnlockDc(PDC pdc)
Definition: dc.h:237
#define DPRINT1
Definition: precomp.h:8
ENGAPI VOID APIENTRY EngSetLastError(_In_ ULONG iError)
Definition: error.c:27

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  )

Definition at line 16 of file cliprgn.c.

17 {
18  INT Index = GDI_HANDLE_GET_INDEX(pDC->BaseObject.hHmgr);
20  pDC->fs |= DC_FLAG_DIRTY_RAO;
21  Entry->Flags |= GDI_ENTRY_VALIDATE_VIS; // Need to validate Vis.
22 }
#define GDI_HANDLE_GET_INDEX(h)
Definition: gdi.h:28
int32_t INT
Definition: typedefs.h:56
#define GdiHandleTable
Definition: win32nt.h:35
static const UCHAR Index[8]
Definition: usbohci.c:18
#define DC_FLAG_DIRTY_RAO
Definition: ntgdihdl.h:132
Definition: gdi.h:1
#define GDI_ENTRY_VALIDATE_VIS
Definition: ntgdihdl.h:40
base of all file and directory entries
Definition: entries.h:82

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

◆ IntGdiReleaseVisRgn()

VOID FASTCALL IntGdiReleaseVisRgn ( 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:130
VOID FASTCALL REGION_Delete(PREGION pRgn)
Definition: region.c:2468

Referenced by GdiSelectVisRgn().

◆ REGION_bCopy()

BOOL FASTCALL REGION_bCopy ( PREGION  ,
PREGION   
)

Definition at line 1844 of file region.c.

1847 {
1848  if ( !dst || !src ) return FALSE;
1849  return REGION_CopyRegion( dst, src);
1850 }
static BOOL FASTCALL REGION_CopyRegion(PREGION dst, PREGION src)
Definition: region.c:587
GLenum src
Definition: glext.h:6340
GLenum GLenum dst
Definition: glext.h:6340

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

◆ REGION_bIntersectRegion()

BOOL FASTCALL REGION_bIntersectRegion ( PREGION  ,
PREGION  ,
PREGION   
)

Definition at line 1854 of file region.c.

1858 {
1859  if ( !newReg || !reg1 || !reg2 ) return FALSE;
1860  return REGION_IntersectRegion( newReg, reg1, reg2);
1861 }
static BOOL FASTCALL REGION_IntersectRegion(PREGION newReg, PREGION reg1, PREGION reg2)
Definition: region.c:1306

Referenced by CLIPPING_UpdateGCRegion(), and IntGdiSetMetaRgn().

◆ UpdateVisRgn()

VOID FASTCALL UpdateVisRgn ( PDC  )

Definition at line 39 of file cliprgn.c.

41 {
42  INT Index = GDI_HANDLE_GET_INDEX(pdc->BaseObject.hHmgr);
43  PGDI_TABLE_ENTRY pEntry = &GdiHandleTable->Entries[Index];
44 
45  /* Setup Vis Region Attribute information to User side */
46  pEntry->Flags |= GDI_ENTRY_VALIDATE_VIS;
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 }
#define GDI_HANDLE_GET_INDEX(h)
Definition: gdi.h:28
int32_t INT
Definition: typedefs.h:56
#define ATTR_RGN_VALID
Definition: ntgdihdl.h:210
#define GdiHandleTable
Definition: win32nt.h:35
static const UCHAR Index[8]
Definition: usbohci.c:18
Definition: gdi.h:1
UCHAR Flags
Definition: ntgdihdl.h:225
#define GDI_ENTRY_VALIDATE_VIS
Definition: ntgdihdl.h:40
INT FASTCALL REGION_GetRgnBox(PREGION Rgn, PRECTL pRect)
Definition: region.c:2562

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

Variable Documentation

◆ prc

Definition at line 8 of file cliprgn.h.