GreFullArcBoundary
Appearance
GreFullArcBoundary draws a line by using the current line attributes around the edge of a full arc centered on the current (X,Y) position. The dimensions of the arc are defined as a multiplier that is applied to the current arc parameters. GreFullArcxxx functions do not affect the current position.
When correlating, the handling routine must return a hit when the pick aperture intersects the boundary. See Mix Modes.
This function can be hooked by the presentation driver.
- Simulation support
- This function is simulated by a handling routine in the graphics engine.
Syntax
GreFullArcBoundary(hdc, fxMultiplier, pInstance, lFunction);
Parameters
- hdc (HDC) - input
- Device context handle.
- fxMultiplier (FIXED) - input
- Multiplier.
- The value of this parameter defines the size of the required arc in relation to an arc drawn with the current arc parameters. The multiplier is a fixed-point value. The high-order WORD contains the integer portion; the low-order WORD contains the fractional portion. A value of 64KB gives a multiplier of 1. The implementation limit of the multiplier is 255. This value must not be negative.
- pInstance (PVOID) - input
- Pointer to instance data.
- lFunction (ULONG) - input
- High-order WORD=flags; low-order WORD=NGreFullArcBoundary.
Return Code
- rc (LONG) - returns
- Return codes.
- This function returns an integer (cHits) indicating, where appropriate, whether correlation hits were detected:
- GPI_OK Successful
- GPI_HITS Successful with correlate hit (returned by display drivers when the correlate flag is ON, and a hit is detected)
- GPI_ERROR 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_BASE_ERROR
- PMERR_BITMAP_NOT_SELECTED
- PMERR_COORDINATE_OVERFLOW
- PMERR_DEV_FUNC_NOT_INSTALLED
- PMERR_HDC_BUSY
- PMERR_INV_COLOR_DATA
- PMERR_INV_COLOR_INDEX
- PMERR_INV_COORD_SPACE
- PMERR_INV_HDC
- PMERR_INV_IN_AREA
- PMERR_INV_IN_PATH
- PMERR_INV_LENGTH_OR_COUNT
- PMERR_INV_MULTIPLIER
- PMERR_INV_NESTED_FIGURES
- PMERR_INV_PICK_APERTURE_POSN
- PMERR_INV_RECT
- PMERR_NOT_IN_PATH
- PMERR_PATH_LIMIT_EXCEEDED
- PMERR_PATH_UNKNOWN
- Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.
Sample Code
#define INCL_GRE_ARCS #include <os2.h> HDC hdc; /* Device context handle. */ FIXED fxMultiplier; /* Multiplier. */ PVOID pInstance; /* Pointer to instance data. */ ULONG lFunction; /* High-order WORD=flags; low-order WORD=NGreFullArcBoundary. */ LONG rc; /* Return codes. */ rc = GreFullArcBoundary(hdc, fxMultiplier, pInstance, lFunction);