Jump to content

GreFillPath: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
mNo edit summary
 
Line 1: Line 1:
; 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.


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.
Line 6: Line 6:


==Syntax==
==Syntax==
 
  GreFillPath(hdc, idPath, flOptions, pInstance, lFunction)
  rc = GreFillPath(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: Option flags.
; idPath (LONG) - input  
:These flags determine how the path is to be filled:
: Path ID. It must be 1.  
::FPATH_ALTERNATE Fill is performed by using the odd/even (alternate) rule.  
 
::FPATH_WINDING Fill is performed by using the winding rule.
; flOptions (ULONG) - input  
::FPATH_EXCL Fill exclusive of bottom and right border in device coordinate.
: Option flags.  
;pInstance (PVOID) - input: Pointer to instance data.
 
;lFunction (ULONG) - input: High-order WORD=flags; low-order WORD=NGreFillPath.
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  
;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. Error codes for conditions that the handling routine is expected to check include:
GPI_HITS Successful with correlate hit (returned by display drivers when the correlate flag is ON, and a hit is detected)  
* PMERR_BASE_ERROR
GPI_ERROR Error  
* PMERR_BITMAP_NOT_SELECTED
 
* PMERR_COORDINATE_OVERFLOW
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_DEV_FUNC_NOT_INSTALLED
 
* PMERR_HDC_BUSY
* PMERR_BASE_ERROR  
* PMERR_HRGN_BUSY
* PMERR_BITMAP_NOT_SELECTED  
* PMERR_INSUFFICIENT_MEMORY
* PMERR_COORDINATE_OVERFLOW  
* PMERR_INV_COLOR_DATA
* PMERR_DEV_FUNC_NOT_INSTALLED  
* PMERR_INV_COLOR_INDEX
* PMERR_HDC_BUSY  
* PMERR_INV_COORD_SPACE
* PMERR_HRGN_BUSY  
* PMERR_INV_COORDINATE
* PMERR_INSUFFICIENT_MEMORY  
* PMERR_INV_FILL_PATH_OPTIONS
* PMERR_INV_COLOR_DATA  
* PMERR_INV_HDC
* PMERR_INV_COLOR_INDEX  
* PMERR_INV_HRGN
* PMERR_INV_COORD_SPACE  
* PMERR_INV_IN_AREA
* PMERR_INV_COORDINATE  
* PMERR_INV_IN_PATH
* PMERR_INV_FILL_PATH_OPTIONS  
* PMERR_INV_LENGTH_OR_COUNT
* PMERR_INV_HDC  
* PMERR_INV_PATH_ID
* PMERR_INV_HRGN  
* PMERR_INV_PICK_APERTURE_POSN
* PMERR_INV_IN_AREA  
* PMERR_INV_RECT
* PMERR_INV_IN_PATH  
* PMERR_INV_REGION_CONTROL
* PMERR_INV_LENGTH_OR_COUNT  
* PMERR_PATH_LIMIT_EXCEEDED
* PMERR_INV_PATH_ID  
* PMERR_PATH_UNKNOWN
* PMERR_INV_PICK_APERTURE_POSN  
* PMERR_REGION_IS_CLIP_REGION
* PMERR_INV_RECT  
Refer to the "Error Explanations" section in the ''Presentation Manager Programming Reference'' for further explanation.
* 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.  
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==


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

Latest revision as of 22:15, 28 February 2020

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

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.