ExtSelectClipRgn

The ExtSelectClipRgn function combines the specified region with the current clipping region by using the specified mode.

int ExtSelectClipRgn(
  HDC hdc,          // handle to device context
  HRGN hrgn,        // handle to region
  int fnMode        // region-selection mode
);
 

Parameters

hdc
Handle to the device context.
hrgn
Handle to the region to be selected. This handle can only be NULL when the RGN_COPY mode is specified.
fnMode
Specifies the operation to be performed. It must be one of the following values:
Value Meaning
RGN_AND The new clipping region combines the overlapping areas of the current clipping region and the region identified by hrgn.
RGN_COPY The new clipping region is a copy of the region identified by hrgn. This is identical to SelectClipRgn. If the region identified by hrgn is NULL, the new clipping region is the default clipping region (the default clipping region is a null region).
RGN_DIFF The new clipping region combines the areas of the current clipping region with those areas excluded from the region identified by hrgn.
RGN_OR The new clipping region combines the current clipping region and the region identified by hrgn.
RGN_XOR The new clipping region combines the current clipping region and the region identified by hrgn but excludes any overlapping areas.

Return Values

The return value specifies the new clipping region's complexity; it can be any one of the following values:

Value Meaning
NULLREGION Region is empty.
SIMPLEREGION Region is a single rectangle.
COMPLEXREGION Region is more than one rectangle.
ERROR An error occurred.

Remarks

If an error occurs when this function is called, the previous clipping region for the specified device context is not affected.

The ExtSelectClipRgn function assumes that the coordinates for the specified region are specified in device units.

Only a copy of the region identified by the hrgn parameter is used. The region itself can be reused after this call or it can be deleted.

QuickInfo

  Windows NT: Requires version 3.1 or later.
  Windows: Requires Windows 95 or later.
  Windows CE: Unsupported.
  Header: Declared in wingdi.h.
  Import Library: Use gdi32.lib.

See Also

Clipping Overview, Clipping Functions, SelectClipRgn