## wxRegion

A wxRegion represents a simple or complex region on a device context or window. It uses reference counting, so copying and assignment operations are fast.

Derived from

wxGDIObject
wxObject

Include files

<wx/region.h>

See also

wxRegionIterator

Members

wxRegion::wxRegion
wxRegion::~wxRegion
wxRegion::Clear
wxRegion::Contains
wxRegion::GetBox
wxRegion::Intersect
wxRegion::IsEmpty
wxRegion::Subtract
wxRegion::Union
wxRegion::Xor
wxRegion::operator =

### wxRegion::wxRegion

wxRegion()

Default constructor.

wxRegion(long x, long y, long width, long height)

Constructs a rectangular region with the given position and size.

wxRegion(const wxPoint& topLeft, const wxPoint& bottomRight)

Constructs a rectangular region from the top left point and the bottom right point.

wxRegion(const wxRect& rect)

Constructs a rectangular region a wxRect object.

wxRegion(const wxRegion& region)

Constructs a region by copying another region.

### wxRegion::~wxRegion

~wxRegion()

Destructor.

### wxRegion::Clear

void Clear()

Clears the current region.

### wxRegion::Contains

wxRegionContain Contains(long& x, long& y) const

Returns a value indicating whether the given point is contained within the region.

wxRegionContain Contains(const wxPoint& pt) const

Returns a value indicating whether the given point is contained within the region.

wxRegionContain Contains(long& x, long& y, long& width, long& height) const

Returns a value indicating whether the given rectangle is contained within the region.

wxRegionContain Contains(const wxRect& rect) const

Returns a value indicating whether the given rectangle is contained within the region.

Return value

The return value is one of wxOutRegion, wxPartRegion and wxInRegion.

On Windows, only wxOutRegion and wxInRegion are returned; a value wxInRegion then indicates that all or some part of the region is contained in this region.

### wxRegion::GetBox

void GetBox(long& x, long& y, long& width, long& height) const

Returns the outer bounds of the region.

wxRect GetBox() const

Returns the outer bounds of the region.

### wxRegion::Intersect

bool Intersect(long x, long y, long width, long height)

Finds the intersection of this region and another, rectangular region, specified using position and size.

bool Intersect(const wxRect& rect)

Finds the intersection of this region and another, rectangular region.

bool Intersect(const wxRegion& region)

Finds the intersection of this region and another region.

Return value

TRUE if successful, FALSE otherwise.

Remarks

Creates the intersection of the two regions, that is, the parts which are in both regions. The result is stored in this region.

### wxRegion::IsEmpty

bool IsEmpty() const

Returns TRUE if the region is empty, FALSE otherwise.

### wxRegion::Subtract

bool Subtract(const wxRect& rect)

Subtracts a rectangular region from this region.

bool Subtract(const wxRegion& region)

Subtracts a region from this region.

Return value

TRUE if successful, FALSE otherwise.

Remarks

This operation combines the parts of 'this' region that are not part of the second region. The result is stored in this region.

### wxRegion::Union

bool Union(long x, long y, long width, long height)

Finds the union of this region and another, rectangular region, specified using position and size.

bool Union(const wxRect& rect)

Finds the union of this region and another, rectangular region.

bool Union(const wxRegion& region)

Finds the union of this region and another region.

Return value

TRUE if successful, FALSE otherwise.

Remarks

This operation creates a region that combines all of this region and the second region. The result is stored in this region.

### wxRegion::Xor

bool Xor(long x, long y, long width, long height)

Finds the Xor of this region and another, rectangular region, specified using position and size.

bool Xor(const wxRect& rect)

Finds the Xor of this region and another, rectangular region.

bool Xor(const wxRegion& region)

Finds the Xor of this region and another region.

Return value

TRUE if successful, FALSE otherwise.

Remarks

This operation creates a region that combines all of this region and the second region, except for any overlapping areas. The result is stored in this region.

### wxRegion::operator =

void operator =(const wxRegion& region)

Copies region by reference counting.