Jump to content

GreFillPath: Difference between revisions

From EDM2
Created page with "; Simulation support: This function is simulated by a handling routine in the graphics engine. GreFillPath fills the interior of the closed figure defined in the path by usin..."
 
No edit summary
Line 2: Line 2:


GreFillPath fills the interior of the closed figure defined in the path by using the current pattern attributes. Before filling the path, the handling routine must close any open figures in the path definition. On completion, it must delete the path. All of the boundaries of the area are considered to be part of the interior and are filled.
GreFillPath fills the interior of the closed figure defined in the path by using the current pattern attributes. Before filling the path, the handling routine must close any open figures in the path definition. On completion, it must delete the path. All of the boundaries of the area are considered to be part of the interior and are filled.
This function can be hooked by the presentation driver.
This function can be hooked by the presentation driver.


==Syntax==
==Syntax==
rc = GreFillPath(hdc, idPath, flOptions, pInstance, lFunction);


==Parameters==
==Parameters==
; hdc (HDC) - input
: Device context handle.
; idPath (LONG) - input
: Path ID. It must be 1.
; flOptions (ULONG) - input
: Option flags.
These flags determine how the path is to be filled:
FPATH_ALTERNATE Fill is performed by using the odd/even (alternate) rule.
FPATH_WINDING Fill is performed by using the winding rule.
FPATH_EXCL Fill exclusive of bottom and right border in device coordinate.
; pInstance (PVOID) - input
: Pointer to instance data.
; lFunction (ULONG) - input
: High-order WORD=flags; low-order WORD=NGreFillPath.


==Return Code==
==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_HRGN_BUSY
* PMERR_INSUFFICIENT_MEMORY
* PMERR_INV_COLOR_DATA
* PMERR_INV_COLOR_INDEX
* PMERR_INV_COORD_SPACE
* PMERR_INV_COORDINATE
* PMERR_INV_FILL_PATH_OPTIONS
* PMERR_INV_HDC
* PMERR_INV_HRGN
* 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_INV_REGION_CONTROL
* PMERR_PATH_LIMIT_EXCEEDED
* PMERR_PATH_UNKNOWN
* PMERR_REGION_IS_CLIP_REGION
Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.


==Remarks==
==Remarks==
There is an alternate method of filling the interior of closed figures for devices that have their own hardware filling; see GreOutlinePath for more information.
==Example Code==


==Example Code==
#define INCL_GRE_PATHS
#include <os2.h>
HDC      hdc;        /*  Device context handle. */
LONG    idPath;    /*  Path ID.  It must be 1. */
ULONG    flOptions;  /*  Option flags. */
PVOID    pInstance;  /*  Pointer to instance data. */
ULONG    lFunction;  /*  High-order WORD=flags; low-order WORD=NGreFillPath. */
LONG    rc;        /*  Return codes. */
rc = GreFillPath(hdc, idPath, flOptions, pInstance, lFunction);


==Related Functions==
==Related Functions==


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

Revision as of 18:38, 19 November 2019

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

GreFillPath fills the interior of the closed figure defined in the path by using the current pattern attributes. Before filling the path, the handling routine must close any open figures in the path definition. On completion, it must delete the path. All of the boundaries of the area are considered to be part of the interior and are filled.

This function can be hooked by the presentation driver.

Syntax

rc = GreFillPath(hdc, idPath, flOptions, pInstance, lFunction);


Parameters

hdc (HDC) - input
Device context handle.
idPath (LONG) - input
Path ID. It must be 1.
flOptions (ULONG) - input
Option flags.

These flags determine how the path is to be filled:

FPATH_ALTERNATE Fill is performed by using the odd/even (alternate) rule. FPATH_WINDING Fill is performed by using the winding rule. FPATH_EXCL Fill exclusive of bottom and right border in device coordinate.

pInstance (PVOID) - input
Pointer to instance data.
lFunction (ULONG) - input
High-order WORD=flags; low-order WORD=NGreFillPath.

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_HRGN_BUSY
  • PMERR_INSUFFICIENT_MEMORY
  • PMERR_INV_COLOR_DATA
  • PMERR_INV_COLOR_INDEX
  • PMERR_INV_COORD_SPACE
  • PMERR_INV_COORDINATE
  • PMERR_INV_FILL_PATH_OPTIONS
  • PMERR_INV_HDC
  • PMERR_INV_HRGN
  • 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_INV_REGION_CONTROL
  • PMERR_PATH_LIMIT_EXCEEDED
  • PMERR_PATH_UNKNOWN
  • PMERR_REGION_IS_CLIP_REGION

Refer to the "Error Explanations" section in the Presentation Manager Programming Reference for further explanation.

Remarks

There is an alternate method of filling the interior of closed figures for devices that have their own hardware filling; see GreOutlinePath for more information.

Example Code

#define INCL_GRE_PATHS
#include <os2.h>

HDC      hdc;        /*  Device context handle. */
LONG     idPath;     /*  Path ID.  It must be 1. */
ULONG    flOptions;  /*  Option flags. */
PVOID    pInstance;  /*  Pointer to instance data. */
ULONG    lFunction;  /*  High-order WORD=flags; low-order WORD=NGreFillPath. */
LONG     rc;         /*  Return codes. */

rc = GreFillPath(hdc, idPath, flOptions, pInstance, lFunction);

Related Functions