|
|
1.1 ! root 1: /***************************************************************************\ ! 2: * ! 3: * Module Name: PMGPI.H ! 4: * ! 5: * OS/2 Presentation Manager GPI constants, types and function declarations ! 6: * ! 7: * Copyright (c) 1987 IBM Corporation ! 8: * Copyright (c) 1987 Microsoft Corporation ! 9: * ! 10: * ============================================================================= ! 11: * ! 12: * The following symbols are used in this file for conditional sections. ! 13: * ! 14: * INCL_GPI Include all of the GPI ! 15: * INCL_GPICONTROL Basic PS control ! 16: * INCL_GPICORRELATION Picking, Boundary and Correlation ! 17: * INCL_GPISEGMENTS Segment Control and Drawing ! 18: * INCL_GPISEGEDITING Segment Editing via Elements ! 19: * INCL_GPITRANSFORMS Transform and Transform Conversion ! 20: * INCL_GPIPATHS Paths and Clipping with Paths ! 21: * INCL_GPILOGCOLORTABLE Logical Color Tables ! 22: * INCL_GPIPRIMITIVES Drawing Primitives and Primitive Attributes ! 23: * INCL_GPILCIDS Phyical and Logical Fonts with Lcids ! 24: * INCL_GPIBITMAPS Bitmaps and Pel Operations ! 25: * INCL_GPIREGIONS Regions and Clipping with Regions ! 26: * INCL_GPIMETAFILES Metafiles ! 27: * INCL_GPIERRORS defined if INCL_ERRORS defined ! 28: * ! 29: * There is a symbol used in this file called INCL_DDIDEFS. This is used to ! 30: * include only the definitions for the DDI. The programmer using the GPI ! 31: * can ignore this symbol ! 32: * ! 33: * There is a symbol used in this file called INCL_SAADEFS. This is used to ! 34: * include only the definitions for the SAA. The programmer using the GPI ! 35: * can ignore this symbol ! 36: * ! 37: \***************************************************************************/ ! 38: ! 39: #ifdef INCL_GPI /* include whole of the GPI */ ! 40: #define INCL_GPICONTROL ! 41: #define INCL_GPICORRELATION ! 42: #define INCL_GPISEGMENTS ! 43: #define INCL_GPISEGEDITING ! 44: #define INCL_GPITRANSFORMS ! 45: #define INCL_GPIPATHS ! 46: #define INCL_GPILOGCOLORTABLE ! 47: #define INCL_GPIPRIMITIVES ! 48: #define INCL_GPILCIDS ! 49: #define INCL_GPIBITMAPS ! 50: #define INCL_GPIREGIONS ! 51: #define INCL_GPIMETAFILES ! 52: #endif /* INCL_GPI */ ! 53: ! 54: #ifdef INCL_ERRORS /* if errors are required then allow GPI errors */ ! 55: #define INCL_GPIERRORS ! 56: #endif /* INCL_ERRORS */ ! 57: ! 58: #ifdef INCL_DDIDEFS /* if only DDI required then enable DDI part of GPI */ ! 59: #define INCL_GPITRANSFORMS ! 60: #define INCL_GPIPATHS ! 61: #define INCL_GPILOGCOLORTABLE ! 62: #define INCL_GPIPRIMITIVES ! 63: #define INCL_GPILCIDS ! 64: #define INCL_GPIBITMAPS ! 65: #define INCL_GPIREGIONS ! 66: #define INCL_GPIERRORS ! 67: #endif /* INCL_DDIDEFS */ ! 68: ! 69: #ifdef INCL_SAADEFS /* if only SAA required then enable SAA part of GPI */ ! 70: #define INCL_GPICONTROL ! 71: #define INCL_GPICORRELATION ! 72: #define INCL_GPISEGMENTS ! 73: #define INCL_GPITRANSFORMS ! 74: #define INCL_GPIPRIMITIVES ! 75: #define INCL_GPILCIDS ! 76: #define INCL_GPIMETAFILES ! 77: #define INCL_GPIERRORS ! 78: #endif /* INCL_SAADEFS */ ! 79: ! 80: /* General GPI return values */ ! 81: #define GPI_ERROR 0L ! 82: #define GPI_OK 1L ! 83: #define GPI_ALTERROR (-1L) ! 84: ! 85: /* fixed point number - implicit binary point between 2 and 3 hex digits */ ! 86: typedef LONG FIXED; /* fx */ ! 87: typedef FIXED FAR *PFIXED; ! 88: ! 89: /* make FIXED number from SHORT integer part and USHORT fractional part */ ! 90: #define MAKEFIXED(intpart,fractpart) MAKELONG(fractpart,intpart) ! 91: /* extract fractional part from a fixed quantity */ ! 92: #define FIXEDFRAC(fx) (LOUSHORT(fx)) ! 93: /* extract integer part from a fixed quantity */ ! 94: #define FIXEDINT(fx) ((SHORT)HIUSHORT(fx)) ! 95: ! 96: /* structure for size parameters e.g. for GpiCreatePS */ ! 97: typedef struct _SIZEL { /* sizl */ ! 98: LONG cx; ! 99: LONG cy; ! 100: } SIZEL; ! 101: typedef SIZEL FAR *PSIZEL; ! 102: ! 103: #ifndef INCL_SAADEFS ! 104: ! 105: /* return code on GpiQueryLogColorTable and GpiQueryPel */ ! 106: #define CLR_NOINDEX (-254L) ! 107: ! 108: #endif /* no INCL_SAADEFS */ ! 109: ! 110: #if (defined(INCL_GPICONTROL) | !defined(INCL_NOCOMMON)) ! 111: ! 112: /* units for GpiCreatePS and others */ ! 113: #define PU_ARBITRARY 0x0004L ! 114: #define PU_PELS 0x0008L ! 115: #define PU_LOMETRIC 0x000CL ! 116: #define PU_HIMETRIC 0x0010L ! 117: #define PU_LOENGLISH 0x0014L ! 118: #define PU_HIENGLISH 0x0018L ! 119: #define PU_TWIPS 0x001CL ! 120: ! 121: /* format for GpiCreatePS */ ! 122: #define GPIF_DEFAULT 0L ! 123: #ifndef INCL_SAADEFS ! 124: #define GPIF_SHORT 0x0100L ! 125: #define GPIF_LONG 0x0200L ! 126: #endif /* no INCL_SAADEFS */ ! 127: ! 128: /* PS type for GpiCreatePS */ ! 129: #define GPIT_NORMAL 0L ! 130: #ifndef INCL_SAADEFS ! 131: #define GPIT_MICRO 0x1000L ! 132: #endif /* no INCL_SAADEFS */ ! 133: ! 134: /* implicit associate flag for GpiCreatePS */ ! 135: #define GPIA_NOASSOC 0L ! 136: #define GPIA_ASSOC 0x4000L ! 137: ! 138: #ifndef INCL_SAADEFS ! 139: /* return error for GpiQueryDevice */ ! 140: #define HDC_ERROR ((HDC)-1L) ! 141: #endif /* no INCL_SAADEFS */ ! 142: ! 143: /*** common GPICONTROL functions */ ! 144: HPS APIENTRY GpiCreatePS( HAB, HDC, PSIZEL, ULONG ); ! 145: BOOL APIENTRY GpiDestroyPS( HPS ); ! 146: BOOL APIENTRY GpiAssociate( HPS, HDC ); ! 147: ! 148: #ifndef INCL_SAADEFS ! 149: BOOL APIENTRY GpiRestorePS( HPS, LONG ); ! 150: LONG APIENTRY GpiSavePS( HPS ); ! 151: BOOL APIENTRY GpiErase( HPS ); ! 152: HDC APIENTRY GpiQueryDevice( HPS ); ! 153: #endif /* no INCL_SAADEFS */ ! 154: ! 155: #endif /* common GPICONTROL */ ! 156: #ifdef INCL_GPICONTROL ! 157: ! 158: /* options for GpiResetPS */ ! 159: #define GRES_ATTRS 0x0001L ! 160: #define GRES_SEGMENTS 0x0002L ! 161: #define GRES_ALL 0x0004L ! 162: ! 163: /* option masks for PS options used by GpiQueryPs */ ! 164: #define PS_UNITS 0x00FCL ! 165: #define PS_FORMAT 0x0F00L ! 166: #define PS_TYPE 0x1000L ! 167: #define PS_MODE 0x2000L ! 168: #define PS_ASSOCIATE 0x4000L ! 169: ! 170: #ifndef INCL_SAADEFS ! 171: ! 172: /* error context returned by GpiErrorSegmentData */ ! 173: #define GPIE_SEGMENT 0L ! 174: #define GPIE_ELEMENT 1L ! 175: #define GPIE_DATA 2L ! 176: ! 177: /* control parameter for GpiSetDrawControl */ ! 178: #define DCTL_ERASE 1L ! 179: #define DCTL_DISPLAY 2L ! 180: #define DCTL_BOUNDARY 3L ! 181: #define DCTL_DYNAMIC 4L ! 182: #define DCTL_CORRELATE 5L ! 183: ! 184: /* constants for GpiSet/QueryDrawControl */ ! 185: #define DCTL_ERROR -1L ! 186: #define DCTL_OFF 0L ! 187: #define DCTL_ON 1L ! 188: ! 189: /* constants for GpiSet/QueryStopDraw */ ! 190: #define SDW_ERROR -1L ! 191: #define SDW_OFF 0L ! 192: #define SDW_ON 1L ! 193: ! 194: /* drawing for GpiSet/QueryDrawingMode */ ! 195: #define DM_ERROR 0L ! 196: #define DM_DRAW 1L ! 197: #define DM_RETAIN 2L ! 198: #define DM_DRAWANDRETAIN 3L ! 199: ! 200: #endif /* no INCL_SAADEFS */ ! 201: ! 202: /*** other GPICONTROL functions */ ! 203: BOOL APIENTRY GpiResetPS( HPS, ULONG ); ! 204: BOOL APIENTRY GpiSetPS( HPS, PSIZEL, ULONG ); ! 205: ULONG APIENTRY GpiQueryPS( HPS, PSIZEL ); ! 206: ! 207: #ifndef INCL_SAADEFS ! 208: ! 209: LONG APIENTRY GpiErrorSegmentData( HPS, PLONG, PLONG ); ! 210: LONG APIENTRY GpiQueryDrawControl( HPS, LONG ); ! 211: BOOL APIENTRY GpiSetDrawControl( HPS, LONG, LONG ); ! 212: LONG APIENTRY GpiQueryDrawingMode( HPS ); ! 213: BOOL APIENTRY GpiSetDrawingMode( HPS, LONG ); ! 214: LONG APIENTRY GpiQueryStopDraw( HPS ); ! 215: BOOL APIENTRY GpiSetStopDraw( HPS, LONG ); ! 216: ! 217: #endif /* no INCL_SAADEFS */ ! 218: ! 219: #endif /* non-common GPICONTROL */ ! 220: #ifdef INCL_GPICORRELATION ! 221: ! 222: /* options for GpiSetPickApertureSize */ ! 223: #define PICKAP_DEFAULT 0L ! 224: #define PICKAP_REC 2L ! 225: ! 226: /* type of correlation for GpiCorrelateChain */ ! 227: #define PICKSEL_VISIBLE 0L ! 228: #define PICKSEL_ALL 1L ! 229: ! 230: #ifndef INCL_SAADEFS ! 231: /* return code to indicate correlate hit(s) */ ! 232: #define GPI_HITS 2L ! 233: #endif /* no INCL_SAADEFS */ ! 234: ! 235: /*** picking, correlation and boundary functions */ ! 236: LONG APIENTRY GpiCorrelateChain( HPS, LONG, PPOINTL, LONG, LONG, PLONG ); ! 237: BOOL APIENTRY GpiQueryTag( HPS, PLONG ); ! 238: BOOL APIENTRY GpiSetTag( HPS, LONG ); ! 239: BOOL APIENTRY GpiQueryPickApertureSize( HPS, PSIZEL ); ! 240: BOOL APIENTRY GpiSetPickApertureSize( HPS, LONG, PSIZEL ); ! 241: ! 242: #ifndef INCL_SAADEFS ! 243: ! 244: BOOL APIENTRY GpiQueryPickAperturePosition( HPS, PPOINTL ); ! 245: BOOL APIENTRY GpiSetPickAperturePosition( HPS, PPOINTL ); ! 246: BOOL APIENTRY GpiQueryBoundaryData( HPS, PRECTL ); ! 247: BOOL APIENTRY GpiResetBoundaryData( HPS ); ! 248: LONG APIENTRY GpiCorrelateFrom( HPS, LONG, LONG, LONG, PPOINTL ! 249: , LONG, LONG, PLONG ); ! 250: LONG APIENTRY GpiCorrelateSegment( HPS, LONG, LONG, PPOINTL ! 251: , LONG, LONG, PLONG ); ! 252: ! 253: #endif /* no INCL_SAADEFS */ ! 254: ! 255: #endif /* non-common_GPICORRELATION */ ! 256: #ifdef INCL_GPISEGMENTS ! 257: ! 258: /* data formats for GpiPutData and GpiGetData */ ! 259: #define DFORM_NOCONV 0L ! 260: ! 261: #ifndef INCL_SAADEFS ! 262: ! 263: #define DFORM_S370SHORT 1L ! 264: #define DFORM_PCSHORT 2L ! 265: #define DFORM_PCLONG 4L ! 266: ! 267: #endif /* no INCL_SAADEFS */ ! 268: ! 269: /* segment attributes used by GpiSet/QuerySegmentAttrs and others */ ! 270: #define ATTR_ERROR (-1L) ! 271: #define ATTR_DETECTABLE 1L ! 272: #define ATTR_VISIBLE 2L ! 273: #define ATTR_CHAINED 6L ! 274: ! 275: #ifndef INCL_SAADEFS ! 276: ! 277: #define ATTR_DYNAMIC 8L ! 278: #define ATTR_FASTCHAIN 9L ! 279: #define ATTR_PROP_DETECTABLE 10L ! 280: #define ATTR_PROP_VISIBLE 11L ! 281: ! 282: #endif /* no INCL_SAADEFS */ ! 283: ! 284: /* attribute on/off values */ ! 285: #define ATTR_OFF 0L ! 286: #define ATTR_ON 1L ! 287: ! 288: /* segment priority used by GpiSetSegmentPriority and others */ ! 289: #define LOWER_PRI (-1L) ! 290: #define HIGHER_PRI 1L ! 291: ! 292: /*** segment control functions */ ! 293: BOOL APIENTRY GpiOpenSegment( HPS, LONG ); ! 294: BOOL APIENTRY GpiCloseSegment( HPS ); ! 295: BOOL APIENTRY GpiDeleteSegment( HPS, LONG ); ! 296: LONG APIENTRY GpiQueryInitialSegmentAttrs( HPS, LONG ); ! 297: BOOL APIENTRY GpiSetInitialSegmentAttrs( HPS, LONG, LONG ); ! 298: LONG APIENTRY GpiQuerySegmentAttrs( HPS, LONG, LONG ); ! 299: BOOL APIENTRY GpiSetSegmentAttrs( HPS, LONG, LONG, LONG ); ! 300: LONG APIENTRY GpiQuerySegmentPriority( HPS, LONG, LONG ); ! 301: BOOL APIENTRY GpiSetSegmentPriority( HPS, LONG, LONG, LONG ); ! 302: ! 303: #ifndef INCL_SAADEFS ! 304: ! 305: BOOL APIENTRY GpiDeleteSegments( HPS, LONG, LONG ); ! 306: LONG APIENTRY GpiQuerySegmentNames( HPS, LONG, LONG, LONG, PLONG ); ! 307: ! 308: #endif /* no INCL_SAADEFS */ ! 309: ! 310: /*** draw functions for segments */ ! 311: LONG APIENTRY GpiGetData( HPS, LONG, PLONG, LONG, LONG, PBYTE ); ! 312: LONG APIENTRY GpiPutData( HPS, LONG, PLONG, PBYTE ); ! 313: ! 314: #ifndef INCL_SAADEFS ! 315: ! 316: BOOL APIENTRY GpiDrawChain( HPS ); ! 317: BOOL APIENTRY GpiDrawFrom( HPS, LONG, LONG ); ! 318: BOOL APIENTRY GpiDrawSegment( HPS, LONG ); ! 319: BOOL APIENTRY GpiDrawDynamics( HPS ); ! 320: BOOL APIENTRY GpiRemoveDynamics( HPS, LONG, LONG ); ! 321: ! 322: #endif /* no INCL_SAADEFS */ ! 323: ! 324: #endif /* non-common GPISEGMENTS */ ! 325: #ifdef INCL_GPISEGEDITING ! 326: ! 327: /* edit modes used by GpiSet/QueryEditMode */ ! 328: #define SEGEM_ERROR 0L ! 329: #define SEGEM_INSERT 1L ! 330: #define SEGEM_REPLACE 2L ! 331: ! 332: /*** segment editing by element functions */ ! 333: BOOL APIENTRY GpiBeginElement( HPS, LONG, PSZ ); ! 334: BOOL APIENTRY GpiEndElement( HPS ); ! 335: BOOL APIENTRY GpiLabel( HPS, LONG ); ! 336: LONG APIENTRY GpiElement( HPS, LONG, PSZ, LONG, PBYTE ); ! 337: LONG APIENTRY GpiQueryElement( HPS, LONG, LONG, PBYTE ); ! 338: BOOL APIENTRY GpiDeleteElement( HPS ); ! 339: BOOL APIENTRY GpiDeleteElementRange( HPS, LONG, LONG ); ! 340: BOOL APIENTRY GpiDeleteElementsBetweenLabels( HPS, LONG, LONG ); ! 341: LONG APIENTRY GpiQueryEditMode( HPS ); ! 342: BOOL APIENTRY GpiSetEditMode( HPS, LONG ); ! 343: LONG APIENTRY GpiQueryElementPointer( HPS ); ! 344: BOOL APIENTRY GpiSetElementPointer( HPS, LONG ); ! 345: BOOL APIENTRY GpiOffsetElementPointer( HPS, LONG ); ! 346: LONG APIENTRY GpiQueryElementType( HPS, PLONG, LONG, PSZ ); ! 347: BOOL APIENTRY GpiSetElementPointerAtLabel( HPS, LONG ); ! 348: ! 349: #endif /* non-common GPISEGEDITING */ ! 350: #ifdef INCL_GPITRANSFORMS ! 351: ! 352: #ifndef INCL_SAADEFS ! 353: ! 354: /* co-ordinates space for GpiConvert */ ! 355: #define CVTC_WORLD 1L ! 356: #define CVTC_MODEL 2L ! 357: #define CVTC_DEFAULTPAGE 3L ! 358: #define CVTC_PAGE 4L ! 359: #define CVTC_DEVICE 5L ! 360: ! 361: #endif /* no INCL_SAADEFS */ ! 362: ! 363: /* type of transformation for GpiSetSegmentTransformMatrix */ ! 364: #define TRANSFORM_REPLACE 0L ! 365: #define TRANSFORM_ADD 1L ! 366: #define TRANSFORM_PREEMPT 2L ! 367: ! 368: /* transform matrix */ ! 369: typedef struct _MATRIXLF { /* matlf */ ! 370: FIXED fxM11; ! 371: FIXED fxM12; ! 372: LONG lM13; ! 373: FIXED fxM21; ! 374: FIXED fxM22; ! 375: LONG lM23; ! 376: LONG lM31; ! 377: LONG lM32; ! 378: LONG lM33; ! 379: } MATRIXLF; ! 380: typedef MATRIXLF FAR *PMATRIXLF; ! 381: ! 382: #ifndef INCL_DDIDEFS ! 383: ! 384: /*** transform and transform conversion functions */ ! 385: BOOL APIENTRY GpiQuerySegmentTransformMatrix( HPS, LONG, LONG, PMATRIXLF ); ! 386: BOOL APIENTRY GpiSetSegmentTransformMatrix( HPS, LONG, LONG, PMATRIXLF, LONG ); ! 387: ! 388: #ifndef INCL_SAADEFS ! 389: ! 390: BOOL APIENTRY GpiConvert( HPS, LONG, LONG, LONG, PPOINTL ); ! 391: BOOL APIENTRY GpiQueryModelTransformMatrix( HPS, LONG, PMATRIXLF ); ! 392: BOOL APIENTRY GpiSetModelTransformMatrix( HPS, LONG, PMATRIXLF, LONG ); ! 393: LONG APIENTRY GpiCallSegmentMatrix( HPS, LONG, LONG, PMATRIXLF, LONG ); ! 394: BOOL APIENTRY GpiQueryDefaultViewMatrix( HPS, LONG, PMATRIXLF ); ! 395: BOOL APIENTRY GpiSetDefaultViewMatrix( HPS, LONG, PMATRIXLF, LONG ); ! 396: BOOL APIENTRY GpiQueryPageViewport( HPS, PRECTL ); ! 397: BOOL APIENTRY GpiSetPageViewport( HPS, PRECTL ); ! 398: BOOL APIENTRY GpiQueryViewingTransformMatrix( HPS, LONG, PMATRIXLF ); ! 399: BOOL APIENTRY GpiSetViewingTransformMatrix( HPS, LONG, PMATRIXLF, LONG ); ! 400: ! 401: #endif /* no INCL_SAADEFS */ ! 402: ! 403: /*** general clipping functions */ ! 404: BOOL APIENTRY GpiSetGraphicsField( HPS, PRECTL ); ! 405: BOOL APIENTRY GpiQueryGraphicsField( HPS, PRECTL ); ! 406: BOOL APIENTRY GpiSetViewingLimits( HPS, PRECTL ); ! 407: BOOL APIENTRY GpiQueryViewingLimits( HPS, PRECTL ); ! 408: ! 409: #endif /* no INCL_DDIDEFS */ ! 410: ! 411: #endif /* non-common GPITRANSFORMS */ ! 412: #ifdef INCL_GPIPATHS ! 413: ! 414: #ifndef INCL_SAADEFS ! 415: ! 416: /* modes for GpiModifyPath */ ! 417: #define MPATH_STROKE 6L ! 418: ! 419: /* modes for GpiFillPath */ ! 420: #define FPATH_ALTERNATE 0L ! 421: #define FPATH_WINDING 2L ! 422: ! 423: /* modes for GpiSetClipPath */ ! 424: #define SCP_ALTERNATE 0L ! 425: #define SCP_WINDING 2L ! 426: #define SCP_AND 4L ! 427: #define SCP_RESET 0L ! 428: ! 429: #ifndef INCL_DDIDEFS ! 430: ! 431: /*** Path and Clip Path functions */ ! 432: BOOL APIENTRY GpiBeginPath( HPS, LONG ); ! 433: BOOL APIENTRY GpiEndPath( HPS ); ! 434: BOOL APIENTRY GpiCloseFigure( HPS ); ! 435: BOOL APIENTRY GpiModifyPath( HPS, LONG, LONG ); ! 436: LONG APIENTRY GpiFillPath( HPS, LONG, LONG ); ! 437: BOOL APIENTRY GpiSetClipPath( HPS, LONG, LONG ); ! 438: LONG APIENTRY GpiStrokePath( HPS, LONG, ULONG ); ! 439: ! 440: #endif /* no INCL_DDIDEFS */ ! 441: ! 442: #endif /* no INCL_SAADEFS */ ! 443: ! 444: #endif /* non-common GPIPATHS */ ! 445: #ifdef INCL_GPILOGCOLORTABLE ! 446: ! 447: #ifndef INCL_SAADEFS ! 448: ! 449: /* options for GpiCreateLogColorTable and others */ ! 450: #define LCOL_RESET 0x0001L ! 451: #define LCOL_REALIZABLE 0x0002L ! 452: #define LCOL_PURECOLOR 0x0004L ! 453: ! 454: /* format of logical lColor table for GpiCreateLogColorTable and others */ ! 455: #define LCOLF_DEFAULT 0L ! 456: #define LCOLF_INDRGB 1L ! 457: #define LCOLF_CONSECRGB 2L ! 458: #define LCOLF_RGB 3L ! 459: ! 460: /* options for GpiQueryRealColors and others */ ! 461: #define LCOLOPT_REALIZED 0x0001L ! 462: #define LCOLOPT_INDEX 0x0002L ! 463: ! 464: /* return codes from GpiQueryLogColorTable to indicate it is in RGB mode */ ! 465: #define QLCT_ERROR (-1L) ! 466: #define QLCT_RGB (-2L) ! 467: ! 468: /* GpiQueryLogColorTable index returned for colors not explicitly loaded */ ! 469: #define QLCT_NOTLOADED (-1L) ! 470: ! 471: /* return code on GpiQueryRealColours */ ! 472: #define QRC_NOINDEX (-254L) ! 473: ! 474: /* return codes for GpiQueryColorData */ ! 475: #define QCD_LCT_FORMAT 0L ! 476: #define QCD_LCT_LOINDEX 1L ! 477: #define QCD_LCT_HIINDEX 2L ! 478: ! 479: #ifndef INCL_DDIDEFS ! 480: ! 481: /*** logical lColor table functions */ ! 482: BOOL APIENTRY GpiCreateLogColorTable( HPS, ULONG, LONG, LONG, LONG, PLONG ); ! 483: BOOL APIENTRY GpiRealizeColorTable( HPS ); ! 484: BOOL APIENTRY GpiUnrealizeColorTable( HPS ); ! 485: BOOL APIENTRY GpiQueryColorData( HPS, LONG, PLONG ); ! 486: LONG APIENTRY GpiQueryLogColorTable( HPS, ULONG, LONG, LONG, PLONG ); ! 487: LONG APIENTRY GpiQueryRealColors( HPS, ULONG, LONG, LONG, PLONG ); ! 488: LONG APIENTRY GpiQueryNearestColor( HPS, ULONG, LONG ); ! 489: LONG APIENTRY GpiQueryColorIndex( HPS, ULONG, LONG ); ! 490: LONG APIENTRY GpiQueryRGBColor( HPS, ULONG, LONG ); ! 491: ! 492: #endif /* no INCL_DDIDEFS */ ! 493: ! 494: #endif /* no INCL_SAADEFS */ ! 495: ! 496: #endif /* non-common GPILOGCOLORTABLE */ ! 497: #if (defined(INCL_GPIPRIMITIVES) | !defined(INCL_NOCOMMON)) ! 498: ! 499: /* default color table indices */ ! 500: ! 501: #ifndef INCL_SAADEFS ! 502: #define CLR_FALSE (-5L) ! 503: #define CLR_TRUE (-4L) ! 504: #endif /* no INCL_SAADEFS */ ! 505: ! 506: #define CLR_ERROR (-255L) ! 507: #define CLR_DEFAULT (-3L) ! 508: #define CLR_WHITE (-2L) ! 509: #define CLR_BLACK (-1L) ! 510: #define CLR_BACKGROUND 0L ! 511: #define CLR_BLUE 1L ! 512: #define CLR_RED 2L ! 513: #define CLR_PINK 3L ! 514: #define CLR_GREEN 4L ! 515: #define CLR_CYAN 5L ! 516: #define CLR_YELLOW 6L ! 517: #define CLR_NEUTRAL 7L ! 518: ! 519: #ifndef INCL_SAADEFS ! 520: ! 521: #define CLR_DARKGRAY 8L ! 522: #define CLR_PALEBLUE 9L ! 523: #define CLR_PALERED 10L ! 524: #define CLR_PALEPINK 11L ! 525: #define CLR_DARKGREEN 12L ! 526: #define CLR_DARKCYAN 13L ! 527: #define CLR_BROWN 14L ! 528: #define CLR_PALEGRAY 15L ! 529: ! 530: /* rgb colors */ ! 531: #define RGB_ERROR (-255L) ! 532: #define RGB_BLACK 0x00000000L ! 533: #define RGB_BLUE 0x000000FFL ! 534: #define RGB_GREEN 0x0000FF00L ! 535: #define RGB_CYAN 0x0000FFFFL ! 536: #define RGB_RED 0x00FF0000L ! 537: #define RGB_PINK 0x00FF00FFL ! 538: #define RGB_YELLOW 0x00FFFF00L ! 539: #define RGB_WHITE 0x00FFFFFFL ! 540: #endif /* no INCL_SAADEFS */ ! 541: ! 542: /* control flags used by GpiBeginArea */ ! 543: #define BA_NOBOUNDARY 0L ! 544: #define BA_BOUNDARY 0x0001L ! 545: ! 546: #ifndef INCL_SAADEFS ! 547: #define BA_ALTERNATE 0L ! 548: #define BA_WINDING 0x0002L ! 549: ! 550: /* fill options for GpiBox/GpiFullArc */ ! 551: #define DRO_FILL 1L ! 552: #define DRO_OUTLINE 2L ! 553: #define DRO_OUTLINEFILL 3L ! 554: ! 555: #endif /* no INCL_SAADEFS */ ! 556: ! 557: /* basic pattern symbols */ ! 558: #define PATSYM_ERROR (-1L) ! 559: #define PATSYM_DEFAULT 0L ! 560: #define PATSYM_DENSE1 1L ! 561: #define PATSYM_DENSE2 2L ! 562: #define PATSYM_DENSE3 3L ! 563: #define PATSYM_DENSE4 4L ! 564: #define PATSYM_DENSE5 5L ! 565: #define PATSYM_DENSE6 6L ! 566: #define PATSYM_DENSE7 7L ! 567: #define PATSYM_DENSE8 8L ! 568: #define PATSYM_VERT 9L ! 569: #define PATSYM_HORIZ 10L ! 570: #define PATSYM_DIAG1 11L ! 571: #define PATSYM_DIAG2 12L ! 572: #define PATSYM_DIAG3 13L ! 573: #define PATSYM_DIAG4 14L ! 574: #define PATSYM_NOSHADE 15L ! 575: #define PATSYM_SOLID 16L ! 576: #define PATSYM_BLANK 64L ! 577: #ifndef INCL_SAADEFS ! 578: #define PATSYM_HALFTONE 17L ! 579: #endif /* no INCL_SAADEFS */ ! 580: ! 581: /* lcid values for GpiSet/QueryPattern and others */ ! 582: #define LCID_ERROR (-1L) ! 583: #define LCID_DEFAULT 0L ! 584: ! 585: #ifndef INCL_DDIDEFS ! 586: ! 587: /*** global primitive functions */ ! 588: BOOL APIENTRY GpiSetColor( HPS, LONG ); ! 589: LONG APIENTRY GpiQueryColor( HPS ); ! 590: ! 591: /*** line primitive functions */ ! 592: #ifndef INCL_SAADEFS ! 593: LONG APIENTRY GpiBox( HPS, LONG, PPOINTL, LONG, LONG ); ! 594: #endif /* no INCL_SAADEFS */ ! 595: ! 596: BOOL APIENTRY GpiMove( HPS, PPOINTL ); ! 597: LONG APIENTRY GpiLine( HPS, PPOINTL ); ! 598: LONG APIENTRY GpiPolyLine( HPS, LONG, PPOINTL ); ! 599: ! 600: /*** area primitive functions */ ! 601: BOOL APIENTRY GpiSetPattern( HPS, LONG ); ! 602: LONG APIENTRY GpiQueryPattern( HPS ); ! 603: BOOL APIENTRY GpiBeginArea( HPS, ULONG ); ! 604: LONG APIENTRY GpiEndArea( HPS ); ! 605: ! 606: /*** character primitive functions */ ! 607: LONG APIENTRY GpiCharString( HPS, LONG, PCH ); ! 608: LONG APIENTRY GpiCharStringAt( HPS, PPOINTL, LONG, PCH ); ! 609: ! 610: #endif /* no INCL_DDIDEFS */ ! 611: ! 612: #endif /* common GPIPRIMTIVES */ ! 613: #ifdef INCL_GPIPRIMITIVES ! 614: ! 615: /* mode for GpiSetAttrMode */ ! 616: #define AM_ERROR (-1L) ! 617: #define AM_PRESERVE 0L ! 618: #define AM_NOPRESERVE 1L ! 619: ! 620: /* foreground mixes */ ! 621: #define FM_ERROR (-1L) ! 622: #define FM_DEFAULT 0L ! 623: #define FM_OR 1L ! 624: #define FM_OVERPAINT 2L ! 625: #define FM_LEAVEALONE 5L ! 626: ! 627: #ifndef INCL_SAADEFS ! 628: ! 629: #define FM_XOR 4L ! 630: #define FM_AND 6L ! 631: #define FM_SUBTRACT 7L ! 632: #define FM_MASKSRCNOT 8L ! 633: #define FM_ZERO 9L ! 634: #define FM_NOTMERGESRC 10L ! 635: #define FM_NOTXORSRC 11L ! 636: #define FM_INVERT 12L ! 637: #define FM_MERGESRCNOT 13L ! 638: #define FM_NOTCOPYSRC 14L ! 639: #define FM_MERGENOTSRC 15L ! 640: #define FM_NOTMASKSRC 16L ! 641: #define FM_ONE 17L ! 642: ! 643: #endif /* no INCL_SAADEFS */ ! 644: ! 645: /* background mixes */ ! 646: #define BM_ERROR (-1L) ! 647: #define BM_DEFAULT 0L ! 648: #define BM_OVERPAINT 2L ! 649: #define BM_LEAVEALONE 5L ! 650: ! 651: #ifndef INCL_SAADEFS ! 652: #define BM_OR 1L ! 653: #define BM_XOR 4L ! 654: #endif /* no INCL_SAADEFS */ ! 655: ! 656: /* basic line type styles */ ! 657: #define LINETYPE_ERROR (-1L) ! 658: #define LINETYPE_DEFAULT 0L ! 659: #define LINETYPE_DOT 1L ! 660: #define LINETYPE_SHORTDASH 2L ! 661: #define LINETYPE_DASHDOT 3L ! 662: #define LINETYPE_DOUBLEDOT 4L ! 663: #define LINETYPE_LONGDASH 5L ! 664: #define LINETYPE_DASHDOUBLEDOT 6L ! 665: #define LINETYPE_SOLID 7L ! 666: #define LINETYPE_INVISIBLE 8L ! 667: #ifndef INCL_SAADEFS ! 668: #define LINETYPE_ALTERNATE 9L ! 669: #endif /* no INCL_SAADEFS */ ! 670: ! 671: /* cosmetic line widths */ ! 672: #define LINEWIDTH_ERROR (-1L) ! 673: #define LINEWIDTH_DEFAULT 0L ! 674: #define LINEWIDTH_NORMAL 0x00010000L /* MAKEFIXED(1,0) */ ! 675: ! 676: #ifndef INCL_SAADEFS ! 677: ! 678: /* actual line widths */ ! 679: #define LINEWIDTHGEOM_ERROR (-1L) ! 680: ! 681: /* line end styles */ ! 682: #define LINEEND_ERROR (-1L) ! 683: #define LINEEND_DEFAULT 0L ! 684: #define LINEEND_FLAT 1L ! 685: #define LINEEND_SQUARE 2L ! 686: #define LINEEND_ROUND 3L ! 687: ! 688: /* line join styles */ ! 689: #define LINEJOIN_ERROR (-1L) ! 690: #define LINEJOIN_DEFAULT 0L ! 691: #define LINEJOIN_BEVEL 1L ! 692: #define LINEJOIN_ROUND 2L ! 693: #define LINEJOIN_MITRE 3L ! 694: ! 695: #endif /* no INCL_SAADEFS */ ! 696: ! 697: /* charaction directions */ ! 698: #define CHDIRN_ERROR (-1L) ! 699: #define CHDIRN_DEFAULT 0L ! 700: #define CHDIRN_LEFTRIGHT 1L ! 701: #define CHDIRN_TOPBOTTOM 2L ! 702: #define CHDIRN_RIGHTLEFT 3L ! 703: #define CHDIRN_BOTTOMTOP 4L ! 704: ! 705: /* character modes */ ! 706: #define CM_ERROR (-1L) ! 707: #define CM_DEFAULT 0L ! 708: #define CM_MODE1 1L ! 709: #define CM_MODE2 2L ! 710: #define CM_MODE3 3L ! 711: ! 712: /* basic marker symbols */ ! 713: #define MARKSYM_ERROR (-1L) ! 714: #define MARKSYM_DEFAULT 0L ! 715: #define MARKSYM_CROSS 1L ! 716: #define MARKSYM_PLUS 2L ! 717: #define MARKSYM_DIAMOND 3L ! 718: #define MARKSYM_SQUARE 4L ! 719: #define MARKSYM_SIXPOINTSTAR 5L ! 720: #define MARKSYM_EIGHTPOINTSTAR 6L ! 721: #define MARKSYM_SOLIDDIAMOND 7L ! 722: #define MARKSYM_SOLIDSQUARE 8L ! 723: #define MARKSYM_DOT 9L ! 724: #define MARKSYM_SMALLCIRCLE 10L ! 725: #define MARKSYM_BLANK 64L ! 726: ! 727: #ifndef INCL_SAADEFS ! 728: ! 729: /* formatting options for GpiCharStringPosAt */ ! 730: #define CHS_OPAQUE 0x0001L ! 731: #define CHS_VECTOR 0x0002L ! 732: #define CHS_LEAVEPOS 0x0008L ! 733: #define CHS_CLIP 0x0010L ! 734: ! 735: /* bundle codes for GpiSetAttributes and GpiQueryAttributes */ ! 736: #define PRIM_LINE 1L ! 737: #define PRIM_CHAR 2L ! 738: #define PRIM_MARKER 3L ! 739: #define PRIM_AREA 4L ! 740: #define PRIM_IMAGE 5L ! 741: ! 742: /* line bundle mask bits */ ! 743: #define LBB_COLOR 0x0001L ! 744: #define LBB_MIX_MODE 0x0004L ! 745: #define LBB_WIDTH 0x0010L ! 746: #define LBB_GEOM_WIDTH 0x0020L ! 747: #define LBB_TYPE 0x0040L ! 748: #define LBB_END 0x0080L ! 749: #define LBB_JOIN 0x0100L ! 750: ! 751: /* character bundle mask bits */ ! 752: #define CBB_COLOR 0x0001L ! 753: #define CBB_BACK_COLOR 0x0002L ! 754: #define CBB_MIX_MODE 0x0004L ! 755: #define CBB_BACK_MIX_MODE 0x0008L ! 756: #define CBB_SET 0x0010L ! 757: #define CBB_MODE 0x0020L ! 758: #define CBB_BOX 0x0040L ! 759: #define CBB_ANGLE 0x0080L ! 760: #define CBB_SHEAR 0x0100L ! 761: #define CBB_DIRECTION 0x0200L ! 762: ! 763: /* marker bundle mask bits */ ! 764: #define MBB_COLOR 0x0001L ! 765: #define MBB_BACK_COLOR 0x0002L ! 766: #define MBB_MIX_MODE 0x0004L ! 767: #define MBB_BACK_MIX_MODE 0x0008L ! 768: #define MBB_SET 0x0010L ! 769: #define MBB_SYMBOL 0x0020L ! 770: #define MBB_BOX 0x0040L ! 771: ! 772: /* pattern bundle mask bits */ ! 773: #define ABB_COLOR 0x0001L ! 774: #define ABB_BACK_COLOR 0x0002L ! 775: #define ABB_MIX_MODE 0x0004L ! 776: #define ABB_BACK_MIX_MODE 0x0008L ! 777: #define ABB_SET 0x0010L ! 778: #define ABB_SYMBOL 0x0020L ! 779: #define ABB_REF_POINT 0x0040L ! 780: ! 781: /* image bundle mask bits */ ! 782: #define IBB_COLOR 0x0001L ! 783: #define IBB_BACK_COLOR 0x0002L ! 784: #define IBB_MIX_MODE 0x0004L ! 785: #define IBB_BACK_MIX_MODE 0x0008L ! 786: ! 787: /* structure for GpiSetArcParams and GpiQueryArcParams */ ! 788: typedef struct _ARCPARAMS { /* arcp */ ! 789: LONG lP; ! 790: LONG lQ; ! 791: LONG lR; ! 792: LONG lS; ! 793: } ARCPARAMS; ! 794: typedef ARCPARAMS FAR *PARCPARAMS; ! 795: ! 796: #endif /* no INCL_SAADEFS */ ! 797: ! 798: /* variation of SIZE used for FIXEDs */ ! 799: typedef struct _SIZEF { /* sizfx */ ! 800: FIXED cx; ! 801: FIXED cy; ! 802: } SIZEF; ! 803: typedef SIZEF FAR *PSIZEF; ! 804: ! 805: /* structure for gradient parameters e.g. for GpiSetCharAngle */ ! 806: typedef struct _GRADIENTL { /* gradl */ ! 807: LONG x; ! 808: LONG y; ! 809: } GRADIENTL; ! 810: typedef GRADIENTL FAR *PGRADIENTL; ! 811: ! 812: #ifndef INCL_SAADEFS ! 813: ! 814: /* line bundle for GpiSetAttributes and GpiQueryAttributes */ ! 815: typedef struct _LINEBUNDLE { /* lbnd */ ! 816: LONG lColor; ! 817: LONG lReserved; ! 818: USHORT usMixMode; ! 819: USHORT usReserved; ! 820: FIXED fxWidth; ! 821: LONG lGeomWidth; ! 822: USHORT usType; ! 823: USHORT usEnd; ! 824: USHORT usJoin; ! 825: } LINEBUNDLE; ! 826: ! 827: /* character bundle for GpiSetAttributes and GpiQueryAttributes */ ! 828: typedef struct _CHARBUNDLE { /* cbnd */ ! 829: LONG lColor; ! 830: LONG lBackColor; ! 831: USHORT usMixMode; ! 832: USHORT usBackMixMode; ! 833: USHORT usSet; ! 834: USHORT usPrecision; ! 835: SIZEF sizfxCell; ! 836: POINTL ptlAngle; ! 837: POINTL ptlShear; ! 838: USHORT usDirection; ! 839: } CHARBUNDLE; ! 840: ! 841: /* marker bundle for GpiSetAttributes and GpiQueryAttributes */ ! 842: typedef struct _MARKERBUNDLE { /* mbnd */ ! 843: LONG lColor; ! 844: LONG lBackColor; ! 845: USHORT usMixMode; ! 846: USHORT usBackMixMode; ! 847: USHORT usSet; ! 848: USHORT usSymbol; ! 849: SIZEF sizfxCell; ! 850: } MARKERBUNDLE; ! 851: ! 852: /* pattern bundle for GpiSetAttributes and GpiQueryAttributes */ ! 853: typedef struct _AREABUNDLE { /* pbnd */ ! 854: LONG lColor; ! 855: LONG lBackColor; ! 856: USHORT usMixMode; ! 857: USHORT usBackMixMode; ! 858: USHORT usSet; ! 859: USHORT usSymbol; ! 860: POINTL ptlRefPoint ; ! 861: } AREABUNDLE; ! 862: ! 863: /* image bundle for GpiSetAttributes and GpiQueryAttributes */ ! 864: typedef struct _IMAGEBUNDLE { /* ibmd */ ! 865: LONG lColor; ! 866: LONG lBackColor; ! 867: USHORT usMixMode; ! 868: USHORT usBackMixMode; ! 869: } IMAGEBUNDLE; ! 870: ! 871: /* pointer to any bundle used by GpiSet/QueryAttrs */ ! 872: typedef PVOID PBUNDLE; ! 873: ! 874: /* array indices for GpiQueryTextBox */ ! 875: #define TXTBOX_TOPLEFT 0L ! 876: #define TXTBOX_BOTTOMLEFT 1L ! 877: #define TXTBOX_TOPRIGHT 2L ! 878: #define TXTBOX_BOTTOMRIGHT 3L ! 879: #define TXTBOX_CONCAT 4L ! 880: /* array count for GpiQueryTextBox */ ! 881: #define TXTBOX_COUNT 5L ! 882: ! 883: /* return codes for GpiPtVisible */ ! 884: #define PVIS_ERROR 0L ! 885: #define PVIS_INVISIBLE 1L ! 886: #define PVIS_VISIBLE 2L ! 887: ! 888: /* return codes for GpiRectVisible */ ! 889: #define RVIS_ERROR 0L ! 890: #define RVIS_INVISIBLE 1L ! 891: #define RVIS_PARTIAL 2L ! 892: #define RVIS_VISIBLE 3L ! 893: ! 894: #endif /* no INCL_SAADEFS */ ! 895: ! 896: #ifndef INCL_DDIDEFS ! 897: ! 898: /*** attribute mode functions */ ! 899: BOOL APIENTRY GpiSetAttrMode( HPS, LONG ); ! 900: LONG APIENTRY GpiQueryAttrMode( HPS ); ! 901: /*** bundle primitive functions */ ! 902: #ifndef INCL_SAADEFS ! 903: ! 904: BOOL APIENTRY GpiSetAttrs( HPS, LONG, ULONG, ULONG, PBUNDLE ); ! 905: LONG APIENTRY GpiQueryAttrs( HPS, LONG, ULONG, PBUNDLE ); ! 906: ! 907: #endif /* no INCL_SAADEFS */ ! 908: ! 909: /*** global primitive functions */ ! 910: BOOL APIENTRY GpiSetBackColor( HPS, LONG ); ! 911: LONG APIENTRY GpiQueryBackColor( HPS ); ! 912: BOOL APIENTRY GpiSetMix( HPS, LONG ); ! 913: LONG APIENTRY GpiQueryMix( HPS ); ! 914: BOOL APIENTRY GpiSetBackMix( HPS, LONG ); ! 915: LONG APIENTRY GpiQueryBackMix( HPS ); ! 916: ! 917: /*** line primitive functions */ ! 918: BOOL APIENTRY GpiSetLineType( HPS, LONG ); ! 919: LONG APIENTRY GpiQueryLineType( HPS ); ! 920: BOOL APIENTRY GpiSetLineWidth( HPS, FIXED ); ! 921: FIXED APIENTRY GpiQueryLineWidth( HPS ); ! 922: ! 923: #ifndef INCL_SAADEFS ! 924: ! 925: BOOL APIENTRY GpiSetLineWidthGeom( HPS, LONG ); ! 926: LONG APIENTRY GpiQueryLineWidthGeom( HPS ); ! 927: BOOL APIENTRY GpiSetLineEnd( HPS, LONG ); ! 928: LONG APIENTRY GpiQueryLineEnd( HPS ); ! 929: BOOL APIENTRY GpiSetLineJoin( HPS, LONG ); ! 930: LONG APIENTRY GpiQueryLineJoin( HPS ); ! 931: ! 932: #endif /* no INCL_SAADEFS */ ! 933: ! 934: BOOL APIENTRY GpiSetCurrentPosition( HPS, PPOINTL ); ! 935: BOOL APIENTRY GpiQueryCurrentPosition( HPS, PPOINTL ); ! 936: /*** arc primitive functions */ ! 937: #ifndef INCL_SAADEFS ! 938: ! 939: BOOL APIENTRY GpiSetArcParams( HPS, PARCPARAMS ); ! 940: BOOL APIENTRY GpiQueryArcParams( HPS, PARCPARAMS ); ! 941: LONG APIENTRY GpiPointArc( HPS, PPOINTL ); ! 942: LONG APIENTRY GpiFullArc( HPS, LONG, FIXED ); ! 943: LONG APIENTRY GpiPartialArc( HPS, PPOINTL, FIXED, FIXED, FIXED ); ! 944: LONG APIENTRY GpiPolyFilletSharp( HPS, LONG, PPOINTL, PFIXED ); ! 945: LONG APIENTRY GpiPolySpline( HPS, LONG, PPOINTL ); ! 946: ! 947: #endif /* no INCL_SAADEFS */ ! 948: ! 949: LONG APIENTRY GpiPolyFillet( HPS, LONG, PPOINTL ); ! 950: /*** area primitive functions */ ! 951: BOOL APIENTRY GpiSetPatternSet( HPS, LONG ); ! 952: LONG APIENTRY GpiQueryPatternSet( HPS ); ! 953: ! 954: #ifndef INCL_SAADEFS ! 955: BOOL APIENTRY GpiSetPatternRefPoint( HPS, PPOINTL ); ! 956: BOOL APIENTRY GpiQueryPatternRefPoint( HPS, PPOINTL ); ! 957: #endif /* no INCL_SAADEFS */ ! 958: ! 959: /*** character primitive functions */ ! 960: ! 961: #ifndef INCL_SAADEFS ! 962: ! 963: BOOL APIENTRY GpiQueryCharStringPos( HPS, ULONG, LONG, PCH, PLONG, PPOINTL ); ! 964: BOOL APIENTRY GpiQueryCharStringPosAt( HPS, PPOINTL, ULONG, LONG, PCH, PLONG, PPOINTL ); ! 965: ! 966: #endif /* no INCL_SAADEFS */ ! 967: ! 968: BOOL APIENTRY GpiQueryTextBox( HPS, LONG, PCH, LONG, PPOINTL ); ! 969: BOOL APIENTRY GpiQueryDefCharBox( HPS, PSIZEL ); ! 970: BOOL APIENTRY GpiSetCharSet( HPS, LONG ); ! 971: LONG APIENTRY GpiQueryCharSet( HPS ); ! 972: BOOL APIENTRY GpiSetCharBox( HPS, PSIZEF ); ! 973: BOOL APIENTRY GpiQueryCharBox( HPS, PSIZEF ); ! 974: BOOL APIENTRY GpiSetCharAngle( HPS, PGRADIENTL ); ! 975: BOOL APIENTRY GpiQueryCharAngle( HPS, PGRADIENTL ); ! 976: BOOL APIENTRY GpiSetCharShear( HPS, PPOINTL ); ! 977: BOOL APIENTRY GpiQueryCharShear( HPS, PPOINTL ); ! 978: BOOL APIENTRY GpiSetCharDirection( HPS, LONG ); ! 979: LONG APIENTRY GpiQueryCharDirection( HPS ); ! 980: BOOL APIENTRY GpiSetCharMode( HPS, LONG ); ! 981: LONG APIENTRY GpiQueryCharMode( HPS ); ! 982: ! 983: #ifndef INCL_SAADEFS ! 984: ! 985: LONG APIENTRY GpiCharStringPos( HPS, PRECTL, ULONG, LONG, PCH, PLONG ); ! 986: LONG APIENTRY GpiCharStringPosAt( HPS, PPOINTL, PRECTL ! 987: , ULONG, LONG, PCH ,PLONG ); ! 988: #endif /* no INCL_SAADEFS */ ! 989: ! 990: /*** marker primitive functions */ ! 991: BOOL APIENTRY GpiSetMarkerSet( HPS, LONG ); ! 992: LONG APIENTRY GpiQueryMarkerSet( HPS ); ! 993: BOOL APIENTRY GpiSetMarker( HPS, LONG ); ! 994: LONG APIENTRY GpiQueryMarker( HPS ); ! 995: BOOL APIENTRY GpiSetMarkerBox( HPS, PSIZEF ); ! 996: BOOL APIENTRY GpiQueryMarkerBox( HPS, PSIZEF ); ! 997: LONG APIENTRY GpiMarker( HPS, PPOINTL ); ! 998: LONG APIENTRY GpiPolyMarker( HPS, LONG, PPOINTL ); ! 999: /*** image primitive functions */ ! 1000: LONG APIENTRY GpiImage( HPS, LONG, PSIZEL, LONG, PBYTE ); ! 1001: /*** micellaneous primitive functions */ ! 1002: BOOL APIENTRY GpiPop( HPS, LONG ); ! 1003: ! 1004: #ifndef INCL_SAADEFS ! 1005: ! 1006: LONG APIENTRY GpiPtVisible( HPS, PPOINTL ); ! 1007: LONG APIENTRY GpiRectVisible( HPS, PRECTL ); ! 1008: BOOL APIENTRY GpiComment( HPS, LONG, PBYTE ); ! 1009: ! 1010: #endif /* no INCL_SAADEFS */ ! 1011: ! 1012: #endif /* no INCL_DDIDEFS */ ! 1013: ! 1014: #endif /* non-common GPIPRIMITIVES */ ! 1015: #ifdef INCL_GPILCIDS ! 1016: ! 1017: /* lcid type for GpiQuerySetIds */ ! 1018: #define LCIDT_FONT 6L ! 1019: ! 1020: #ifndef INCL_SAADEFS ! 1021: #define LCIDT_BITMAP 7L ! 1022: ! 1023: /* constant used to delete all lcids by GpiDeleteSetId */ ! 1024: #define LCID_ALL (-1L) ! 1025: #endif /* no INCL_SAADEFS */ ! 1026: ! 1027: /* kerning data returned by GpiQueryKerningPairs */ ! 1028: typedef struct _KERNINGPAIRS { /* krnpr */ ! 1029: SHORT sFirstChar; ! 1030: SHORT sSecondChar; ! 1031: SHORT sKerningAmount; ! 1032: } KERNINGPAIRS; ! 1033: typedef KERNINGPAIRS FAR *PKERNINGPAIRS; ! 1034: ! 1035: #ifndef INCL_SAADEFS ! 1036: ! 1037: /* options for GpiQueryFonts */ ! 1038: #define QF_PUBLIC 0x0001L ! 1039: #define QF_PRIVATE 0x0002L ! 1040: ! 1041: /* font file descriptions for GpiQueryFontFileDescriptions */ ! 1042: typedef CHAR FFDESCS[2][FACESIZE]; /* ffdescs */ ! 1043: typedef FFDESCS FAR *PFFDESCS; ! 1044: ! 1045: #endif /* no INCL_SAADEFS */ ! 1046: ! 1047: #ifndef INCL_DDIDEFS ! 1048: ! 1049: /*** physical and logical font functions */ ! 1050: BOOL APIENTRY GpiDeleteSetId( HPS, LONG ); ! 1051: LONG APIENTRY GpiQueryNumberSetIds( HPS ); ! 1052: BOOL APIENTRY GpiQuerySetIds( HPS, LONG, PLONG, PSTR8, PLONG ); ! 1053: BOOL APIENTRY GpiLoadFonts( HAB, PSZ ); ! 1054: BOOL APIENTRY GpiUnloadFonts( HAB, PSZ ); ! 1055: LONG APIENTRY GpiCreateLogFont( HPS, PSTR8, LONG, PFATTRS ); ! 1056: LONG APIENTRY GpiQueryFonts( HPS, ULONG, PSZ, PLONG, LONG, PFONTMETRICS ); ! 1057: BOOL APIENTRY GpiQueryFontMetrics( HPS, LONG, PFONTMETRICS ); ! 1058: LONG APIENTRY GpiQueryKerningPairs( HPS, LONG, PKERNINGPAIRS ); ! 1059: BOOL APIENTRY GpiQueryWidthTable( HPS, LONG, LONG, PLONG ); ! 1060: #ifndef INCL_SAADEFS ! 1061: BOOL APIENTRY GpiSetCp( HPS, USHORT ); ! 1062: USHORT APIENTRY GpiQueryCp( HPS ); ! 1063: LONG APIENTRY GpiQueryFontFileDescriptions( HAB, PSZ, PLONG, PFFDESCS ); ! 1064: #endif /* no INCL_SAADEFS */ ! 1065: ! 1066: #endif /* no INCL_DDIDEFS */ ! 1067: ! 1068: #endif /* non-common GPILCIDS */ ! 1069: #if (defined(INCL_GPIBITMAPS) | !defined(INCL_NOCOMMON)) ! 1070: ! 1071: /* rastor operations defined for GpiBitBlt */ ! 1072: #define ROP_SRCCOPY 0x00CCL ! 1073: #define ROP_SRCPAINT 0x00EEL ! 1074: #define ROP_SRCAND 0x0088L ! 1075: #define ROP_SRCINVERT 0x0066L ! 1076: #define ROP_SRCERASE 0x0044L ! 1077: #define ROP_NOTSRCCOPY 0x0033L ! 1078: #define ROP_NOTSRCERASE 0x0011L ! 1079: #define ROP_MERGECOPY 0x00C0L ! 1080: #define ROP_MERGEPAINT 0x00BBL ! 1081: #define ROP_PATCOPY 0x00F0L ! 1082: #define ROP_PATPAINT 0x00FBL ! 1083: #define ROP_PATINVERT 0x005AL ! 1084: #define ROP_DSTINVERT 0x0055L ! 1085: #define ROP_ZERO 0x0000L ! 1086: #define ROP_ONE 0x00FFL ! 1087: ! 1088: /* Blt options for GpiBitBlt */ ! 1089: #define BBO_OR 0L ! 1090: #define BBO_AND 1L ! 1091: #define BBO_IGNORE 2L ! 1092: ! 1093: /* error return for GpiSetBitmap */ ! 1094: #define HBM_ERROR ((HBITMAP)-1L) ! 1095: ! 1096: #ifndef INCL_DDIDEFS ! 1097: ! 1098: /*** bitmap and pel functions */ ! 1099: HBITMAP APIENTRY GpiLoadBitmap( HPS, USHORT, USHORT, LONG, LONG ); ! 1100: BOOL APIENTRY GpiDeleteBitmap( HBITMAP ); ! 1101: HBITMAP APIENTRY GpiSetBitmap( HPS, HBITMAP ); ! 1102: LONG APIENTRY GpiBitBlt( HPS, HPS, LONG, PPOINTL, LONG, LONG ); ! 1103: LONG APIENTRY GpiWCBitBlt( HPS, HBITMAP, LONG, PPOINTL, LONG, LONG ); ! 1104: ! 1105: #endif /* no INCL_DDIDEFS */ ! 1106: ! 1107: #endif /* common GPIBITMAPS */ ! 1108: #ifdef INCL_GPIBITMAPS ! 1109: ! 1110: /* usage flags for GpiCreateBitmap */ ! 1111: #define CBM_INIT 0x0004L ! 1112: ! 1113: /* bitmap parameterization used by GpiCreateBitmap and others */ ! 1114: typedef struct _BITMAPINFOHEADER { /* bmp */ ! 1115: ULONG cbFix; ! 1116: USHORT cx; ! 1117: USHORT cy; ! 1118: USHORT cPlanes; ! 1119: USHORT cBitCount; ! 1120: } BITMAPINFOHEADER; ! 1121: typedef BITMAPINFOHEADER FAR *PBITMAPINFOHEADER; ! 1122: ! 1123: /* RGB data for _BITMAPINFO struct */ ! 1124: typedef struct _RGB { /* rgb */ ! 1125: BYTE bBlue; ! 1126: BYTE bGreen; ! 1127: BYTE bRed; ! 1128: } RGB; ! 1129: ! 1130: /* bitmap data used by GpiSetBitmapBits and others */ ! 1131: typedef struct _BITMAPINFO { /* bmi */ ! 1132: ULONG cbFix; ! 1133: USHORT cx; ! 1134: USHORT cy; ! 1135: USHORT cPlanes; ! 1136: USHORT cBitCount; ! 1137: RGB argbColor[1]; ! 1138: } BITMAPINFO; ! 1139: typedef BITMAPINFO FAR *PBITMAPINFO; ! 1140: ! 1141: /* error return code for GpiSet/QueryBitmapBits */ ! 1142: #define BMB_ERROR (-1L) ! 1143: ! 1144: #ifndef INCL_DDIDEFS ! 1145: ! 1146: /*** bitmap and pel functions */ ! 1147: HBITMAP APIENTRY GpiCreateBitmap( HPS, PBITMAPINFOHEADER ! 1148: , ULONG, PBYTE, PBITMAPINFO ); ! 1149: BOOL APIENTRY GpiSetBitmapDimension( HBITMAP, PSIZEL ); ! 1150: BOOL APIENTRY GpiQueryBitmapDimension( HBITMAP, PSIZEL ); ! 1151: BOOL APIENTRY GpiQueryDeviceBitmapFormats( HPS, LONG, PLONG ); ! 1152: BOOL APIENTRY GpiQueryBitmapParameters( HBITMAP, PBITMAPINFOHEADER ); ! 1153: LONG APIENTRY GpiQueryBitmapBits( HPS, LONG, LONG, PBYTE, PBITMAPINFO ); ! 1154: LONG APIENTRY GpiSetBitmapBits( HPS, LONG, LONG, PBYTE, PBITMAPINFO ); ! 1155: LONG APIENTRY GpiSetPel( HPS, PPOINTL ); ! 1156: LONG APIENTRY GpiQueryPel( HPS, PPOINTL ); ! 1157: BOOL APIENTRY GpiSetBitmapId( HPS, HBITMAP, LONG ); ! 1158: HBITMAP APIENTRY GpiQueryBitmapHandle( HPS, LONG ); ! 1159: ! 1160: #endif /* no INCL_DDIDEFS */ ! 1161: ! 1162: #endif /* non-common GPIBITMAPS */ ! 1163: #ifdef INCL_GPIREGIONS ! 1164: ! 1165: /* options for GpiCombineRegion */ ! 1166: #define CRGN_OR 1L ! 1167: #define CRGN_COPY 2L ! 1168: #define CRGN_XOR 4L ! 1169: #define CRGN_AND 6L ! 1170: #define CRGN_DIFF 7L ! 1171: ! 1172: /* usDirection of returned region data for GpiQueryRegionRects */ ! 1173: #define RECTDIR_LFRT_TOPBOT 1L ! 1174: #define RECTDIR_RTLF_TOPBOT 2L ! 1175: #define RECTDIR_LFRT_BOTTOP 3L ! 1176: #define RECTDIR_RTLF_BOTTOP 4L ! 1177: ! 1178: /* control data for GpiQueryRegionRects */ ! 1179: typedef struct _RGNRECT { /* rgnrc */ ! 1180: USHORT ircStart; ! 1181: USHORT crc; ! 1182: USHORT crcReturned; ! 1183: USHORT usDirection; ! 1184: } RGNRECT; ! 1185: typedef RGNRECT FAR *PRGNRECT; ! 1186: ! 1187: /* return code to indicate type of region for GpiCombineRegion and others */ ! 1188: #define RGN_ERROR 0L ! 1189: #define RGN_NULL 1L ! 1190: #define RGN_RECT 2L ! 1191: #define RGN_COMPLEX 3L ! 1192: ! 1193: /* return codes for GpiPtInRegion */ ! 1194: #define PRGN_ERROR 0L ! 1195: #define PRGN_OUTSIDE 1L ! 1196: #define PRGN_INSIDE 2L ! 1197: ! 1198: /* return codes for GpiRectInRegion */ ! 1199: #define RRGN_ERROR 0L ! 1200: #define RRGN_OUTSIDE 1L ! 1201: #define RRGN_PARTIAL 2L ! 1202: #define RRGN_INSIDE 3L ! 1203: ! 1204: /* return codes for GpiEqualRegion */ ! 1205: #define EQRGN_ERROR 0L ! 1206: #define EQRGN_NOTEQUAL 1L ! 1207: #define EQRGN_EQUAL 2L ! 1208: ! 1209: /* error return code for GpiSetRegion */ ! 1210: #define HRGN_ERROR ((HRGN)-1L) ! 1211: ! 1212: #ifndef INCL_DDIDEFS ! 1213: ! 1214: /*** main region functions */ ! 1215: HRGN APIENTRY GpiCreateRegion( HPS, LONG, PRECTL ); ! 1216: BOOL APIENTRY GpiSetRegion( HPS, HRGN, LONG, PRECTL ); ! 1217: BOOL APIENTRY GpiDestroyRegion( HPS, HRGN ); ! 1218: LONG APIENTRY GpiCombineRegion( HPS, HRGN, HRGN, HRGN, LONG ); ! 1219: LONG APIENTRY GpiEqualRegion( HPS, HRGN, HRGN ); ! 1220: BOOL APIENTRY GpiOffsetRegion( HPS, HRGN, PPOINTL ); ! 1221: LONG APIENTRY GpiPtInRegion( HPS, HRGN, PPOINTL ); ! 1222: LONG APIENTRY GpiRectInRegion( HPS, HRGN, PRECTL ); ! 1223: LONG APIENTRY GpiQueryRegionBox( HPS, HRGN, PRECTL ); ! 1224: BOOL APIENTRY GpiQueryRegionRects( HPS, HRGN, PRECTL, PRGNRECT, PRECTL ); ! 1225: LONG APIENTRY GpiPaintRegion( HPS, HRGN ); ! 1226: ! 1227: /*** clip region functions */ ! 1228: HRGN APIENTRY GpiSetClipRegion( HPS, HRGN ); ! 1229: HRGN APIENTRY GpiQueryClipRegion( HPS ); ! 1230: LONG APIENTRY GpiQueryClipBox( HPS, PRECTL ); ! 1231: LONG APIENTRY GpiIntersectClipRectangle( HPS, PRECTL ); ! 1232: LONG APIENTRY GpiExcludeClipRectangle( HPS, PRECTL ); ! 1233: LONG APIENTRY GpiOffsetClipRegion( HPS, PPOINTL ); ! 1234: ! 1235: #endif /* no INCL_DDIDEFS */ ! 1236: ! 1237: #endif /* non-common GPIREGIONS */ ! 1238: #ifdef INCL_GPIMETAFILES ! 1239: ! 1240: #ifndef INCL_DDIDEFS ! 1241: ! 1242: /* options for GpiPlayMetafile */ ! 1243: #define RS_DEFAULT 0L ! 1244: #define RS_NODISCARD 1L ! 1245: #define LC_DEFAULT 0L ! 1246: #define LC_NOLOAD 1L ! 1247: #define LC_LOADDISC 3L ! 1248: #define LT_DEFAULT 0L ! 1249: #define LT_NOMODIFY 1L ! 1250: ! 1251: #ifndef INCL_SAADEFS ! 1252: ! 1253: #define LT_ORIGINALVIEW 4L ! 1254: #define RES_DEFAULT 0L ! 1255: #define RES_NORESET 1L ! 1256: #define RES_RESET 2L ! 1257: #define SUP_DEFAULT 0L ! 1258: #define SUP_NOSUPPRESS 1L ! 1259: #define SUP_SUPPRESS 2L ! 1260: #define CTAB_DEFAULT 0L ! 1261: #define CTAB_NOMODIFY 1L ! 1262: #define CTAB_REPLACE 3L ! 1263: #define CREA_DEFAULT 0L ! 1264: #define CREA_REALIZE 1L ! 1265: #define CREA_NOREALIZE 2L ! 1266: #define RSP_DEFAULT 0L ! 1267: #define RSP_NODISCARD 1L ! 1268: ! 1269: #endif /* no INCL_SAADEFS */ ! 1270: ! 1271: /*** metafile functions */ ! 1272: HMF APIENTRY GpiLoadMetaFile( HAB, PSZ ); ! 1273: LONG APIENTRY GpiPlayMetaFile( HPS, HMF, LONG, PLONG, PLONG, LONG, PSZ ); ! 1274: BOOL APIENTRY GpiSaveMetaFile( HMF, PSZ ); ! 1275: BOOL APIENTRY GpiDeleteMetaFile( HMF ); ! 1276: BOOL APIENTRY GpiAccessMetaFile( HMF ); ! 1277: ! 1278: #ifndef INCL_SAADEFS ! 1279: ! 1280: HMF APIENTRY GpiCopyMetaFile( HMF ); ! 1281: LONG APIENTRY GpiQueryMetaFileLength( HMF ); ! 1282: BOOL APIENTRY GpiQueryMetaFileBits( HMF, LONG, LONG, PBYTE ); ! 1283: BOOL APIENTRY GpiSetMetaFileBits( HMF, LONG, LONG, PBYTE ); ! 1284: ! 1285: #endif /* no INCL_SAADEFS */ ! 1286: ! 1287: #endif /* no INCL_DDIDEFS */ ! 1288: ! 1289: #endif /* non-common GPIMETAFILES */ ! 1290: ! 1291: #ifdef INCL_GPIERRORS ! 1292: ! 1293: /* AAB error codes for the GPI */ ! 1294: #define PMERR_OK 0x0000 ! 1295: #define PMERR_ALREADY_IN_AREA 0x2001 ! 1296: #define PMERR_ALREADY_IN_ELEMENT 0x2002 ! 1297: #define PMERR_ALREADY_IN_PATH 0x2003 ! 1298: #define PMERR_ALREADY_IN_SEG 0x2004 ! 1299: #define PMERR_AREA_INCOMPLETE 0x2005 ! 1300: #define PMERR_BASE_ERROR 0x2006 ! 1301: #define PMERR_BITBLT_LENGTH_EXCEEDED 0x2007 ! 1302: #define PMERR_BITMAP_IN_USE 0x2008 ! 1303: #define PMERR_BITMAP_IS_SELECTED 0x2009 ! 1304: #define PMERR_BITMAP_NOT_FOUND 0x200A ! 1305: #define PMERR_BITMAP_NOT_SELECTED 0x200B ! 1306: #define PMERR_BOUNDS_OVERFLOW 0x200C ! 1307: #define PMERR_CALLED_SEG_IS_CHAINED 0x200D ! 1308: #define PMERR_CALLED_SEG_IS_CURRENT 0x200E ! 1309: #define PMERR_CALLED_SEG_NOT_FOUND 0x200F ! 1310: #define PMERR_CANNOT_DELETE_ALL_DATA 0x2010 ! 1311: #define PMERR_CANNOT_REPLACE_ELEMENT_0 0x2011 ! 1312: #define PMERR_COL_TABLE_NOT_REALIZABLE 0x2012 ! 1313: #define PMERR_COL_TABLE_NOT_REALIZED 0x2013 ! 1314: #define PMERR_COORDINATE_OVERFLOW 0x2014 ! 1315: #define PMERR_CORR_FORMAT_MISMATCH 0x2015 ! 1316: #define PMERR_DATA_TOO_LONG 0x2016 ! 1317: #define PMERR_DC_IS_ASSOCIATED 0x2017 ! 1318: #define PMERR_DESC_STRING_TRUNCATED 0x2018 ! 1319: #define PMERR_DEVICE_DRIVER_ERROR_1 0x2019 ! 1320: #define PMERR_DEVICE_DRIVER_ERROR_2 0x201A ! 1321: #define PMERR_DEVICE_DRIVER_ERROR_3 0x201B ! 1322: #define PMERR_DEVICE_DRIVER_ERROR_4 0x201C ! 1323: #define PMERR_DEVICE_DRIVER_ERROR_5 0x201D ! 1324: #define PMERR_DEVICE_DRIVER_ERROR_6 0x201E ! 1325: #define PMERR_DEVICE_DRIVER_ERROR_7 0x201F ! 1326: #define PMERR_DEVICE_DRIVER_ERROR_8 0x2020 ! 1327: #define PMERR_DEVICE_DRIVER_ERROR_9 0x2021 ! 1328: #define PMERR_DEVICE_DRIVER_ERROR_10 0x2022 ! 1329: #define PMERR_DOSOPEN_FAILURE 0x2023 ! 1330: #define PMERR_DOSREAD_FAILURE 0x2024 ! 1331: #define PMERR_DRIVER_NOT_FOUND 0x2025 ! 1332: #define PMERR_DUP_SEG 0x2026 ! 1333: #define PMERR_DYNAMIC_SEG_SEQ_ERROR 0x2027 ! 1334: #define PMERR_DYNAMIC_SEG_ZERO_INV 0x2028 ! 1335: #define PMERR_ELEMENT_INCOMPLETE 0x2029 ! 1336: #define PMERR_ESC_CODE_NOT_SUPPORTED 0x202A ! 1337: #define PMERR_EXCEEDS_MAX_SEG_LENGTH 0x202B ! 1338: #define PMERR_FONT_AND_MODE_MISMATCH 0x202C ! 1339: #define PMERR_FONT_FILE_NOT_LOADED 0x202D ! 1340: #define PMERR_FONT_NOT_LOADED 0x202E ! 1341: #define PMERR_FONT_TOO_BIG 0x202F ! 1342: #define PMERR_ID_HAS_NO_BITMAP 0x2030 ! 1343: #define PMERR_IMAGE_INCOMPLETE 0x2031 ! 1344: #define PMERR_INCOMPAT_COLOR_FORMAT 0x2032 ! 1345: #define PMERR_INCOMPAT_COLOR_OPTIONS 0x2033 ! 1346: #define PMERR_INCOMPATIBLE_BITMAP 0x2034 ! 1347: #define PMERR_INCOMPATIBLE_METAFILE 0x2035 ! 1348: #define PMERR_INCORRECT_DC_TYPE 0x2036 ! 1349: #define PMERR_INSUFFICIENT_DISK_SPACE 0x2037 ! 1350: #define PMERR_INSUFFICIENT_MEMORY 0x2038 ! 1351: #define PMERR_INV_ANGLE_PARM 0x2039 ! 1352: #define PMERR_INV_ARC_CONTROL 0x203A ! 1353: #define PMERR_INV_AREA_CONTROL 0x203B ! 1354: #define PMERR_INV_ATTR_MODE 0x203C ! 1355: #define PMERR_INV_BACKGROUND_COL_ATTR 0x203D ! 1356: #define PMERR_INV_BACKGROUND_MIX_ATTR 0x203E ! 1357: #define PMERR_INV_BITBLT_MIX 0x203F ! 1358: #define PMERR_INV_BITBLT_STYLE 0x2040 ! 1359: #define PMERR_INV_BITMAP_DIMENSION 0x2041 ! 1360: #define PMERR_INV_BOX_CONTROL 0x2042 ! 1361: #define PMERR_INV_BOX_ROUNDING_PARM 0x2043 ! 1362: #define PMERR_INV_CHAR_ANGLE_ATTR 0x2044 ! 1363: #define PMERR_INV_CHAR_DIRECTION_ATTR 0x2045 ! 1364: #define PMERR_INV_CHAR_MODE_ATTR 0x2046 ! 1365: #define PMERR_INV_CHAR_POS_OPTIONS 0x2047 ! 1366: #define PMERR_INV_CHAR_SET_ATTR 0x2048 ! 1367: #define PMERR_INV_CHAR_SHEAR_ATTR 0x2049 ! 1368: #define PMERR_INV_CLIP_PATH_OPTIONS 0x204A ! 1369: #define PMERR_INV_CODEPAGE 0x204B ! 1370: #define PMERR_INV_COLOR_ATTR 0x204C ! 1371: #define PMERR_INV_COLOR_DATA 0x204D ! 1372: #define PMERR_INV_COLOR_FORMAT 0x204E ! 1373: #define PMERR_INV_COLOR_INDEX 0x204F ! 1374: #define PMERR_INV_COLOR_OPTIONS 0x2050 ! 1375: #define PMERR_INV_COLOR_START_INDEX 0x2051 ! 1376: #define PMERR_INV_COORD_OFFSET 0x2052 ! 1377: #define PMERR_INV_COORD_SPACE 0x2053 ! 1378: #define PMERR_INV_COORDINATE 0x2054 ! 1379: #define PMERR_INV_CORRELATE_DEPTH 0x2055 ! 1380: #define PMERR_INV_CORRELATE_TYPE 0x2056 ! 1381: #define PMERR_INV_DC_DATA 0x2057 ! 1382: #define PMERR_INV_DC_TYPE 0x2058 ! 1383: #define PMERR_INV_DEVICE_NAME 0x2059 ! 1384: #define PMERR_INV_DRAW_CONTROL 0x205A ! 1385: #define PMERR_INV_DRAW_VALUE 0x205B ! 1386: #define PMERR_INV_DRAWING_MODE 0x205C ! 1387: #define PMERR_INV_DRIVER_DATA 0x205D ! 1388: #define PMERR_INV_EDIT_MODE 0x205E ! 1389: #define PMERR_INV_ELEMENT_OFFSET 0x205F ! 1390: #define PMERR_INV_ELEMENT_POINTER 0x2060 ! 1391: #define PMERR_INV_ESC_CODE 0x2061 ! 1392: #define PMERR_INV_ESCAPE_DATA 0x2062 ! 1393: #define PMERR_INV_FILL_PATH_OPTIONS 0x2063 ! 1394: #define PMERR_INV_FIRST_CHAR 0x2064 ! 1395: #define PMERR_INV_FONT_ATTRS 0x2065 ! 1396: #define PMERR_INV_FONT_FILE_DATA 0x2066 ! 1397: #define PMERR_INV_FOR_THIS_DC_TYPE 0x2067 ! 1398: #define PMERR_INV_FORMAT_CONTROL 0x2068 ! 1399: #define PMERR_INV_FORMS_CODE 0x2069 ! 1400: #define PMERR_INV_GEOM_LINE_WIDTH_ATTR 0x206A ! 1401: #define PMERR_INV_GETDATA_CONTROL 0x206B ! 1402: #define PMERR_INV_GRAPHICS_FIELD 0x206C ! 1403: #define PMERR_INV_HBITMAP 0x206D ! 1404: #define PMERR_INV_HDC 0x206E ! 1405: #define PMERR_INV_HMF 0x206F ! 1406: #define PMERR_INV_HPS 0x2070 ! 1407: #define PMERR_INV_HRGN 0x2071 ! 1408: #define PMERR_INV_ID 0x2072 ! 1409: #define PMERR_INV_IMAGE_DATA_LENGTH 0x2073 ! 1410: #define PMERR_INV_IMAGE_DIMENSION 0x2074 ! 1411: #define PMERR_INV_IMAGE_FORMAT 0x2075 ! 1412: #define PMERR_INV_IN_AREA 0x2076 ! 1413: #define PMERR_INV_IN_CURRENT_EDIT_MODE 0x2077 ! 1414: #define PMERR_INV_IN_DRAW_MODE 0x2078 ! 1415: #define PMERR_INV_IN_ELEMENT 0x2079 ! 1416: #define PMERR_INV_IN_IMAGE 0x207A ! 1417: #define PMERR_INV_IN_PATH 0x207B ! 1418: #define PMERR_INV_IN_RETAIN_MODE 0x207C ! 1419: #define PMERR_INV_IN_SEG 0x207D ! 1420: #define PMERR_INV_IN_VECTOR_SYMBOL 0x207E ! 1421: #define PMERR_INV_INFO_TABLE 0x207F ! 1422: #define PMERR_INV_KERNING_FLAGS 0x2080 ! 1423: #define PMERR_INV_LENGTH_OR_COUNT 0x2081 ! 1424: #define PMERR_INV_LINE_END_ATTR 0x2082 ! 1425: #define PMERR_INV_LINE_JOIN_ATTR 0x2083 ! 1426: #define PMERR_INV_LINE_TYPE_ATTR 0x2084 ! 1427: #define PMERR_INV_LINE_WIDTH_ATTR 0x2085 ! 1428: #define PMERR_INV_LOGICAL_ADDRESS 0x2086 ! 1429: #define PMERR_INV_MARKER_BOX_ATTR 0x2087 ! 1430: #define PMERR_INV_MARKER_SET_ATTR 0x2088 ! 1431: #define PMERR_INV_MARKER_SYMBOL_ATTR 0x2089 ! 1432: #define PMERR_INV_MATRIX_ELEMENT 0x208A ! 1433: #define PMERR_INV_MAX_HITS 0x208B ! 1434: #define PMERR_INV_METAFILE 0x208C ! 1435: #define PMERR_INV_METAFILE_LENGTH 0x208D ! 1436: #define PMERR_INV_METAFILE_OFFSET 0x208E ! 1437: #define PMERR_INV_MICROPS_DRAW_CONTROL 0x208F ! 1438: #define PMERR_INV_MICROPS_FUNCTION 0x2090 ! 1439: #define PMERR_INV_MICROPS_ORDER 0x2091 ! 1440: #define PMERR_INV_MIX_ATTR 0x2092 ! 1441: #define PMERR_INV_MODE_FOR_OPEN_DYN 0x2093 ! 1442: #define PMERR_INV_MODE_FOR_REOPEN_SEG 0x2094 ! 1443: #define PMERR_INV_MODIFY_PATH_MODE 0x2095 ! 1444: #define PMERR_INV_MULTIPLIER 0x2096 ! 1445: #define PMERR_INV_OR_INCOMPAT_OPTIONS 0x2097 ! 1446: #define PMERR_INV_ORDER_LENGTH 0x2098 ! 1447: #define PMERR_INV_ORDERING_PARM 0x2099 ! 1448: #define PMERR_INV_OUTSIDE_DRAW_MODE 0x209A ! 1449: #define PMERR_INV_PAGE_VIEWPORT 0x209B ! 1450: #define PMERR_INV_PATH_ID 0x209C ! 1451: #define PMERR_INV_PATH_MODE 0x209D ! 1452: #define PMERR_INV_PATTERN_ATTR 0x209E ! 1453: #define PMERR_INV_PATTERN_REF_PT_ATTR 0x209F ! 1454: #define PMERR_INV_PATTERN_SET_ATTR 0x20A0 ! 1455: #define PMERR_INV_PATTERN_SET_FONT 0x20A1 ! 1456: #define PMERR_INV_PICK_APERTURE_OPTION 0x20A2 ! 1457: #define PMERR_INV_PICK_APERTURE_POSN 0x20A3 ! 1458: #define PMERR_INV_PICK_APERTURE_SIZE 0x20A4 ! 1459: #define PMERR_INV_PICK_NUMBER 0x20A5 ! 1460: #define PMERR_INV_PLAY_METAFILE_OPTION 0x20A6 ! 1461: #define PMERR_INV_PRIMITIVE_TYPE 0x20A7 ! 1462: #define PMERR_INV_PS_SIZE 0x20A8 ! 1463: #define PMERR_INV_PUTDATA_FORMAT 0x20A9 ! 1464: #define PMERR_INV_QUERY_ELEMENT_NO 0x20AA ! 1465: #define PMERR_INV_RECT 0x20AB ! 1466: #define PMERR_INV_REGION_CONTROL 0x20AC ! 1467: #define PMERR_INV_REGION_MIX_MODE 0x20AD ! 1468: #define PMERR_INV_REPLACE_MODE_FUNC 0x20AE ! 1469: #define PMERR_INV_RESERVED_FIELD 0x20AF ! 1470: #define PMERR_INV_RESET_OPTIONS 0x20B0 ! 1471: #define PMERR_INV_RGBCOLOR 0x20B1 ! 1472: #define PMERR_INV_SCAN_START 0x20B2 ! 1473: #define PMERR_INV_SEG_ATTR 0x20B3 ! 1474: #define PMERR_INV_SEG_ATTR_VALUE 0x20B4 ! 1475: #define PMERR_INV_SEG_CH_LENGTH 0x20B5 ! 1476: #define PMERR_INV_SEG_NAME 0x20B6 ! 1477: #define PMERR_INV_SEG_OFFSET 0x20B7 ! 1478: #define PMERR_INV_SETID 0x20B8 ! 1479: #define PMERR_INV_SHARPNESS_PARM 0x20B9 ! 1480: #define PMERR_INV_SOURCE_OFFSET 0x20BA ! 1481: #define PMERR_INV_STOP_DRAW_VALUE 0x20BB ! 1482: #define PMERR_INV_TRANSFORM_TYPE 0x20BC ! 1483: #define PMERR_INV_USAGE_PARM 0x20BD ! 1484: #define PMERR_INV_VIEWING_LIMITS 0x20BE ! 1485: #define PMERR_KERNING_NOT_SUPPORTED 0x20BF ! 1486: #define PMERR_LABEL_NOT_FOUND 0x20C0 ! 1487: #define PMERR_MATRIX_OVERFLOW 0x20C1 ! 1488: #define PMERR_METAFILE_IN_USE 0x20C2 ! 1489: #define PMERR_METAFILE_LIMIT_EXCEEDED 0x20C3 ! 1490: #define PMERR_NAME_STACK_FULL 0x20C4 ! 1491: #define PMERR_NO_BITMAP_SELECTED 0x20C5 ! 1492: #define PMERR_NO_CURRENT_ELEMENT 0x20C6 ! 1493: #define PMERR_NO_CURRENT_SEG 0x20C7 ! 1494: #define PMERR_NO_METAFILE_RECORD_HANDLE 0x20C8 ! 1495: #define PMERR_NOT_CREATED_BY_DEVOPENDC 0x20C9 ! 1496: #define PMERR_NOT_IN_AREA 0x20CA ! 1497: #define PMERR_NOT_IN_DRAW_MODE 0x20CB ! 1498: #define PMERR_NOT_IN_ELEMENT 0x20CC ! 1499: #define PMERR_NOT_IN_IMAGE 0x20CD ! 1500: #define PMERR_NOT_IN_PATH 0x20CE ! 1501: #define PMERR_NOT_IN_RETAIN_MODE 0x20CF ! 1502: #define PMERR_NOT_IN_SEG 0x20D0 ! 1503: #define PMERR_ORDER_TOO_BIG 0x20D1 ! 1504: #define PMERR_OTHER_SET_ID_REFS 0x20D2 ! 1505: #define PMERR_OVERRAN_SEG 0x20D3 ! 1506: #define PMERR_OWN_SET_ID_REFS 0x20D4 ! 1507: #define PMERR_PATH_INCOMPLETE 0x20D5 ! 1508: #define PMERR_PATH_LIMIT_EXCEEDED 0x20D6 ! 1509: #define PMERR_PATH_UNKNOWN 0x20D7 ! 1510: #define PMERR_PEL_IS_CLIPPED 0x20D8 ! 1511: #define PMERR_PEL_NOT_AVAILABLE 0x20D9 ! 1512: #define PMERR_PRIMITIVE_STACK_EMPTY 0x20DA ! 1513: #define PMERR_PROLOG_ERROR 0x20DB ! 1514: #define PMERR_PROLOG_SEG_ATTR_NOT_SET 0x20DC ! 1515: #define PMERR_PS_BUSY 0x20DD ! 1516: #define PMERR_PS_IS_ASSOCIATED 0x20DE ! 1517: #define PMERR_REALIZE_NOT_SUPPORTED 0x20DF ! 1518: #define PMERR_REGION_IS_CLIP_REGION 0x20E0 ! 1519: #define PMERR_RESOURCE_DEPLETION 0x20E1 ! 1520: #define PMERR_SEG_AND_REFSEG_ARE_SAME 0x20E2 ! 1521: #define PMERR_SEG_CALL_RECURSIVE 0x20E3 ! 1522: #define PMERR_SEG_CALL_STACK_EMPTY 0x20E4 ! 1523: #define PMERR_SEG_CALL_STACK_FULL 0x20E5 ! 1524: #define PMERR_SEG_IS_CURRENT 0x20E6 ! 1525: #define PMERR_SEG_NOT_CHAINED 0x20E7 ! 1526: #define PMERR_SEG_NOT_FOUND 0x20E8 ! 1527: #define PMERR_SEG_STORE_LIMIT_EXCEEDED 0x20E9 ! 1528: #define PMERR_SETID_IN_USE 0x20EA ! 1529: #define PMERR_SETID_NOT_FOUND 0x20EB ! 1530: #define PMERR_STARTDOC_NOT_ISSUED 0x20EC ! 1531: #define PMERR_STOP_DRAW_OCCURRED 0x20ED ! 1532: #define PMERR_TOO_MANY_METAFILES_IN_USE 0x20EE ! 1533: #define PMERR_TRUNCATED_ORDER 0x20EF ! 1534: #define PMERR_UNCHAINED_SEG_ZERO_INV 0x20F0 ! 1535: #define PMERR_UNSUPPORTED_ATTR 0x20F1 ! 1536: #define PMERR_UNSUPPORTED_ATTR_VALUE 0x20F2 ! 1537: ! 1538: #endif /* non-common GPIERRORS */
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.