home *** CD-ROM | disk | FTP | other *** search
Text File | 1990-01-09 | 52.9 KB | 1,566 lines |
- /**************************************************************************\
- *
- * Module Name: PMGPI.H
- *
- * OS/2 Presentation Manager GPI constants, types and function declarations
- *
- * Copyright (c) 1989-1990, Microsoft Corporation. All rights reserved.
- *
- * ==========================================================================
- *
- * The following symbols are used in this file for conditional sections.
- *
- * INCL_GPI Include all of the GPI
- * INCL_GPICONTROL Basic PS control
- * INCL_GPICORRELATION Picking, Boundary and Correlation
- * INCL_GPISEGMENTS Segment Control and Drawing
- * INCL_GPISEGEDITING Segment Editing via Elements
- * INCL_GPITRANSFORMS Transform and Transform Conversion
- * INCL_GPIPATHS Paths and Clipping with Paths
- * INCL_GPILOGCOLORTABLE Logical Color Tables
- * INCL_GPIPRIMITIVES Drawing Primitives and Primitive Attributes
- * INCL_GPILCIDS Phyical and Logical Fonts with Lcids
- * INCL_GPIBITMAPS Bitmaps and Pel Operations
- * INCL_GPIREGIONS Regions and Clipping with Regions
- * INCL_GPIMETAFILES Metafiles
- * INCL_GPIERRORS defined if INCL_ERRORS defined
- *
- * There is a symbol used in this file called INCL_DDIDEFS. This is used to
- * include only the definitions for the DDI. The programmer using the GPI
- * can ignore this symbol
- *
- * There is a symbol used in this file called INCL_SAADEFS. This is used to
- * include only the definitions for the SAA. The programmer using the GPI
- * can ignore this symbol
- *
- \**************************************************************************/
-
- #ifdef INCL_GPI /* include whole of the GPI */
- #define INCL_GPICONTROL
- #define INCL_GPICORRELATION
- #define INCL_GPISEGMENTS
- #define INCL_GPISEGEDITING
- #define INCL_GPITRANSFORMS
- #define INCL_GPIPATHS
- #define INCL_GPILOGCOLORTABLE
- #define INCL_GPIPRIMITIVES
- #define INCL_GPILCIDS
- #define INCL_GPIBITMAPS
- #define INCL_GPIREGIONS
- #define INCL_GPIMETAFILES
- #endif /* INCL_GPI */
-
- #ifdef INCL_ERRORS /* if errors are required then allow GPI errors */
- #define INCL_GPIERRORS
- #endif /* INCL_ERRORS */
-
- #ifdef INCL_DDIDEFS /* if only DDI required then enable DDI part of GPI */
- #define INCL_GPITRANSFORMS
- #define INCL_GPIPATHS
- #define INCL_GPILOGCOLORTABLE
- #define INCL_GPIPRIMITIVES
- #define INCL_GPILCIDS
- #define INCL_GPIBITMAPS
- #define INCL_GPIREGIONS
- #define INCL_GPIERRORS
- #endif /* INCL_DDIDEFS */
-
- #ifdef INCL_SAADEFS /* if only SAA required then enable SAA part of GPI */
- #define INCL_GPICONTROL
- #define INCL_GPICORRELATION
- #define INCL_GPISEGMENTS
- #define INCL_GPISEGEDITING
- #define INCL_GPITRANSFORMS
- #define INCL_GPIPATHS
- #define INCL_GPILOGCOLORTABLE
- #define INCL_GPIPRIMITIVES
- #define INCL_GPILCIDS
- #define INCL_GPIBITMAPS
- #define INCL_GPIREGIONS
- #define INCL_GPIMETAFILES
- #define INCL_GPIERRORS
- #endif /* INCL_SAADEFS */
-
- /* General GPI return values */
- #define GPI_ERROR 0L
- #define GPI_OK 1L
- #define GPI_ALTERROR (-1L)
-
- /* fixed point number - implicit binary point between 2 and 3 hex digits */
- typedef LONG FIXED; /* fx */
- typedef FIXED FAR *PFIXED;
-
- /* fixed point number - implicit binary point between 1st and 2nd hex digits */
- typedef USHORT FIXED88; /* fx88 */
-
- /* fixed point signed number - implicit binary point between bits 14 and 13. */
- /* Bit 15 is the sign bit. */
- /* Thus 1.0 is represented by 16384 (0x4000) */
- /* and -1.0 is represented by -16384 (0xc000) */
- typedef USHORT FIXED114; /* fx114 */
-
- /* make FIXED number from SHORT integer part and USHORT fractional part */
- #define MAKEFIXED(intpart,fractpart) MAKELONG(fractpart,intpart)
- /* extract fractional part from a fixed quantity */
- #define FIXEDFRAC(fx) (LOUSHORT(fx))
- /* extract integer part from a fixed quantity */
- #define FIXEDINT(fx) ((SHORT)HIUSHORT(fx))
-
- /* structure for size parameters e.g. for GpiCreatePS */
- typedef struct _SIZEL { /* sizl */
- LONG cx;
- LONG cy;
- } SIZEL;
- typedef SIZEL FAR *PSIZEL;
-
- /* return code on GpiQueryLogColorTable,GpiQueryRealColors and GpiQueryPel */
- #define CLR_NOINDEX (-254L)
-
- #if (defined(INCL_GPICONTROL) || !defined(INCL_NOCOMMON))
-
- /* units for GpiCreatePS and others */
- #define PU_ARBITRARY 0x0004L
- #define PU_PELS 0x0008L
- #define PU_LOMETRIC 0x000CL
- #define PU_HIMETRIC 0x0010L
- #define PU_LOENGLISH 0x0014L
- #define PU_HIENGLISH 0x0018L
- #define PU_TWIPS 0x001CL
-
- /* format for GpiCreatePS */
- #define GPIF_DEFAULT 0L
- #ifndef INCL_SAADEFS
- #define GPIF_SHORT 0x0100L
- #define GPIF_LONG 0x0200L
- #endif /* no INCL_SAADEFS */
-
- /* PS type for GpiCreatePS */
- #define GPIT_NORMAL 0L
- #ifndef INCL_SAADEFS
- #define GPIT_MICRO 0x1000L
- #endif /* no INCL_SAADEFS */
-
- /* implicit associate flag for GpiCreatePS */
- #define GPIA_NOASSOC 0L
- #define GPIA_ASSOC 0x4000L
-
- #ifndef INCL_SAADEFS
- /* return error for GpiQueryDevice */
- #define HDC_ERROR ((HDC)-1L)
- #endif /* no INCL_SAADEFS */
-
- /*** common GPICONTROL functions */
- HPS APIENTRY GpiCreatePS(HAB, HDC, PSIZEL, ULONG);
- BOOL APIENTRY GpiDestroyPS(HPS);
- BOOL APIENTRY GpiAssociate(HPS, HDC);
- BOOL APIENTRY GpiRestorePS(HPS, LONG);
- LONG APIENTRY GpiSavePS(HPS);
- BOOL APIENTRY GpiErase(HPS);
-
- #ifndef INCL_SAADEFS
- HDC APIENTRY GpiQueryDevice(HPS);
- #endif /* no INCL_SAADEFS */
-
- #endif /* common GPICONTROL */
- #ifdef INCL_GPICONTROL
-
- /* options for GpiResetPS */
- #define GRES_ATTRS 0x0001L
- #define GRES_SEGMENTS 0x0002L
- #define GRES_ALL 0x0004L
-
- /* option masks for PS options used by GpiQueryPs */
- #define PS_UNITS 0x00FCL
- #define PS_FORMAT 0x0F00L
- #define PS_TYPE 0x1000L
- #define PS_MODE 0x2000L
- #define PS_ASSOCIATE 0x4000L
-
- /* error context returned by GpiErrorSegmentData */
- #define GPIE_SEGMENT 0L
- #define GPIE_ELEMENT 1L
- #define GPIE_DATA 2L
-
- #ifndef INCL_SAADEFS
-
- /* control parameter for GpiSetDrawControl */
- #define DCTL_ERASE 1L
- #define DCTL_DISPLAY 2L
- #define DCTL_BOUNDARY 3L
- #define DCTL_DYNAMIC 4L
- #define DCTL_CORRELATE 5L
-
- /* constants for GpiSet/QueryDrawControl */
- #define DCTL_ERROR (-1L)
- #define DCTL_OFF 0L
- #define DCTL_ON 1L
-
- /* constants for GpiSet/QueryStopDraw */
- #define SDW_ERROR (-1L)
- #define SDW_OFF 0L
- #define SDW_ON 1L
-
- #endif /* no INCL_SAADEFS */
-
- /* drawing for GpiSet/QueryDrawingMode */
- #define DM_ERROR 0L
- #define DM_DRAW 1L
- #define DM_RETAIN 2L
- #define DM_DRAWANDRETAIN 3L
-
- /*** other GPICONTROL functions */
- BOOL APIENTRY GpiResetPS(HPS, ULONG);
-
- #ifndef INCL_SAADEFS
-
- BOOL APIENTRY GpiSetPS(HPS, PSIZEL, ULONG);
-
- #endif /* no INCL_SAADEFS */
-
- ULONG APIENTRY GpiQueryPS(HPS, PSIZEL);
- LONG APIENTRY GpiErrorSegmentData(HPS, PLONG, PLONG);
-
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiQueryDrawControl(HPS, LONG);
- BOOL APIENTRY GpiSetDrawControl(HPS, LONG, LONG);
-
- #endif /* no INCL_SAADEFS */
-
- LONG APIENTRY GpiQueryDrawingMode(HPS);
- BOOL APIENTRY GpiSetDrawingMode(HPS, LONG);
-
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiQueryStopDraw(HPS);
- BOOL APIENTRY GpiSetStopDraw(HPS, LONG);
-
- #endif /* no INCL_SAADEFS */
-
- #endif /* non-common GPICONTROL */
- #ifdef INCL_GPICORRELATION
-
- /* options for GpiSetPickApertureSize */
- #define PICKAP_DEFAULT 0L
- #define PICKAP_REC 2L
-
- /* type of correlation for GpiCorrelateChain */
- #define PICKSEL_VISIBLE 0L
- #define PICKSEL_ALL 1L
-
- /* return code to indicate correlate hit(s) */
- #define GPI_HITS 2L
-
- /*** picking, correlation and boundary functions */
- LONG APIENTRY GpiCorrelateChain( HPS, LONG, PPOINTL, LONG, LONG, PLONG);
- BOOL APIENTRY GpiQueryTag(HPS, PLONG);
- BOOL APIENTRY GpiSetTag(HPS, LONG);
- BOOL APIENTRY GpiQueryPickApertureSize(HPS, PSIZEL);
- BOOL APIENTRY GpiSetPickApertureSize(HPS, LONG, PSIZEL);
-
- #ifndef INCL_SAADEFS
-
- BOOL APIENTRY GpiQueryPickAperturePosition(HPS, PPOINTL);
- BOOL APIENTRY GpiSetPickAperturePosition(HPS, PPOINTL);
- BOOL APIENTRY GpiQueryBoundaryData(HPS, PRECTL);
- BOOL APIENTRY GpiResetBoundaryData(HPS);
-
- #endif /* no INCL_SAADEFS */
-
- LONG APIENTRY GpiCorrelateFrom(HPS, LONG, LONG, LONG, PPOINTL, LONG, LONG,
- PLONG);
- LONG APIENTRY GpiCorrelateSegment(HPS, LONG, LONG, PPOINTL, LONG, LONG,
- PLONG);
-
- #endif /* non-common_GPICORRELATION */
- #ifdef INCL_GPISEGMENTS
-
- /* data formats for GpiPutData and GpiGetData */
- #define DFORM_NOCONV 0L
-
- #ifndef INCL_SAADEFS
-
- #define DFORM_S370SHORT 1L
- #define DFORM_PCSHORT 2L
- #define DFORM_PCLONG 4L
-
- #endif /* no INCL_SAADEFS */
-
- /* segment attributes used by GpiSet/QuerySegmentAttrs and others */
- #define ATTR_ERROR (-1L)
- #define ATTR_DETECTABLE 1L
- #define ATTR_VISIBLE 2L
- #define ATTR_CHAINED 6L
-
- #ifndef INCL_SAADEFS
-
- #define ATTR_DYNAMIC 8L
-
- #endif /* no INCL_SAADEFS */
-
- #define ATTR_FASTCHAIN 9L
- #define ATTR_PROP_DETECTABLE 10L
- #define ATTR_PROP_VISIBLE 11L
-
- /* attribute on/off values */
- #define ATTR_OFF 0L
- #define ATTR_ON 1L
-
- /* segment priority used by GpiSetSegmentPriority and others */
- #define LOWER_PRI (-1L)
- #define HIGHER_PRI 1L
-
- /*** segment control functions */
- BOOL APIENTRY GpiOpenSegment(HPS, LONG);
- BOOL APIENTRY GpiCloseSegment(HPS);
- BOOL APIENTRY GpiDeleteSegment(HPS, LONG);
- LONG APIENTRY GpiQueryInitialSegmentAttrs(HPS, LONG);
- BOOL APIENTRY GpiSetInitialSegmentAttrs(HPS, LONG, LONG);
- LONG APIENTRY GpiQuerySegmentAttrs(HPS, LONG, LONG);
- BOOL APIENTRY GpiSetSegmentAttrs(HPS, LONG, LONG, LONG);
- LONG APIENTRY GpiQuerySegmentPriority(HPS, LONG, LONG);
- BOOL APIENTRY GpiSetSegmentPriority(HPS, LONG, LONG, LONG);
- BOOL APIENTRY GpiDeleteSegments(HPS, LONG, LONG);
- LONG APIENTRY GpiQuerySegmentNames(HPS, LONG, LONG, LONG, PLONG);
-
- /*** draw functions for segments */
- LONG APIENTRY GpiGetData(HPS, LONG, PLONG, LONG, LONG, PBYTE);
- LONG APIENTRY GpiPutData(HPS, LONG, PLONG, PBYTE);
- BOOL APIENTRY GpiDrawChain(HPS);
- BOOL APIENTRY GpiDrawFrom(HPS, LONG, LONG);
- BOOL APIENTRY GpiDrawSegment(HPS, LONG);
-
- #ifndef INCL_SAADEFS
-
- BOOL APIENTRY GpiDrawDynamics(HPS);
- BOOL APIENTRY GpiRemoveDynamics(HPS, LONG, LONG);
-
- #endif /* no INCL_SAADEFS */
-
- #endif /* non-common GPISEGMENTS */
- #ifdef INCL_GPISEGEDITING
-
- /* edit modes used by GpiSet/QueryEditMode */
- #define SEGEM_ERROR 0L
- #define SEGEM_INSERT 1L
- #define SEGEM_REPLACE 2L
-
- /*** segment editing by element functions */
- BOOL APIENTRY GpiBeginElement(HPS, LONG, PSZ);
- BOOL APIENTRY GpiEndElement(HPS);
- BOOL APIENTRY GpiLabel(HPS, LONG);
- LONG APIENTRY GpiElement(HPS, LONG, PSZ, LONG, PBYTE);
- LONG APIENTRY GpiQueryElement(HPS, LONG, LONG, PBYTE);
- BOOL APIENTRY GpiDeleteElement(HPS);
- BOOL APIENTRY GpiDeleteElementRange(HPS, LONG, LONG);
- BOOL APIENTRY GpiDeleteElementsBetweenLabels(HPS, LONG, LONG);
- LONG APIENTRY GpiQueryEditMode(HPS);
- BOOL APIENTRY GpiSetEditMode(HPS, LONG);
- LONG APIENTRY GpiQueryElementPointer(HPS);
- BOOL APIENTRY GpiSetElementPointer(HPS, LONG);
- BOOL APIENTRY GpiOffsetElementPointer(HPS, LONG);
- LONG APIENTRY GpiQueryElementType(HPS, PLONG, LONG, PSZ);
- BOOL APIENTRY GpiSetElementPointerAtLabel(HPS, LONG);
-
- #endif /* non-common GPISEGEDITING */
- #ifdef INCL_GPITRANSFORMS
-
- /* co-ordinates space for GpiConvert */
- #define CVTC_WORLD 1L
- #define CVTC_MODEL 2L
- #define CVTC_DEFAULTPAGE 3L
- #define CVTC_PAGE 4L
- #define CVTC_DEVICE 5L
-
- /* type of transformation for GpiSetSegmentTransformMatrix */
- #define TRANSFORM_REPLACE 0L
- #define TRANSFORM_ADD 1L
- #define TRANSFORM_PREEMPT 2L
-
- /* transform matrix */
- typedef struct _MATRIXLF { /* matlf */
- FIXED fxM11;
- FIXED fxM12;
- LONG lM13;
- FIXED fxM21;
- FIXED fxM22;
- LONG lM23;
- LONG lM31;
- LONG lM32;
- LONG lM33;
- } MATRIXLF;
- typedef MATRIXLF FAR *PMATRIXLF;
-
- #ifndef INCL_DDIDEFS
-
- /*** transform and transform conversion functions */
- BOOL APIENTRY GpiQuerySegmentTransformMatrix(HPS, LONG, LONG, PMATRIXLF);
- BOOL APIENTRY GpiSetSegmentTransformMatrix(HPS, LONG, LONG, PMATRIXLF,
- LONG);
- BOOL APIENTRY GpiConvert(HPS, LONG, LONG, LONG, PPOINTL);
- BOOL APIENTRY GpiQueryModelTransformMatrix(HPS, LONG, PMATRIXLF);
- BOOL APIENTRY GpiSetModelTransformMatrix(HPS, LONG, PMATRIXLF, LONG);
- LONG APIENTRY GpiCallSegmentMatrix(HPS, LONG, LONG, PMATRIXLF, LONG);
- BOOL APIENTRY GpiQueryDefaultViewMatrix(HPS, LONG, PMATRIXLF);
- BOOL APIENTRY GpiSetDefaultViewMatrix(HPS, LONG, PMATRIXLF, LONG);
- BOOL APIENTRY GpiQueryPageViewport(HPS, PRECTL);
- BOOL APIENTRY GpiSetPageViewport(HPS, PRECTL);
- BOOL APIENTRY GpiQueryViewingTransformMatrix(HPS, LONG, PMATRIXLF);
- BOOL APIENTRY GpiSetViewingTransformMatrix(HPS, LONG, PMATRIXLF, LONG);
-
- /*** general clipping functions */
- BOOL APIENTRY GpiSetGraphicsField(HPS, PRECTL);
- BOOL APIENTRY GpiQueryGraphicsField(HPS, PRECTL);
- BOOL APIENTRY GpiSetViewingLimits(HPS, PRECTL);
- BOOL APIENTRY GpiQueryViewingLimits(HPS, PRECTL);
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPITRANSFORMS */
- #ifdef INCL_GPIPATHS
-
- /* modes for GpiModifyPath */
- #define MPATH_STROKE 6L
-
- /* modes for GpiFillPath */
- #define FPATH_ALTERNATE 0L
- #define FPATH_WINDING 2L
-
- /* modes for GpiSetClipPath */
- #define SCP_ALTERNATE 0L
- #define SCP_WINDING 2L
- #define SCP_AND 4L
- #define SCP_RESET 0L
-
- #ifndef INCL_DDIDEFS
-
- /*** Path and Clip Path functions */
- BOOL APIENTRY GpiBeginPath(HPS, LONG);
- BOOL APIENTRY GpiEndPath(HPS);
- BOOL APIENTRY GpiCloseFigure(HPS);
- BOOL APIENTRY GpiModifyPath(HPS, LONG, LONG);
- LONG APIENTRY GpiFillPath(HPS, LONG, LONG);
- BOOL APIENTRY GpiSetClipPath(HPS, LONG, LONG);
-
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiStrokePath(HPS, LONG, ULONG);
-
- #endif /* no INCL_SAADEFS */
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPIPATHS */
- #ifdef INCL_GPILOGCOLORTABLE
-
- /* options for GpiCreateLogColorTable and others */
- #define LCOL_RESET 0x0001L
- #define LCOL_REALIZABLE 0x0002L
- #define LCOL_PURECOLOR 0x0004L
-
- /* format of logical lColor table for GpiCreateLogColorTable and others */
- #define LCOLF_DEFAULT 0L
- #define LCOLF_INDRGB 1L
- #define LCOLF_CONSECRGB 2L
- #define LCOLF_RGB 3L
-
- /* options for GpiQueryRealColors and others */
- #define LCOLOPT_REALIZED 0x0001L
- #define LCOLOPT_INDEX 0x0002L
-
- #ifndef INCL_SAADEFS
-
- /* return codes from GpiQueryLogColorTable to indicate it is in RGB mode */
- #define QLCT_ERROR (-1L)
- #define QLCT_RGB (-2L)
-
- /* GpiQueryLogColorTable index returned for colors not explicitly loaded */
- #define QLCT_NOTLOADED (-1L)
-
- #endif /* no INCL_SAADEFS */
-
- /* return codes for GpiQueryColorData */
- #define QCD_LCT_FORMAT 0L
- #define QCD_LCT_LOINDEX 1L
- #define QCD_LCT_HIINDEX 2L
-
- #ifndef INCL_DDIDEFS
-
- /*** logical lColor table functions */
- BOOL APIENTRY GpiCreateLogColorTable(HPS, ULONG, LONG, LONG, LONG, PLONG);
- BOOL APIENTRY GpiRealizeColorTable(HPS);
- BOOL APIENTRY GpiUnrealizeColorTable(HPS);
- BOOL APIENTRY GpiQueryColorData(HPS, LONG, PLONG);
-
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiQueryLogColorTable(HPS, ULONG, LONG, LONG, PLONG);
-
- #endif /* no INCL_SAADEFS */
-
- LONG APIENTRY GpiQueryRealColors(HPS, ULONG, LONG, LONG, PLONG);
- LONG APIENTRY GpiQueryNearestColor(HPS, ULONG, LONG);
- LONG APIENTRY GpiQueryColorIndex(HPS, ULONG, LONG);
- LONG APIENTRY GpiQueryRGBColor(HPS, ULONG, LONG);
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPILOGCOLORTABLE */
- #if (defined(INCL_GPIPRIMITIVES) || !defined(INCL_NOCOMMON))
-
- /* default color table indices */
-
- #define CLR_FALSE (-5L)
- #define CLR_TRUE (-4L)
-
- #define CLR_ERROR (-255L)
- #define CLR_DEFAULT (-3L)
- #define CLR_WHITE (-2L)
- #define CLR_BLACK (-1L)
- #define CLR_BACKGROUND 0L
- #define CLR_BLUE 1L
- #define CLR_RED 2L
- #define CLR_PINK 3L
- #define CLR_GREEN 4L
- #define CLR_CYAN 5L
- #define CLR_YELLOW 6L
- #define CLR_NEUTRAL 7L
-
- #define CLR_DARKGRAY 8L
- #define CLR_DARKBLUE 9L
- #define CLR_DARKRED 10L
- #define CLR_DARKPINK 11L
- #define CLR_DARKGREEN 12L
- #define CLR_DARKCYAN 13L
- #define CLR_BROWN 14L
- #define CLR_PALEGRAY 15L
-
- /* rgb colors */
- #define RGB_ERROR (-255L)
- #define RGB_BLACK 0x00000000L
- #define RGB_BLUE 0x000000FFL
- #define RGB_GREEN 0x0000FF00L
- #define RGB_CYAN 0x0000FFFFL
- #define RGB_RED 0x00FF0000L
- #define RGB_PINK 0x00FF00FFL
- #define RGB_YELLOW 0x00FFFF00L
- #define RGB_WHITE 0x00FFFFFFL
-
- /* control flags used by GpiBeginArea */
- #define BA_NOBOUNDARY 0L
- #define BA_BOUNDARY 0x0001L
-
- #ifndef INCL_SAADEFS
- #define BA_ALTERNATE 0L
- #define BA_WINDING 0x0002L
-
- #endif /* no INCL_SAADEFS */
-
- /* fill options for GpiBox/GpiFullArc */
- #define DRO_FILL 1L
- #define DRO_OUTLINE 2L
- #define DRO_OUTLINEFILL 3L
-
- /* basic pattern symbols */
- #define PATSYM_ERROR (-1L)
- #define PATSYM_DEFAULT 0L
- #define PATSYM_DENSE1 1L
- #define PATSYM_DENSE2 2L
- #define PATSYM_DENSE3 3L
- #define PATSYM_DENSE4 4L
- #define PATSYM_DENSE5 5L
- #define PATSYM_DENSE6 6L
- #define PATSYM_DENSE7 7L
- #define PATSYM_DENSE8 8L
- #define PATSYM_VERT 9L
- #define PATSYM_HORIZ 10L
- #define PATSYM_DIAG1 11L
- #define PATSYM_DIAG2 12L
- #define PATSYM_DIAG3 13L
- #define PATSYM_DIAG4 14L
- #define PATSYM_NOSHADE 15L
- #define PATSYM_SOLID 16L
- #define PATSYM_BLANK 64L
- #ifndef INCL_SAADEFS
- #define PATSYM_HALFTONE 17L
- #endif /* no INCL_SAADEFS */
-
- /* lcid values for GpiSet/QueryPattern and others */
- #define LCID_ERROR (-1L)
- #define LCID_DEFAULT 0L
-
- #ifndef INCL_DDIDEFS
-
- /*** global primitive functions */
- BOOL APIENTRY GpiSetColor(HPS, LONG);
- LONG APIENTRY GpiQueryColor(HPS);
-
- /*** line primitive functions */
- LONG APIENTRY GpiBox(HPS, LONG, PPOINTL, LONG, LONG);
-
- BOOL APIENTRY GpiMove(HPS, PPOINTL);
- LONG APIENTRY GpiLine(HPS, PPOINTL);
- LONG APIENTRY GpiPolyLine(HPS, LONG, PPOINTL);
-
- /*** area primitive functions */
- BOOL APIENTRY GpiSetPattern(HPS, LONG);
- LONG APIENTRY GpiQueryPattern(HPS);
- BOOL APIENTRY GpiBeginArea(HPS, ULONG);
- LONG APIENTRY GpiEndArea(HPS);
-
- /*** character primitive functions */
- LONG APIENTRY GpiCharString(HPS, LONG, PCH);
- LONG APIENTRY GpiCharStringAt(HPS, PPOINTL, LONG, PCH);
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* common GPIPRIMTIVES */
- #ifdef INCL_GPIPRIMITIVES
-
- /* mode for GpiSetAttrMode */
- #define AM_ERROR (-1L)
- #define AM_PRESERVE 0L
- #define AM_NOPRESERVE 1L
-
- /* foreground mixes */
- #define FM_ERROR (-1L)
- #define FM_DEFAULT 0L
- #define FM_OR 1L
- #define FM_OVERPAINT 2L
- #define FM_LEAVEALONE 5L
-
- #ifndef INCL_SAADEFS
-
- #define FM_XOR 4L
- #define FM_AND 6L
- #define FM_SUBTRACT 7L
- #define FM_MASKSRCNOT 8L
- #define FM_ZERO 9L
- #define FM_NOTMERGESRC 10L
- #define FM_NOTXORSRC 11L
- #define FM_INVERT 12L
- #define FM_MERGESRCNOT 13L
- #define FM_NOTCOPYSRC 14L
- #define FM_MERGENOTSRC 15L
- #define FM_NOTMASKSRC 16L
- #define FM_ONE 17L
-
- #endif /* no INCL_SAADEFS */
-
- /* background mixes */
- #define BM_ERROR (-1L)
- #define BM_DEFAULT 0L
- #define BM_OVERPAINT 2L
- #define BM_LEAVEALONE 5L
-
- #ifndef INCL_SAADEFS
- #define BM_OR 1L
- #define BM_XOR 4L
- #endif /* no INCL_SAADEFS */
-
- /* basic line type styles */
- #define LINETYPE_ERROR (-1L)
- #define LINETYPE_DEFAULT 0L
- #define LINETYPE_DOT 1L
- #define LINETYPE_SHORTDASH 2L
- #define LINETYPE_DASHDOT 3L
- #define LINETYPE_DOUBLEDOT 4L
- #define LINETYPE_LONGDASH 5L
- #define LINETYPE_DASHDOUBLEDOT 6L
- #define LINETYPE_SOLID 7L
- #define LINETYPE_INVISIBLE 8L
- #ifndef INCL_SAADEFS
- #define LINETYPE_ALTERNATE 9L
- #endif /* no INCL_SAADEFS */
-
- /* cosmetic line widths */
- #define LINEWIDTH_ERROR (-1L)
- #define LINEWIDTH_DEFAULT 0L
- #define LINEWIDTH_NORMAL 0x00010000L /* MAKEFIXED(1,0) */
-
- /* actual line widths */
- #define LINEWIDTHGEOM_ERROR (-1L)
-
- /* line end styles */
- #define LINEEND_ERROR (-1L)
- #define LINEEND_DEFAULT 0L
- #define LINEEND_FLAT 1L
- #define LINEEND_SQUARE 2L
- #define LINEEND_ROUND 3L
-
- /* line join styles */
- #define LINEJOIN_ERROR (-1L)
- #define LINEJOIN_DEFAULT 0L
- #define LINEJOIN_BEVEL 1L
- #define LINEJOIN_ROUND 2L
- #define LINEJOIN_MITRE 3L
-
- /* character directions */
- #define CHDIRN_ERROR (-1L)
- #define CHDIRN_DEFAULT 0L
- #define CHDIRN_LEFTRIGHT 1L
- #define CHDIRN_TOPBOTTOM 2L
- #define CHDIRN_RIGHTLEFT 3L
- #define CHDIRN_BOTTOMTOP 4L
-
- /* character modes */
- #define CM_ERROR (-1L)
- #define CM_DEFAULT 0L
- #define CM_MODE1 1L
- #define CM_MODE2 2L
- #define CM_MODE3 3L
-
- /* basic marker symbols */
- #define MARKSYM_ERROR (-1L)
- #define MARKSYM_DEFAULT 0L
- #define MARKSYM_CROSS 1L
- #define MARKSYM_PLUS 2L
- #define MARKSYM_DIAMOND 3L
- #define MARKSYM_SQUARE 4L
- #define MARKSYM_SIXPOINTSTAR 5L
- #define MARKSYM_EIGHTPOINTSTAR 6L
- #define MARKSYM_SOLIDDIAMOND 7L
- #define MARKSYM_SOLIDSQUARE 8L
- #define MARKSYM_DOT 9L
- #define MARKSYM_SMALLCIRCLE 10L
- #define MARKSYM_BLANK 64L
-
- /* formatting options for GpiCharStringPosAt */
- #define CHS_OPAQUE 0x0001L
- #define CHS_VECTOR 0x0002L
- #define CHS_LEAVEPOS 0x0008L
- #define CHS_CLIP 0x0010L
-
- /* bundle codes for GpiSetAttributes and GpiQueryAttributes */
- #define PRIM_LINE 1L
- #define PRIM_CHAR 2L
- #define PRIM_MARKER 3L
- #define PRIM_AREA 4L
- #define PRIM_IMAGE 5L
-
- /* line bundle mask bits */
- #define LBB_COLOR 0x0001L
- #define LBB_MIX_MODE 0x0004L
- #define LBB_WIDTH 0x0010L
- #define LBB_GEOM_WIDTH 0x0020L
- #define LBB_TYPE 0x0040L
- #define LBB_END 0x0080L
- #define LBB_JOIN 0x0100L
-
- /* character bundle mask bits */
- #define CBB_COLOR 0x0001L
- #define CBB_BACK_COLOR 0x0002L
- #define CBB_MIX_MODE 0x0004L
- #define CBB_BACK_MIX_MODE 0x0008L
- #define CBB_SET 0x0010L
- #define CBB_MODE 0x0020L
- #define CBB_BOX 0x0040L
- #define CBB_ANGLE 0x0080L
- #define CBB_SHEAR 0x0100L
- #define CBB_DIRECTION 0x0200L
-
- /* marker bundle mask bits */
- #define MBB_COLOR 0x0001L
- #define MBB_BACK_COLOR 0x0002L
- #define MBB_MIX_MODE 0x0004L
- #define MBB_BACK_MIX_MODE 0x0008L
- #define MBB_SET 0x0010L
- #define MBB_SYMBOL 0x0020L
- #define MBB_BOX 0x0040L
-
- /* pattern bundle mask bits */
- #define ABB_COLOR 0x0001L
- #define ABB_BACK_COLOR 0x0002L
- #define ABB_MIX_MODE 0x0004L
- #define ABB_BACK_MIX_MODE 0x0008L
- #define ABB_SET 0x0010L
- #define ABB_SYMBOL 0x0020L
- #define ABB_REF_POINT 0x0040L
-
- /* image bundle mask bits */
- #define IBB_COLOR 0x0001L
- #define IBB_BACK_COLOR 0x0002L
- #define IBB_MIX_MODE 0x0004L
- #define IBB_BACK_MIX_MODE 0x0008L
-
- /* structure for GpiSetArcParams and GpiQueryArcParams */
- typedef struct _ARCPARAMS { /* arcp */
- LONG lP;
- LONG lQ;
- LONG lR;
- LONG lS;
- } ARCPARAMS;
- typedef ARCPARAMS FAR *PARCPARAMS;
-
- /* variation of SIZE used for FIXEDs */
- typedef struct _SIZEF { /* sizfx */
- FIXED cx;
- FIXED cy;
- } SIZEF;
- typedef SIZEF FAR *PSIZEF;
-
- /* structure for gradient parameters e.g. for GpiSetCharAngle */
- typedef struct _GRADIENTL { /* gradl */
- LONG x;
- LONG y;
- } GRADIENTL;
- typedef GRADIENTL FAR *PGRADIENTL;
-
- /* line bundle for GpiSetAttributes and GpiQueryAttributes */
- typedef struct _LINEBUNDLE { /* lbnd */
- LONG lColor;
- LONG lReserved;
- USHORT usMixMode;
- USHORT usReserved;
- FIXED fxWidth;
- LONG lGeomWidth;
- USHORT usType;
- USHORT usEnd;
- USHORT usJoin;
- } LINEBUNDLE;
-
- /* character bundle for GpiSetAttributes and GpiQueryAttributes */
- typedef struct _CHARBUNDLE { /* cbnd */
- LONG lColor;
- LONG lBackColor;
- USHORT usMixMode;
- USHORT usBackMixMode;
- USHORT usSet;
- USHORT usPrecision;
- SIZEF sizfxCell;
- POINTL ptlAngle;
- POINTL ptlShear;
- USHORT usDirection;
- } CHARBUNDLE;
-
- /* marker bundle for GpiSetAttributes and GpiQueryAttributes */
- typedef struct _MARKERBUNDLE { /* mbnd */
- LONG lColor;
- LONG lBackColor;
- USHORT usMixMode;
- USHORT usBackMixMode;
- USHORT usSet;
- USHORT usSymbol;
- SIZEF sizfxCell;
- } MARKERBUNDLE;
-
- /* pattern bundle for GpiSetAttributes and GpiQueryAttributes */
- typedef struct _AREABUNDLE { /* pbnd */
- LONG lColor;
- LONG lBackColor;
- USHORT usMixMode;
- USHORT usBackMixMode;
- USHORT usSet;
- USHORT usSymbol;
- POINTL ptlRefPoint ;
- } AREABUNDLE;
-
- /* image bundle for GpiSetAttributes and GpiQueryAttributes */
- typedef struct _IMAGEBUNDLE { /* ibmd */
- LONG lColor;
- LONG lBackColor;
- USHORT usMixMode;
- USHORT usBackMixMode;
- } IMAGEBUNDLE;
-
- /* pointer to any bundle used by GpiSet/QueryAttrs */
- typedef PVOID PBUNDLE;
-
- /* array indices for GpiQueryTextBox */
- #define TXTBOX_TOPLEFT 0L
- #define TXTBOX_BOTTOMLEFT 1L
- #define TXTBOX_TOPRIGHT 2L
- #define TXTBOX_BOTTOMRIGHT 3L
- #define TXTBOX_CONCAT 4L
- /* array count for GpiQueryTextBox */
- #define TXTBOX_COUNT 5L
-
- /* return codes for GpiPtVisible */
- #define PVIS_ERROR 0L
- #define PVIS_INVISIBLE 1L
- #define PVIS_VISIBLE 2L
-
- /* return codes for GpiRectVisible */
- #define RVIS_ERROR 0L
- #define RVIS_INVISIBLE 1L
- #define RVIS_PARTIAL 2L
- #define RVIS_VISIBLE 3L
-
- #ifndef INCL_DDIDEFS
-
- /*** attribute mode functions */
- BOOL APIENTRY GpiSetAttrMode(HPS, LONG);
- LONG APIENTRY GpiQueryAttrMode(HPS);
- /*** bundle primitive functions */
- BOOL APIENTRY GpiSetAttrs(HPS, LONG, ULONG, ULONG, PBUNDLE);
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiQueryAttrs(HPS, LONG, ULONG, PBUNDLE);
-
- #endif /* no INCL_SAADEFS */
-
- /*** global primitive functions */
- BOOL APIENTRY GpiSetBackColor(HPS, LONG);
- LONG APIENTRY GpiQueryBackColor(HPS);
- BOOL APIENTRY GpiSetMix(HPS, LONG);
- LONG APIENTRY GpiQueryMix(HPS);
- BOOL APIENTRY GpiSetBackMix(HPS, LONG);
- LONG APIENTRY GpiQueryBackMix(HPS);
-
- /*** line primitive functions */
- BOOL APIENTRY GpiSetLineType(HPS, LONG);
- LONG APIENTRY GpiQueryLineType(HPS);
- BOOL APIENTRY GpiSetLineWidth(HPS, FIXED);
- FIXED APIENTRY GpiQueryLineWidth(HPS);
-
- BOOL APIENTRY GpiSetLineWidthGeom(HPS, LONG);
- LONG APIENTRY GpiQueryLineWidthGeom(HPS);
- BOOL APIENTRY GpiSetLineEnd(HPS, LONG);
- LONG APIENTRY GpiQueryLineEnd(HPS);
- BOOL APIENTRY GpiSetLineJoin(HPS, LONG);
- LONG APIENTRY GpiQueryLineJoin(HPS);
-
- BOOL APIENTRY GpiSetCurrentPosition(HPS, PPOINTL);
- BOOL APIENTRY GpiQueryCurrentPosition(HPS, PPOINTL);
-
- /*** arc primitive functions */
- BOOL APIENTRY GpiSetArcParams(HPS, PARCPARAMS);
- BOOL APIENTRY GpiQueryArcParams(HPS, PARCPARAMS);
-
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiPointArc(HPS, PPOINTL);
-
- #endif /* no INCL_SAADEFS */
-
- LONG APIENTRY GpiFullArc(HPS, LONG, FIXED);
- LONG APIENTRY GpiPartialArc(HPS, PPOINTL, FIXED, FIXED, FIXED);
- LONG APIENTRY GpiPolyFilletSharp(HPS, LONG, PPOINTL, PFIXED);
- LONG APIENTRY GpiPolySpline(HPS, LONG, PPOINTL);
- LONG APIENTRY GpiPolyFillet(HPS, LONG, PPOINTL);
-
- /*** area primitive functions */
- BOOL APIENTRY GpiSetPatternSet(HPS, LONG);
- LONG APIENTRY GpiQueryPatternSet(HPS);
- BOOL APIENTRY GpiSetPatternRefPoint(HPS, PPOINTL);
- BOOL APIENTRY GpiQueryPatternRefPoint(HPS, PPOINTL);
-
- /*** character primitive functions */
-
- BOOL APIENTRY GpiQueryCharStringPos(HPS, ULONG, LONG, PCH, PLONG, PPOINTL);
- BOOL APIENTRY GpiQueryCharStringPosAt(HPS, PPOINTL, ULONG, LONG, PCH, PLONG,
- PPOINTL);
- BOOL APIENTRY GpiQueryTextBox(HPS, LONG, PCH, LONG, PPOINTL);
- BOOL APIENTRY GpiQueryDefCharBox(HPS, PSIZEL);
- BOOL APIENTRY GpiSetCharSet(HPS, LONG);
- LONG APIENTRY GpiQueryCharSet(HPS);
- BOOL APIENTRY GpiSetCharBox(HPS, PSIZEF);
- BOOL APIENTRY GpiQueryCharBox(HPS, PSIZEF);
- BOOL APIENTRY GpiSetCharAngle(HPS, PGRADIENTL);
- BOOL APIENTRY GpiQueryCharAngle(HPS, PGRADIENTL);
- BOOL APIENTRY GpiSetCharShear(HPS, PPOINTL);
- BOOL APIENTRY GpiQueryCharShear(HPS, PPOINTL);
- BOOL APIENTRY GpiSetCharDirection(HPS, LONG);
- LONG APIENTRY GpiQueryCharDirection(HPS);
- BOOL APIENTRY GpiSetCharMode(HPS, LONG);
- LONG APIENTRY GpiQueryCharMode(HPS);
- LONG APIENTRY GpiCharStringPos(HPS, PRECTL, ULONG, LONG, PCH, PLONG);
- LONG APIENTRY GpiCharStringPosAt(HPS, PPOINTL, PRECTL, ULONG, LONG, PCH,
- PLONG);
-
- /*** marker primitive functions */
- BOOL APIENTRY GpiSetMarkerSet(HPS, LONG);
- LONG APIENTRY GpiQueryMarkerSet(HPS);
- BOOL APIENTRY GpiSetMarker(HPS, LONG);
- LONG APIENTRY GpiQueryMarker(HPS);
- BOOL APIENTRY GpiSetMarkerBox(HPS, PSIZEF);
- BOOL APIENTRY GpiQueryMarkerBox(HPS, PSIZEF);
- LONG APIENTRY GpiMarker(HPS, PPOINTL);
- LONG APIENTRY GpiPolyMarker(HPS, LONG, PPOINTL);
-
- /*** image primitive functions */
- LONG APIENTRY GpiImage(HPS, LONG, PSIZEL, LONG, PBYTE);
-
- /*** miscellaneous primitive functions */
- BOOL APIENTRY GpiPop(HPS, LONG);
- LONG APIENTRY GpiPtVisible(HPS, PPOINTL);
- LONG APIENTRY GpiRectVisible(HPS, PRECTL);
- BOOL APIENTRY GpiComment(HPS, LONG, PBYTE);
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPIPRIMITIVES */
- #ifdef INCL_GPILCIDS
-
- /* return codes from GpiCreateLogFont */
- #define FONT_DEFAULT 1L
- #define FONT_MATCH 2L
-
- /* lcid type for GpiQuerySetIds */
- #define LCIDT_FONT 6L
-
- #ifndef INCL_SAADEFS
- #define LCIDT_BITMAP 7L
-
- /* constant used to delete all lcids by GpiDeleteSetId */
- #define LCID_ALL (-1L)
- #endif /* no INCL_SAADEFS */
-
- /* kerning data returned by GpiQueryKerningPairs */
- typedef struct _KERNINGPAIRS { /* krnpr */
- SHORT sFirstChar;
- SHORT sSecondChar;
- SHORT sKerningAmount;
- } KERNINGPAIRS;
- typedef KERNINGPAIRS FAR *PKERNINGPAIRS;
-
- #ifndef INCL_SAADEFS
-
- /* options for GpiQueryFonts */
- #define QF_PUBLIC 0x0001L
- #define QF_PRIVATE 0x0002L
-
- /* font file descriptions for GpiQueryFontFileDescriptions */
- typedef CHAR FFDESCS[2][FACESIZE]; /* ffdescs */
- typedef FFDESCS FAR *PFFDESCS;
-
- #endif /* no INCL_SAADEFS */
-
- #ifndef INCL_DDIDEFS
-
- /*** physical and logical font functions */
- BOOL APIENTRY GpiDeleteSetId(HPS, LONG);
- LONG APIENTRY GpiQueryNumberSetIds(HPS);
- BOOL APIENTRY GpiQuerySetIds(HPS, LONG, PLONG, PSTR8, PLONG);
- BOOL APIENTRY GpiLoadFonts(HAB, PSZ);
- BOOL APIENTRY GpiUnloadFonts(HAB, PSZ);
- LONG APIENTRY GpiCreateLogFont(HPS, PSTR8, LONG, PFATTRS);
- LONG APIENTRY GpiQueryFonts(HPS, ULONG, PSZ, PLONG, LONG, PFONTMETRICS);
- BOOL APIENTRY GpiQueryFontMetrics(HPS, LONG, PFONTMETRICS);
- LONG APIENTRY GpiQueryKerningPairs(HPS, LONG, PKERNINGPAIRS);
- BOOL APIENTRY GpiQueryWidthTable(HPS, LONG, LONG, PLONG);
- #ifndef INCL_SAADEFS
- BOOL APIENTRY GpiSetCp(HPS, USHORT);
- USHORT APIENTRY GpiQueryCp(HPS);
- LONG APIENTRY GpiQueryFontFileDescriptions(HAB, PSZ, PLONG, PFFDESCS);
- #endif /* no INCL_SAADEFS */
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPILCIDS */
- #if (defined(INCL_GPIBITMAPS) || !defined(INCL_NOCOMMON))
-
- /* rastor operations defined for GpiBitBlt */
- #define ROP_SRCCOPY 0x00CCL
- #define ROP_SRCPAINT 0x00EEL
- #define ROP_SRCAND 0x0088L
- #define ROP_SRCINVERT 0x0066L
- #define ROP_SRCERASE 0x0044L
- #define ROP_NOTSRCCOPY 0x0033L
- #define ROP_NOTSRCERASE 0x0011L
- #define ROP_MERGECOPY 0x00C0L
- #define ROP_MERGEPAINT 0x00BBL
- #define ROP_PATCOPY 0x00F0L
- #define ROP_PATPAINT 0x00FBL
- #define ROP_PATINVERT 0x005AL
- #define ROP_DSTINVERT 0x0055L
- #define ROP_ZERO 0x0000L
- #define ROP_ONE 0x00FFL
-
- /* Blt options for GpiBitBlt */
- #define BBO_OR 0L
- #define BBO_AND 1L
- #define BBO_IGNORE 2L
-
- /* error return for GpiSetBitmap */
- #define HBM_ERROR ((HBITMAP)-1L)
-
- #ifndef INCL_DDIDEFS
-
- /*** bitmap and pel functions */
- HBITMAP APIENTRY GpiLoadBitmap(HPS, HMODULE, USHORT, LONG, LONG);
- BOOL APIENTRY GpiDeleteBitmap(HBITMAP);
- HBITMAP APIENTRY GpiSetBitmap(HPS, HBITMAP);
- LONG APIENTRY GpiBitBlt(HPS, HPS, LONG, PPOINTL, LONG, ULONG);
- LONG APIENTRY GpiWCBitBlt(HPS, HBITMAP, LONG, PPOINTL, LONG, ULONG);
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* common GPIBITMAPS */
- #ifdef INCL_GPIBITMAPS
-
- /* usage flags for GpiCreateBitmap */
- #define CBM_INIT 0x0004L
-
- /* bitmap parameterization used by GpiCreateBitmap and others */
- typedef struct _BITMAPINFOHEADER { /* bmp */
- ULONG cbFix;
- USHORT cx;
- USHORT cy;
- USHORT cPlanes;
- USHORT cBitCount;
- } BITMAPINFOHEADER;
- typedef BITMAPINFOHEADER FAR *PBITMAPINFOHEADER;
-
- /* RGB data for _BITMAPINFO struct */
- typedef struct _RGB { /* rgb */
- BYTE bBlue;
- BYTE bGreen;
- BYTE bRed;
- } RGB;
-
- /* bitmap data used by GpiSetBitmapBits and others */
- typedef struct _BITMAPINFO { /* bmi */
- ULONG cbFix;
- USHORT cx;
- USHORT cy;
- USHORT cPlanes;
- USHORT cBitCount;
- RGB argbColor[1];
- } BITMAPINFO;
- typedef BITMAPINFO FAR *PBITMAPINFO;
-
- /* error return code for GpiSet/QueryBitmapBits */
- #define BMB_ERROR (-1L)
-
- #ifndef INCL_DDIDEFS
-
- /*** bitmap and pel functions */
- HBITMAP APIENTRY GpiCreateBitmap(HPS, PBITMAPINFOHEADER, ULONG, PBYTE,
- PBITMAPINFO);
- BOOL APIENTRY GpiSetBitmapDimension(HBITMAP, PSIZEL);
- BOOL APIENTRY GpiQueryBitmapDimension(HBITMAP, PSIZEL);
- BOOL APIENTRY GpiQueryDeviceBitmapFormats(HPS, LONG, PLONG);
- BOOL APIENTRY GpiQueryBitmapParameters(HBITMAP, PBITMAPINFOHEADER);
- LONG APIENTRY GpiQueryBitmapBits(HPS, LONG, LONG, PBYTE, PBITMAPINFO);
- LONG APIENTRY GpiSetBitmapBits(HPS, LONG, LONG, PBYTE, PBITMAPINFO);
- LONG APIENTRY GpiSetPel(HPS, PPOINTL);
- LONG APIENTRY GpiQueryPel(HPS, PPOINTL);
- BOOL APIENTRY GpiSetBitmapId(HPS, HBITMAP, LONG);
- HBITMAP APIENTRY GpiQueryBitmapHandle(HPS, LONG);
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPIBITMAPS */
- #ifdef INCL_GPIREGIONS
-
- /* options for GpiCombineRegion */
- #define CRGN_OR 1L
- #define CRGN_COPY 2L
- #define CRGN_XOR 4L
- #define CRGN_AND 6L
- #define CRGN_DIFF 7L
-
- /* usDirection of returned region data for GpiQueryRegionRects */
- #define RECTDIR_LFRT_TOPBOT 1L
- #define RECTDIR_RTLF_TOPBOT 2L
- #define RECTDIR_LFRT_BOTTOP 3L
- #define RECTDIR_RTLF_BOTTOP 4L
-
- /* control data for GpiQueryRegionRects */
- typedef struct _RGNRECT { /* rgnrc */
- USHORT ircStart;
- USHORT crc;
- USHORT crcReturned;
- USHORT usDirection;
- } RGNRECT;
- typedef RGNRECT FAR *PRGNRECT;
-
- /* return code to indicate type of region for GpiCombineRegion and others */
- #define RGN_ERROR 0L
- #define RGN_NULL 1L
- #define RGN_RECT 2L
- #define RGN_COMPLEX 3L
-
- /* return codes for GpiPtInRegion */
- #define PRGN_ERROR 0L
- #define PRGN_OUTSIDE 1L
- #define PRGN_INSIDE 2L
-
- /* return codes for GpiRectInRegion */
- #define RRGN_ERROR 0L
- #define RRGN_OUTSIDE 1L
- #define RRGN_PARTIAL 2L
- #define RRGN_INSIDE 3L
-
- /* return codes for GpiEqualRegion */
- #define EQRGN_ERROR 0L
- #define EQRGN_NOTEQUAL 1L
- #define EQRGN_EQUAL 2L
-
- /* error return code for GpiSetRegion */
- #define HRGN_ERROR ((HRGN)-1L)
-
- #ifndef INCL_DDIDEFS
-
- /*** main region functions */
- HRGN APIENTRY GpiCreateRegion(HPS, LONG, PRECTL);
- BOOL APIENTRY GpiSetRegion(HPS, HRGN, LONG, PRECTL);
- BOOL APIENTRY GpiDestroyRegion(HPS, HRGN);
- LONG APIENTRY GpiCombineRegion(HPS, HRGN, HRGN, HRGN, LONG);
- LONG APIENTRY GpiEqualRegion(HPS, HRGN, HRGN);
- BOOL APIENTRY GpiOffsetRegion(HPS, HRGN, PPOINTL);
- LONG APIENTRY GpiPtInRegion(HPS, HRGN, PPOINTL);
- LONG APIENTRY GpiRectInRegion(HPS, HRGN, PRECTL);
- LONG APIENTRY GpiQueryRegionBox(HPS, HRGN, PRECTL);
- BOOL APIENTRY GpiQueryRegionRects(HPS, HRGN, PRECTL, PRGNRECT, PRECTL);
- LONG APIENTRY GpiPaintRegion(HPS, HRGN);
-
- /*** clip region functions */
- LONG APIENTRY GpiSetClipRegion(HPS, HRGN, PHRGN);
-
- #ifndef INCL_SAADEFS
-
- HRGN APIENTRY GpiQueryClipRegion(HPS);
- LONG APIENTRY GpiQueryClipBox(HPS, PRECTL);
-
- #endif /* no INCL_SAADEFS */
-
- LONG APIENTRY GpiIntersectClipRectangle(HPS, PRECTL);
- LONG APIENTRY GpiExcludeClipRectangle(HPS, PRECTL);
-
- #ifndef INCL_SAADEFS
-
- LONG APIENTRY GpiOffsetClipRegion(HPS, PPOINTL);
-
- #endif /* no INCL_SAADEFS */
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPIREGIONS */
- #ifdef INCL_GPIMETAFILES
-
- #ifndef INCL_DDIDEFS
-
- /* constants for index values of options array for GpiPlayMetafile */
- #define PMF_SEGBASE 0
- #define PMF_LOADTYPE 1
- #define PMF_RESOLVE 2
- #define PMF_LCIDS 3
- #define PMF_RESET 4
- #define PMF_SUPPRESS 5
- #define PMF_COLORTABLES 6
- #define PMF_COLORREALIZABLE 7
-
- /* options for GpiPlayMetafile */
- #define RS_DEFAULT 0L
- #define RS_NODISCARD 1L
- #define LC_DEFAULT 0L
- #define LC_NOLOAD 1L
- #define LC_LOADDISC 3L
- #define LT_DEFAULT 0L
- #define LT_NOMODIFY 1L
-
- #ifndef INCL_SAADEFS
-
- #define LT_ORIGINALVIEW 4L
- #define RES_DEFAULT 0L
- #define RES_NORESET 1L
- #define RES_RESET 2L
- #define SUP_DEFAULT 0L
- #define SUP_NOSUPPRESS 1L
- #define SUP_SUPPRESS 2L
- #define CTAB_DEFAULT 0L
- #define CTAB_NOMODIFY 1L
- #define CTAB_REPLACE 3L
- #define CREA_DEFAULT 0L
- #define CREA_REALIZE 1L
- #define CREA_NOREALIZE 2L
- #define RSP_DEFAULT 0L
- #define RSP_NODISCARD 1L
-
- #endif /* no INCL_SAADEFS */
-
- /*** metafile functions */
- HMF APIENTRY GpiLoadMetaFile(HAB, PSZ);
- LONG APIENTRY GpiPlayMetaFile(HPS, HMF, LONG, PLONG, PLONG, LONG, PSZ);
- BOOL APIENTRY GpiSaveMetaFile(HMF, PSZ);
- BOOL APIENTRY GpiDeleteMetaFile(HMF);
-
- HMF APIENTRY GpiCopyMetaFile(HMF);
- LONG APIENTRY GpiQueryMetaFileLength(HMF);
- BOOL APIENTRY GpiQueryMetaFileBits(HMF, LONG, LONG, PBYTE);
-
- #ifndef INCL_SAADEFS
-
- BOOL APIENTRY GpiSetMetaFileBits(HMF, LONG, LONG, PBYTE);
-
- #endif /* no INCL_SAADEFS */
-
- #endif /* no INCL_DDIDEFS */
-
- #endif /* non-common GPIMETAFILES */
-
- #ifdef INCL_GPIERRORS
-
- /* AAB error codes for the GPI */
- #define PMERR_OK 0x0000
- #define PMERR_ALREADY_IN_AREA 0x2001
- #define PMERR_ALREADY_IN_ELEMENT 0x2002
- #define PMERR_ALREADY_IN_PATH 0x2003
- #define PMERR_ALREADY_IN_SEG 0x2004
- #define PMERR_AREA_INCOMPLETE 0x2005
- #define PMERR_BASE_ERROR 0x2006
- #define PMERR_BITBLT_LENGTH_EXCEEDED 0x2007
- #define PMERR_BITMAP_IN_USE 0x2008
- #define PMERR_BITMAP_IS_SELECTED 0x2009
- #define PMERR_BITMAP_NOT_FOUND 0x200A
- #define PMERR_BITMAP_NOT_SELECTED 0x200B
- #define PMERR_BOUNDS_OVERFLOW 0x200C
- #define PMERR_CALLED_SEG_IS_CHAINED 0x200D
- #define PMERR_CALLED_SEG_IS_CURRENT 0x200E
- #define PMERR_CALLED_SEG_NOT_FOUND 0x200F
- #define PMERR_CANNOT_DELETE_ALL_DATA 0x2010
- #define PMERR_CANNOT_REPLACE_ELEMENT_0 0x2011
- #define PMERR_COL_TABLE_NOT_REALIZABLE 0x2012
- #define PMERR_COL_TABLE_NOT_REALIZED 0x2013
- #define PMERR_COORDINATE_OVERFLOW 0x2014
- #define PMERR_CORR_FORMAT_MISMATCH 0x2015
- #define PMERR_DATA_TOO_LONG 0x2016
- #define PMERR_DC_IS_ASSOCIATED 0x2017
- #define PMERR_DESC_STRING_TRUNCATED 0x2018
- #define PMERR_DEVICE_DRIVER_ERROR_1 0x2019
- #define PMERR_DEVICE_DRIVER_ERROR_2 0x201A
- #define PMERR_DEVICE_DRIVER_ERROR_3 0x201B
- #define PMERR_DEVICE_DRIVER_ERROR_4 0x201C
- #define PMERR_DEVICE_DRIVER_ERROR_5 0x201D
- #define PMERR_DEVICE_DRIVER_ERROR_6 0x201E
- #define PMERR_DEVICE_DRIVER_ERROR_7 0x201F
- #define PMERR_DEVICE_DRIVER_ERROR_8 0x2020
- #define PMERR_DEVICE_DRIVER_ERROR_9 0x2021
- #define PMERR_DEVICE_DRIVER_ERROR_10 0x2022
- #define PMERR_DEV_FUNC_NOT_INSTALLED 0x2023
- #define PMERR_DOSOPEN_FAILURE 0x2024
- #define PMERR_DOSREAD_FAILURE 0x2025
- #define PMERR_DRIVER_NOT_FOUND 0x2026
- #define PMERR_DUP_SEG 0x2027
- #define PMERR_DYNAMIC_SEG_SEQ_ERROR 0x2028
- #define PMERR_DYNAMIC_SEG_ZERO_INV 0x2029
- #define PMERR_ELEMENT_INCOMPLETE 0x202A
- #define PMERR_ESC_CODE_NOT_SUPPORTED 0x202B
- #define PMERR_EXCEEDS_MAX_SEG_LENGTH 0x202C
- #define PMERR_FONT_AND_MODE_MISMATCH 0x202D
- #define PMERR_FONT_FILE_NOT_LOADED 0x202E
- #define PMERR_FONT_NOT_LOADED 0x202F
- #define PMERR_FONT_TOO_BIG 0x2030
- #define PMERR_HARDWARE_INIT_FAILURE 0x2031
- #define PMERR_HBITMAP_BUSY 0x2032
- #define PMERR_HDC_BUSY 0x2033
- #define PMERR_HRGN_BUSY 0x2034
- #define PMERR_HUGE_FONTS_NOT_SUPPORTED 0x2035
- #define PMERR_ID_HAS_NO_BITMAP 0x2036
- #define PMERR_IMAGE_INCOMPLETE 0x2037
- #define PMERR_INCOMPAT_COLOR_FORMAT 0x2038
- #define PMERR_INCOMPAT_COLOR_OPTIONS 0x2039
- #define PMERR_INCOMPATIBLE_BITMAP 0x203A
- #define PMERR_INCOMPATIBLE_METAFILE 0x203B
- #define PMERR_INCORRECT_DC_TYPE 0x203C
- #define PMERR_INSUFFICIENT_DISK_SPACE 0x203D
- #define PMERR_INSUFFICIENT_MEMORY 0x203E
- #define PMERR_INV_ANGLE_PARM 0x203F
- #define PMERR_INV_ARC_CONTROL 0x2040
- #define PMERR_INV_AREA_CONTROL 0x2041
- #define PMERR_INV_ARC_POINTS 0x2042
- #define PMERR_INV_ATTR_MODE 0x2043
- #define PMERR_INV_BACKGROUND_COL_ATTR 0x2044
- #define PMERR_INV_BACKGROUND_MIX_ATTR 0x2045
- #define PMERR_INV_BITBLT_MIX 0x2046
- #define PMERR_INV_BITBLT_STYLE 0x2047
- #define PMERR_INV_BITMAP_DIMENSION 0x2048
- #define PMERR_INV_BOX_CONTROL 0x2049
- #define PMERR_INV_BOX_ROUNDING_PARM 0x204A
- #define PMERR_INV_CHAR_ANGLE_ATTR 0x204B
- #define PMERR_INV_CHAR_DIRECTION_ATTR 0x204C
- #define PMERR_INV_CHAR_MODE_ATTR 0x204D
- #define PMERR_INV_CHAR_POS_OPTIONS 0x204E
- #define PMERR_INV_CHAR_SET_ATTR 0x204F
- #define PMERR_INV_CHAR_SHEAR_ATTR 0x2050
- #define PMERR_INV_CLIP_PATH_OPTIONS 0x2051
- #define PMERR_INV_CODEPAGE 0x2052
- #define PMERR_INV_COLOR_ATTR 0x2053
- #define PMERR_INV_COLOR_DATA 0x2054
- #define PMERR_INV_COLOR_FORMAT 0x2055
- #define PMERR_INV_COLOR_INDEX 0x2056
- #define PMERR_INV_COLOR_OPTIONS 0x2057
- #define PMERR_INV_COLOR_START_INDEX 0x2058
- #define PMERR_INV_COORD_OFFSET 0x2059
- #define PMERR_INV_COORD_SPACE 0x205A
- #define PMERR_INV_COORDINATE 0x205B
- #define PMERR_INV_CORRELATE_DEPTH 0x205C
- #define PMERR_INV_CORRELATE_TYPE 0x205D
- #define PMERR_INV_CURSOR_BITMAP 0x205E
- #define PMERR_INV_DC_DATA 0x205F
- #define PMERR_INV_DC_TYPE 0x2060
- #define PMERR_INV_DEVICE_NAME 0x2061
- #define PMERR_INV_DEV_MODES_OPTIONS 0x2062
- #define PMERR_INV_DRAW_CONTROL 0x2063
- #define PMERR_INV_DRAW_VALUE 0x2064
- #define PMERR_INV_DRAWING_MODE 0x2065
- #define PMERR_INV_DRIVER_DATA 0x2066
- #define PMERR_INV_DRIVER_NAME 0x2067
- #define PMERR_INV_DRAW_BORDER_OPTION 0x2068
- #define PMERR_INV_EDIT_MODE 0x2069
- #define PMERR_INV_ELEMENT_OFFSET 0x206A
- #define PMERR_INV_ELEMENT_POINTER 0x206B
- #define PMERR_INV_END_PATH_OPTIONS 0x206C
- #define PMERR_INV_ESC_CODE 0x206D
- #define PMERR_INV_ESCAPE_DATA 0x206E
- #define PMERR_INV_EXTENDED_LCID 0x206F
- #define PMERR_INV_FILL_PATH_OPTIONS 0x2070
- #define PMERR_INV_FIRST_CHAR 0x2071
- #define PMERR_INV_FONT_ATTRS 0x2072
- #define PMERR_INV_FONT_FILE_DATA 0x2073
- #define PMERR_INV_FOR_THIS_DC_TYPE 0x2074
- #define PMERR_INV_FORMAT_CONTROL 0x2075
- #define PMERR_INV_FORMS_CODE 0x2076
- #define PMERR_INV_FONTDEF 0x2077
- #define PMERR_INV_GEOM_LINE_WIDTH_ATTR 0x2078
- #define PMERR_INV_GETDATA_CONTROL 0x2079
- #define PMERR_INV_GRAPHICS_FIELD 0x207A
- #define PMERR_INV_HBITMAP 0x207B
- #define PMERR_INV_HDC 0x207C
- #define PMERR_INV_HJOURNAL 0x207D
- #define PMERR_INV_HMF 0x207E
- #define PMERR_INV_HPS 0x207F
- #define PMERR_INV_HRGN 0x2080
- #define PMERR_INV_ID 0x2081
- #define PMERR_INV_IMAGE_DATA_LENGTH 0x2082
- #define PMERR_INV_IMAGE_DIMENSION 0x2083
- #define PMERR_INV_IMAGE_FORMAT 0x2084
- #define PMERR_INV_IN_AREA 0x2085
- #define PMERR_INV_IN_CALLED_SEG 0x2086
- #define PMERR_INV_IN_CURRENT_EDIT_MODE 0x2087
- #define PMERR_INV_IN_DRAW_MODE 0x2088
- #define PMERR_INV_IN_ELEMENT 0x2089
- #define PMERR_INV_IN_IMAGE 0x208A
- #define PMERR_INV_IN_PATH 0x208B
- #define PMERR_INV_IN_RETAIN_MODE 0x208C
- #define PMERR_INV_IN_SEG 0x208D
- #define PMERR_INV_IN_VECTOR_SYMBOL 0x208E
- #define PMERR_INV_INFO_TABLE 0x208F
- #define PMERR_INV_JOURNAL_OPTION 0x2090
- #define PMERR_INV_KERNING_FLAGS 0x2091
- #define PMERR_INV_LENGTH_OR_COUNT 0x2092
- #define PMERR_INV_LINE_END_ATTR 0x2093
- #define PMERR_INV_LINE_JOIN_ATTR 0x2094
- #define PMERR_INV_LINE_TYPE_ATTR 0x2095
- #define PMERR_INV_LINE_WIDTH_ATTR 0x2096
- #define PMERR_INV_LOGICAL_ADDRESS 0x2097
- #define PMERR_INV_MARKER_BOX_ATTR 0x2098
- #define PMERR_INV_MARKER_SET_ATTR 0x2099
- #define PMERR_INV_MARKER_SYMBOL_ATTR 0x209A
- #define PMERR_INV_MATRIX_ELEMENT 0x209B
- #define PMERR_INV_MAX_HITS 0x209C
- #define PMERR_INV_METAFILE 0x209D
- #define PMERR_INV_METAFILE_LENGTH 0x209E
- #define PMERR_INV_METAFILE_OFFSET 0x209F
- #define PMERR_INV_MICROPS_DRAW_CONTROL 0x20A0
- #define PMERR_INV_MICROPS_FUNCTION 0x20A1
- #define PMERR_INV_MICROPS_ORDER 0x20A2
- #define PMERR_INV_MIX_ATTR 0x20A3
- #define PMERR_INV_MODE_FOR_OPEN_DYN 0x20A4
- #define PMERR_INV_MODE_FOR_REOPEN_SEG 0x20A5
- #define PMERR_INV_MODIFY_PATH_MODE 0x20A6
- #define PMERR_INV_MULTIPLIER 0x20A7
- #define PMERR_INV_NESTED_FIGURES 0x20A8
- #define PMERR_INV_OR_INCOMPAT_OPTIONS 0x20A9
- #define PMERR_INV_ORDER_LENGTH 0x20AA
- #define PMERR_INV_ORDERING_PARM 0x20AB
- #define PMERR_INV_OUTSIDE_DRAW_MODE 0x20AC
- #define PMERR_INV_PAGE_VIEWPORT 0x20AD
- #define PMERR_INV_PATH_ID 0x20AE
- #define PMERR_INV_PATH_MODE 0x20AF
- #define PMERR_INV_PATTERN_ATTR 0x20B0
- #define PMERR_INV_PATTERN_REF_PT_ATTR 0x20B1
- #define PMERR_INV_PATTERN_SET_ATTR 0x20B2
- #define PMERR_INV_PATTERN_SET_FONT 0x20B3
- #define PMERR_INV_PICK_APERTURE_OPTION 0x20B4
- #define PMERR_INV_PICK_APERTURE_POSN 0x20B5
- #define PMERR_INV_PICK_APERTURE_SIZE 0x20B6
- #define PMERR_INV_PICK_NUMBER 0x20B7
- #define PMERR_INV_PLAY_METAFILE_OPTION 0x20B8
- #define PMERR_INV_PRIMITIVE_TYPE 0x20B9
- #define PMERR_INV_PS_SIZE 0x20BA
- #define PMERR_INV_PUTDATA_FORMAT 0x20BB
- #define PMERR_INV_QUERY_ELEMENT_NO 0x20BC
- #define PMERR_INV_RECT 0x20BD
- #define PMERR_INV_REGION_CONTROL 0x20BE
- #define PMERR_INV_REGION_MIX_MODE 0x20BF
- #define PMERR_INV_REPLACE_MODE_FUNC 0x20C0
- #define PMERR_INV_RESERVED_FIELD 0x20C1
- #define PMERR_INV_RESET_OPTIONS 0x20C2
- #define PMERR_INV_RGBCOLOR 0x20C3
- #define PMERR_INV_SCAN_START 0x20C4
- #define PMERR_INV_SEG_ATTR 0x20C5
- #define PMERR_INV_SEG_ATTR_VALUE 0x20C6
- #define PMERR_INV_SEG_CH_LENGTH 0x20C7
- #define PMERR_INV_SEG_NAME 0x20C8
- #define PMERR_INV_SEG_OFFSET 0x20C9
- #define PMERR_INV_SETID 0x20CA
- #define PMERR_INV_SETID_TYPE 0x20CB
- #define PMERR_INV_SET_VIEWPORT_OPTION 0x20CC
- #define PMERR_INV_SHARPNESS_PARM 0x20CD
- #define PMERR_INV_SOURCE_OFFSET 0x20CE
- #define PMERR_INV_STOP_DRAW_VALUE 0x20CF
- #define PMERR_INV_TRANSFORM_TYPE 0x20D0
- #define PMERR_INV_USAGE_PARM 0x20D1
- #define PMERR_INV_VIEWING_LIMITS 0x20D2
- #define PMERR_JFILE_BUSY 0x20D3
- #define PMERR_JNL_FUNC_DATA_TOO_LONG 0x20D4
- #define PMERR_KERNING_NOT_SUPPORTED 0x20D5
- #define PMERR_LABEL_NOT_FOUND 0x20D6
- #define PMERR_MATRIX_OVERFLOW 0x20D7
- #define PMERR_METAFILE_INTERNAL_ERROR 0x20D8
- #define PMERR_METAFILE_IN_USE 0x20D9
- #define PMERR_METAFILE_LIMIT_EXCEEDED 0x20DA
- #define PMERR_NAME_STACK_FULL 0x20DB
- #define PMERR_NOT_CREATED_BY_DEVOPENDC 0x20DC
- #define PMERR_NOT_IN_AREA 0x20DD
- #define PMERR_NOT_IN_DRAW_MODE 0x20DE
- #define PMERR_NOT_IN_ELEMENT 0x20DF
- #define PMERR_NOT_IN_IMAGE 0x20E0
- #define PMERR_NOT_IN_PATH 0x20E1
- #define PMERR_NOT_IN_RETAIN_MODE 0x20E2
- #define PMERR_NOT_IN_SEG 0x20E3
- #define PMERR_NO_BITMAP_SELECTED 0x20E4
- #define PMERR_NO_CURRENT_ELEMENT 0x20E5
- #define PMERR_NO_CURRENT_SEG 0x20E6
- #define PMERR_NO_METAFILE_RECORD_HANDLE 0x20E7
- #define PMERR_ORDER_TOO_BIG 0x20E8
- #define PMERR_OTHER_SET_ID_REFS 0x20E9
- #define PMERR_OVERRAN_SEG 0x20EA
- #define PMERR_OWN_SET_ID_REFS 0x20EB
- #define PMERR_PATH_INCOMPLETE 0x20EC
- #define PMERR_PATH_LIMIT_EXCEEDED 0x20ED
- #define PMERR_PATH_UNKNOWN 0x20EE
- #define PMERR_PEL_IS_CLIPPED 0x20EF
- #define PMERR_PEL_NOT_AVAILABLE 0x20F0
- #define PMERR_PRIMITIVE_STACK_EMPTY 0x20F1
- #define PMERR_PROLOG_ERROR 0x20F2
- #define PMERR_PROLOG_SEG_ATTR_NOT_SET 0x20F3
- #define PMERR_PS_BUSY 0x20F4
- #define PMERR_PS_IS_ASSOCIATED 0x20F5
- #define PMERR_RAM_JNL_FILE_TOO_SMALL 0x20F6
- #define PMERR_REALIZE_NOT_SUPPORTED 0x20F7
- #define PMERR_REGION_IS_CLIP_REGION 0x20F8
- #define PMERR_RESOURCE_DEPLETION 0x20F9
- #define PMERR_SEG_AND_REFSEG_ARE_SAME 0x20FA
- #define PMERR_SEG_CALL_RECURSIVE 0x20FB
- #define PMERR_SEG_CALL_STACK_EMPTY 0x20FC
- #define PMERR_SEG_CALL_STACK_FULL 0x20FD
- #define PMERR_SEG_IS_CURRENT 0x20FE
- #define PMERR_SEG_NOT_CHAINED 0x20FF
- #define PMERR_SEG_NOT_FOUND 0x2100
- #define PMERR_SEG_STORE_LIMIT_EXCEEDED 0x2101
- #define PMERR_SETID_IN_USE 0x2102
- #define PMERR_SETID_NOT_FOUND 0x2103
- #define PMERR_STARTDOC_NOT_ISSUED 0x2104
- #define PMERR_STOP_DRAW_OCCURRED 0x2105
- #define PMERR_TOO_MANY_METAFILES_IN_USE 0x2106
- #define PMERR_TRUNCATED_ORDER 0x2107
- #define PMERR_UNCHAINED_SEG_ZERO_INV 0x2108
- #define PMERR_UNSUPPORTED_ATTR 0x2109
- #define PMERR_UNSUPPORTED_ATTR_VALUE 0x210A
-
- #endif /* non-common GPIERRORS */
-