Jump to content

GreDestroyRegion

From EDM2
Revision as of 18:36, 5 April 2025 by Ak120 (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

GreDestroyRegion deletes the specified region unless it has been selected as a clipping region. In this case, an error is raised. When a null region is specified, GreDestroyRegion does not delete any region and returns without logging an error.

This function can be hooked by the presentation driver.

Simulation support
This function is simulated by a handling routine in the graphics engine.

Syntax

GreDestroyRegion(hdc, hrgn, pInstance, lFunction)

Parameters

hdc (HDC) - input
Device context handle.
hrgn (HRGN) - input
Region handle.
pInstance (PVOID) - input
Pointer to instance data.
lFunction (ULONG) - input
High-order WORD=flags; low-order WORD=NGreDestroyRegion.

Returns

fSuccess (BOOL) - returns
Reurn codes.
This function returns BOOLEAN (fSuccess).
  • TRUE Successful
  • FALSE Error
Possible Errors Detected: When an error is detected, the handling routine must call WinSetErrorInfo to post the condition. Error codes for conditions that the handling routine is expected to check include:
  • PMERR_HRGN_BUSY
  • PMERR_INV_HRGN
  • PMERR_REGION_IS_CLIP_REGION
Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.

Sample

#define INCL_GRE_REGIONS
#include <os2.h>

HDC      hdc;        /*  Device context handle. */
HRGN     hrgn;       /*  Region handle. */
PVOID    pInstance;  /*  Pointer to instance data. */
ULONG    lFunction;  /*  High-order WORD=flags; low-order WORD=NGreDestroyRegion. */
BOOL     fSuccess;   /*  Reurn codes. */

fSuccess = GreDestroyRegion(hdc, hrgn, pInstance, lFunction);