GreFullArcInterior

GreFullArcInterior draws a filled, full arc by using the current pattern attributes with its center at the current (X,Y) position. The dimensions of the arc are defined by a multiplier that is applied to the current arc parameters. GreFullArcxxx functions do not affect the current position. The arc boundary is not drawn. When the COM_PATH or the COM_AREA flag is set, this function must raise an error.

When correlating, the handling routine must return a hit when the pick aperture intersects the interior, or is completely within the interior, even when the mix is LEAVEALONE. 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
GreFullArcInterior(hdc, fxMultiplier, pInstance, lFunction);

Parameters

 * hdc (HDC) - input
 * Device context handle.


 * fxMultiplier (FIXED) - input
 * Multiplier.


 * 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 be positive or 0.


 * pInstance (PVOID) - input
 * Pointer to instance data.


 * lFunction (ULONG) - input
 * High-order WORD=flags; low-order WORD=NGreFullArcInterior.

Returns

 * 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_ALREADY_IN_AREA
 * PMERR_BASE_ERROR
 * PMERR_BITMAP_NOT_SELECTED
 * PMERR_COORDINATE_OVERFLOW
 * PMERR_DEV_FUNC_NOT_INSTALLED
 * PMERR_EXCEEDS_MAX_SEG_LENGTH
 * PMERR_HDC_BUSY
 * PMERR_HRGN_BUSY
 * PMERR_HUGE_FONTS_NOT_SUPPORTED
 * PMERR_INSUFFICIENT_MEMORY
 * PMERR_INV_AREA_CONTROL
 * PMERR_INV_BACKGROUND_COL_ATTR
 * PMERR_INV_BACKGROUND_MIX_ATTR
 * PMERR_INV_CHAR_DIRECTION_ATTR
 * PMERR_INV_CHAR_MODE_ATTR
 * PMERR_INV_CODEPAGE
 * PMERR_INV_COLOR_ATTR
 * PMERR_INV_COLOR_DATA
 * PMERR_INV_COLOR_INDEX
 * PMERR_INV_COORD_SPACE
 * PMERR_INV_COORDINATE
 * PMERR_INV_HDC
 * PMERR_INV_HRGN
 * PMERR_INV_IN_AREA
 * PMERR_INV_IN_PATH
 * PMERR_INV_LENGTH_OR_COUNT
 * PMERR_INV_LINE_TYPE_ATTR
 * PMERR_INV_MIX_ATTR
 * PMERR_INV_MULTIPLIER
 * PMERR_INV_NESTED_FIGURES
 * PMERR_INV_PATTERN_REF_PT_ATTR
 * PMERR_INV_PATTERN_SET_ATTR
 * PMERR_INV_PATTERN_SET_FONT
 * PMERR_INV_PICK_APERTURE_POSN
 * PMERR_INV_RECT
 * PMERR_INV_REGION_CONTROL
 * PMERR_NOT_IN_AREA
 * PMERR_NOT_IN_PATH
 * PMERR_PATH_LIMIT_EXCEEDED
 * PMERR_PATH_UNKNOWN
 * PMERR_REGION_IS_CLIP_REGION


 * Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.

Sample

 * 1) define INCL_GRE_ARCS
 * 2) include 

HDC     hdc;           /*  Device context handle. */ FIXED   fxMultiplier;  /*  Multiplier. */ PVOID   pInstance;     /*  Pointer to instance data. */ ULONG   lFunction;     /*  High-order WORD=flags; low-order WORD=NGreFullArcInterior. */ LONG    rc;            /*  Return codes. */

rc = GreFullArcInterior(hdc, fxMultiplier,      pInstance, lFunction);