Jump to content

GreEndPath: Difference between revisions

From EDM2
Created page with "GreEndPath identifies the end of a sequence of figures that define a path. This function is valid outside a path definition but has no effect. When this function occurs outsid..."
(No difference)

Revision as of 16:43, 31 December 2019

GreEndPath identifies the end of a sequence of figures that define a path. This function is valid outside a path definition but has no effect. When this function occurs outside a path, the handling routine should ignore it.

This function can be hooked by the presentation driver.

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

Syntax

GreEndPath(hdc, flCancel, pInstance, lFunction);

Parameters

hdc (HDC) - input
Device context handle.
flCancel (ULONG) - input
The value of flCancel specifies whether this call cancels the path definition:
EA_DRAW
Create the current path
EA_CANCEL
Cancel the path definition When GreBeginPath is not called and EA_CANCEL is set, GreEndPath is valid but has no effect. :This allows the handling routine to reset a path bracket to a known state when it has no knowledge of the actual current state.
pInstance (PVOID) - input
Pointer to instance data.
lFunction (ULONG) - input
High-order WORD=flags; low-order WORD=NGreEndPath.

Return Code

fSuccess (BOOL) - returns
Return 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_BASE_ERROR
  • PMERR_COORDINATE_OVERFLOW
  • PMERR_DEV_FUNC_NOT_INSTALLED
  • PMERR_HDC_BUSY
  • PMERR_INV_END_PATH_OPTIONS
  • PMERR_INV_HDC
  • PMERR_NOT_IN_PATH
  • PMERR_PATH_LIMIT_EXCEEDED
Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.

Sample Code

#define INCL_GRE_PATHS
#include <os2.h>

HDC      hdc;        /*  Device context handle. */
ULONG    flCancel;
PVOID    pInstance;  /*  Pointer to instance data. */
ULONG    lFunction;  /*  High-order WORD=flags; low-order WORD=NGreEndPath. */
BOOL     fSuccess;   /*  Return codes. */

fSuccess = GreEndPath(hdc, flCancel, pInstance, lFunction);