GpiQueryElementPointer: Difference between revisions
Appearance
Created page with "This function returns the current element pointer. ==Syntax== GpiQueryElementPointer(hps) ==Parameters== ; hps (HPS) - input : Presentation-space handle. ==Return Value== ; lElement (LONG) - returns : Current element pointer. :; >=0 :: Current element pointer :; GPI_ALTERROR :: Error. ==Remarks== This function is only valid when the drawing mode (see GpiSetDrawingMode) is set to retain (not draw-and-retain), and a segment bracket is currently in progress..." |
(No difference)
|
Latest revision as of 21:40, 6 April 2025
This function returns the current element pointer.
Syntax
GpiQueryElementPointer(hps)
Parameters
- hps (HPS) - input
- Presentation-space handle.
Return Value
- lElement (LONG) - returns
- Current element pointer.
- >=0
- Current element pointer
- GPI_ALTERROR
- Error.
Remarks
This function is only valid when the drawing mode (see GpiSetDrawingMode) is set to retain (not draw-and-retain), and a segment bracket is currently in progress.
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_MICROPS_FUNCTION (0x20A1)
- An attempt was made to issue a function that is invalid in a micro presentation space.
- PMERR_NOT_IN_RETAIN_MODE (0x20E2)
- An attempt was made to issue a segment editing element function that is invalid when the actual drawing mode is not set to retain.
- PMERR_NO_CURRENT_SEG (0x20E6)
- An attempt has been made to issue GpiQueryElementType or GpiQueryElement while there is no currently open segment.
Example Code
#define INCL_GPISEGEDITING /* Or use INCL_GPI, INCL_PM, */ #include <os2.h> HPS hps; /* Presentation-space handle. */ LONG lElement; /* Current element pointer. */ lElement = GpiQueryElementPointer(hps);
This example uses GpiQueryElementPointer to return the current element pointer after setting the Draw mode to retain and beginning a graphics segment named 1.
#define INCL_GPISEGEDITING /* Segment Editing functions */
#define INCL_GPICONTROL /* Control functions */
#define INCL_GPISEGMENTS /* Segment functions */
#include <os2.h>
LONG lElement; /* current element pointer */
HPS hps; /* Presentation-space handle */
/* set the draw mode to retain and open the segment */
if (GpiSetDrawingMode(hps, DM_RETAIN) == TRUE &&
GpiOpenSegment(hps, 1L) == TRUE)
{
lElement = GpiQueryElementPointer(hps);
GpiCloseSegment(hps); /* close the segment */
}