Jump to content

GreOutlinePath: Difference between revisions

From EDM2
Created page with "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 drive..."
 
Ak120 (talk | contribs)
mNo edit summary
 
Line 1: Line 1:
GreOutlinePath draws the boundary of the path indicated by idPath. GreOutlinePath is also used to draw area boundaries.  
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.  
This function can be hooked by the presentation driver.


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


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


==Parameters==
==Parameters==
;hdc (HDC) - input  
;hdc (HDC) - input:Device context handle.
:Device context handle.  
;idPath (LONG) - input:Path ID. It must be 1.
 
;flOptions (ULONG) - input:Outline path flags.
;idPath (LONG) - input  
:Possible values are:
:Path ID. It must be 1.  
::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).
;flOptions (ULONG) - input  
;pInstance (PVOID) - input:Pointer to instance data.
:Outline path flags.  
;lFunction (ULONG) - input:High-order WORD=flags; low-order WORD=NGreOutlinePath.
 
: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==
==Return Code==
;rc (LONG) - returns  
;rc (LONG) - returns:Return codes.
:Return codes.  
:This function returns an integer (cHits) indicating, where appropriate, whether correlation hits were detected:
 
:*GPI_OK Successful
:This function returns an integer (cHits) indicating, where appropriate, whether correlation hits were detected:  
:*GPI_HITS Successful with correlate hit (returned by display drivers when the correlate flag is ON, and a hit is detected)
 
:*GPI_ERROR Error
:*GPI_OK Successful  
:Possible Errors Detected: When an error is detected, the handling routine must call WinSetErrorInfo to post the condition.
:*GPI_HITS Successful with correlate hit (returned by display drivers when the correlate flag is ON, and a hit is detected)  
:Error codes for conditions that the handling routine is expected to check include:
:*GPI_ERROR Error  
:*PMERR_BASE_ERROR
 
:*PMERR_BITMAP_NOT_SELECTED
:Possible Errors Detected:   When an error is detected, the handling routine must call WinSetErrorInfo to post the condition.  
:*PMERR_COORDINATE_OVERFLOW
:Error codes for conditions that the handling routine is expected to check include:  
:*PMERR_DEV_FUNC_NOT_INSTALLED
 
:*PMERR_HDC_BUSY
:*PMERR_BASE_ERROR  
:*PMERR_INV_COLOR_DATA
:*PMERR_BITMAP_NOT_SELECTED  
:*PMERR_INV_COLOR_INDEX
:*PMERR_COORDINATE_OVERFLOW  
:*PMERR_INV_COORD_SPACE
:*PMERR_DEV_FUNC_NOT_INSTALLED  
:*PMERR_INV_FILL_PATH_OPTIONS
:*PMERR_HDC_BUSY  
:*PMERR_INV_HDC
:*PMERR_INV_COLOR_DATA  
:*PMERR_INV_IN_AREA
:*PMERR_INV_COLOR_INDEX  
:*PMERR_INV_IN_PATH
:*PMERR_INV_COORD_SPACE  
:*PMERR_INV_LENGTH_OR_COUNT
:*PMERR_INV_FILL_PATH_OPTIONS  
:*PMERR_INV_PATH_ID
:*PMERR_INV_HDC  
:*PMERR_INV_PICK_APERTURE_POSN
:*PMERR_INV_IN_AREA  
:*PMERR_INV_RECT
:*PMERR_INV_IN_PATH  
:*PMERR_PATH_UNKNOWN
:*PMERR_INV_LENGTH_OR_COUNT  
:Refer to the "Error Explanations" section in the ''Presentation Manager Programming Reference'' for further explanation.
:*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==
==Sample Code==
<PRE>
<PRE>
#define INCL_GRE_PATHS
#define INCL_GRE_PATHS
#include <os2.h>
#include <os2.h>
Line 78: Line 57:
LONG    rc;        /*  Return codes. */
LONG    rc;        /*  Return codes. */


rc = GreOutlinePath(hdc, idPath, flOptions,
rc = GreOutlinePath(hdc, idPath, flOptions, pInstance, lFunction);
      pInstance, lFunction);
</PRE>
</PRE>


[[Category:Gre]]
[[Category:Gre]]

Latest revision as of 22:57, 24 March 2020

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

#define INCL_GRE_PATHS
#include <os2.h>

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);