Jump to content

GreBeginPath

From EDM2
Revision as of 23:36, 17 February 2019 by Martini (talk | contribs) (Created page with "GreBeginPath identifies the start of a sequence of figures that define a path. Note that functions that set character attributes are not allowed within a path definition. When...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

GreBeginPath identifies the start of a sequence of figures that define a path. Note that functions that set character attributes are not allowed within a path definition. When GreBoxxxx or GreFullArcxxx functions are used within a path definition, they generate closed figures and must not be used within another figure definition. Refer to function "GpiBeginPath" in the Presentation Manager Programming Reference for further information.

This function can be hooked by the presentation driver.

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

Syntax

fSuccess = GreBeginPath(hdc, idPath, pInstance, lFunction);

Parameters

hdc (HDC) - input
Device context handle.
idPath (LONG) - input
Path identifier. This value must be 1.
pInstance (PVOID) - input
Pointer to instance data.
lFunction (ULONG) - input
High-order WORD=flags; low order WORD=NGreBeginPath.

Return Code

fSuccess (BOOL) - returns
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_ALREADY_IN_PATH
  • PMERR_BASE_ERROR
  • PMERR_COORDINATE_OVERFLOW
  • PMERR_DEV_FUNC_NOT_INSTALLED
  • PMERR_HDC_BUSY
  • PMERR_INV_COORD_SPACE
  • PMERR_INV_HDC
  • PMERR_INV_IN_AREA
  • PMERR_INV_LENGTH_OR_COUNT
  • PMERR_INV_PATH_ID
  • PMERR_PATH_LIMIT_EXCEEDED
Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.

Remarks

The following functions are valid when received after GreBeginArea and before GreEndArea:

  • GreArc
  • GreAreaSetAttributes (valid only for color, mix, and valid line attributes)
  • GreBoxBoundary
  • GreDeviceSetAttributes (valid only for color, mix, and valid line attributes)
  • GreDeviceSetGlobalAttribute (valid only for foreground color and mix)
  • GreFullArcBoundary
  • GrePartialArc
  • GrePolyFillet
  • GrePolyFilletSharp
  • GrePolyLine
  • GrePolySpline
  • GreQueryCharStringPos
  • GreQueryTextBox
  • GreSetArcParameters
  • GreSetAttributes (valid only for color, mix, and valid line attributes)
  • GreSetCurrentPosition
  • GreSetGlobalAttribute (valid only for foreground color and mix)
  • GreSetModelXform

Example Code

#define INCL_GRE_PATHS
#include <os2.h>

HDC      hdc;        /*  Device context handle. */
LONG     idPath;     /*  Path identifier. This value must be 1. */
PVOID    pInstance;  /*  Pointer to instance data. */
ULONG    lFunction;  /*  High-order WORD=flags; low order WORD=NGreBeginPath. */
BOOL     fSuccess;   /*  This function returns BOOLEAN (fSuccess). */

fSuccess = GreBeginPath(hdc, idPath, pInstance, lFunction);

Related Functions