GpiQueryCurrentPosition

Description
This function returns the value of current position.

Syntax

 * 1) define INCL_GPIPRIMITIVES /* Or use INCL_GPI, INCL_PM, */
 * 2) include 

HPS       hps;        /*  Presentation-space handle. */ PPOINTL   pptlPoint;  /*  Current position. */ BOOL      rc;         /*  Success indicator. */

rc = GpiQueryCurrentPosition(hps, pptlPoint);

Parameters

 * hps (HPS) - input : Presentation-space handle.


 * pptlPoint (PPOINTL) - output : Current position.

Return Code

 * rc (BOOL) - returns : Success indicator.


 * TRUE         Successful completion
 * FALSE        Error occurred.

Errors
Possible returns from WinGetLastError


 * PMERR_INV_HPS (0x207F) : An invalid presentation-space handle was specified.
 * PMERR_PS_BUSY (0x20F4) : An attempt was made to access the presentation space from more than one thread simultaneously.
 * PMERR_INV_IN_RETAIN_MODE (0x208C) : An attempt was made to issue a function (for example, query) that is invalid when the actual drawing mode is not draw or draw-and-retain.
 * PMERR_INV_DC_TYPE (0x2060) : An invalid type parameter was specified with DevOpenDC, or a function was issued that is invalid for a OD_METAFILE_NOQUERY device context.

Remarks
This function is invalid when the drawing mode (see GpiSetDrawingMode) is set to retain.

Example Code
This example uses GpiQueryCurrentPosition to return the value of the current position and assigns the x coordinate to a variable.
 * 1) define INCL_GPIPRIMITIVES     /* Primitive functions          */
 * 2) include 

BOOL fSuccess;         /* success indicator                    */ HPS   hps;             /* Presentation-space handle            */ POINTL pptlPoint;      /* current position                     */ LONG  lxCoord;         /* current position x coordinate        */

fSuccess = GpiQueryCurrentPosition(hps, &pptlPoint);

if (fSuccess == TRUE) lxCoord = pptlPoint.x;