GreOutlinePath

GreOutlinePath draws the boundary of the path indicated by idPath. GreOutlinePath is also used to draw area boundaries.

This function can be hooked by the presentation driver.


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

Syntax
GreOutlinePath(hdc, idPath, flOptions, pInstance, lFunction);

Parameters

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


 * idPath (LONG) - input
 * Path ID. It must be 1.


 * flOptions (ULONG) - input
 * Outline path flags.


 * Possible values are:


 * OPTH_NO_CLIPPING_REQD
 * The graphics engine will outline the path without clipping and line attributes set. This value can be used for devices that have hardware support for area fills with at least simple clipping. This output will be sent to the presentation driver via GreDrawLinesInPath for each subpath. This flag should only be used with the graphics engine version number 0x202 or later (see GreQueryEngineVersion).


 * OPTH_QRY_PATH_POINTS
 * Returns the number of points in a path. The path is not deleted. This flag should only be used with the graphics engine version number 0x202 or later (see GreQueryEngineVersion).


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


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

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_FILL_PATH_OPTIONS
 * PMERR_INV_HDC
 * PMERR_INV_IN_AREA
 * PMERR_INV_IN_PATH
 * PMERR_INV_LENGTH_OR_COUNT
 * PMERR_INV_PATH_ID
 * PMERR_INV_PICK_APERTURE_POSN
 * PMERR_INV_RECT
 * PMERR_PATH_UNKNOWN


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

Sample Code



 * 1) define INCL_GRE_PATHS
 * 2) include 

HDC     hdc;        /*  Device context handle. */ LONG    idPath;     /*  Path ID. It must be 1. */ ULONG   flOptions;  /*  Outline path flags. */ PVOID   pInstance;  /*  Pointer to instance data. */ ULONG   lFunction;  /*  High-order WORD=flags; low-order WORD=NGreOutlinePath. */ LONG    rc;         /*  Return codes. */

rc = GreOutlinePath(hdc, idPath, flOptions,      pInstance, lFunction); 