|
|
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.