source: 2.19_branch/Sibyl/RTL/PMGPI.PAS@ 376

Last change on this file since 376 was 8, checked in by RBRi, 19 years ago

+ rest of sibyl stuff

  • Property svn:eol-style set to native
File size: 64.1 KB
Line 
1UNIT PMGPI;
2
3{****************************** Module Header ******************************
4* *
5* Module Name: 'PMGPI'.PAS *
6* *
7* OS/2 Presentation Manager GPI constants, types and function declarations *
8* *
9****************************************************************************}
10
11INTERFACE
12
13USES Os2Def,PmBitMap,PmWin;
14
15{ General GPI return values }
16
17CONST
18 GPI_ERROR =0;
19 GPI_OK =1;
20 GPI_ALTERROR =-1;
21
22
23{ fixed point number - implicit binary point between 2 and 3 hex digits }
24
25TYPE
26 FIXED=LONG;
27 FIXED88=WORD;
28 FIXED114=WORD;
29
30
31{ structure for size parameters e.g. for GpiCreatePS }
32
33TYPE
34 PSIZEL=^SIZEL;
35 SIZEL=RECORD
36 cx:LONG;
37 cy:LONG;
38 END;
39
40{ return code on GpiQueryLogColorTable,GpiQueryRealColors and GpiQueryPel }
41
42CONST
43 CLR_NOINDEX =-254;
44
45{ units for GpiCreatePS and others }
46
47CONST
48 PU_ARBITRARY =$0004;
49 PU_PELS =$0008;
50 PU_LOMETRIC =$000C;
51 PU_HIMETRIC =$0010;
52 PU_LOENGLISH =$0014;
53 PU_HIENGLISH =$0018;
54 PU_TWIPS =$001C;
55
56 { format for GpiCreatePS }
57 GPIF_DEFAULT =0;
58 GPIF_SHORT =$0100;
59 GPIF_LONG =$0200;
60
61
62 { PS type for GpiCreatePS }
63 GPIT_NORMAL =0;
64 GPIT_MICRO =$1000;
65
66
67 { implicit associate flag for GpiCreatePS }
68 GPIA_NOASSOC =0;
69 GPIA_ASSOC =$4000;
70
71 { PS Fill type for GpiCreatePS defect: 61035 RickT Add exclusive fill }
72 GPIM_AREAEXCL =$8000;
73
74
75 { return error for GpiQueryDevice }
76 HDC_ERROR =-1;
77
78{ options for GpiResetPS }
79CONST
80 GRES_ATTRS =$0001;
81 GRES_SEGMENTS =$0002;
82 GRES_ALL =$0004;
83
84 { option masks for PS options used by GpiQueryPs }
85 PS_UNITS =$00FC;
86 PS_FORMAT =$0F00;
87 PS_TYPE =$1000;
88 PS_MODE =$2000;
89 PS_ASSOCIATE =$4000;
90 PS_NORESET =$8000;
91
92
93 { error context returned by GpiErrorSegmentData }
94 GPIE_SEGMENT =0;
95 GPIE_ELEMENT =1;
96 GPIE_DATA =2;
97
98
99 { control parameter for GpiSetDrawControl }
100 DCTL_ERASE =1;
101 DCTL_DISPLAY =2;
102 DCTL_BOUNDARY =3;
103 DCTL_DYNAMIC =4;
104 DCTL_CORRELATE =5;
105
106 { constants for GpiSet/QueryDrawControl }
107 DCTL_ERROR =-1;
108 DCTL_OFF =0;
109 DCTL_ON =1;
110
111 { constants for GpiSet/QueryStopDraw }
112 SDW_ERROR =-1;
113 SDW_OFF =0;
114 SDW_ON =1;
115
116
117 { drawing for GpiSet/QueryDrawingMode }
118 DM_ERROR =0;
119 DM_DRAW =1;
120 DM_RETAIN =2;
121 DM_DRAWANDRETAIN =3;
122
123
124 { options for GpiSetPickApertureSize }
125CONST
126 PICKAP_DEFAULT =0;
127 PICKAP_REC =2;
128
129 { type of correlation for GpiCorrelateChain }
130 PICKSEL_VISIBLE =0;
131 PICKSEL_ALL =1;
132
133 { return code to indicate correlate hit(s) }
134 GPI_HITS =2;
135
136
137 { data formats for GpiPutData and GpiGetData }
138CONST
139 DFORM_NOCONV =0;
140 DFORM_S370SHORT =1;
141 DFORM_PCSHORT =2;
142 DFORM_PCLONG =4;
143
144
145 { segment attributes used by GpiSet/QuerySegmentAttrs and others }
146 ATTR_ERROR =-1;
147 ATTR_DETECTABLE =1;
148 ATTR_VISIBLE =2;
149 ATTR_CHAINED =6;
150 ATTR_DYNAMIC =8;
151 ATTR_FASTCHAIN =9;
152 ATTR_PROP_DETECTABLE =10;
153 ATTR_PROP_VISIBLE =11;
154 ATTR_OFF =0;
155 ATTR_ON =1;
156
157 { segment priority used by GpiSetSegmentPriority and others }
158 LOWER_PRI =-1;
159 HIGHER_PRI =1;
160
161 { edit modes used by GpiSet/QueryEditMode }
162CONST
163 SEGEM_ERROR =0;
164 SEGEM_INSERT =1;
165 SEGEM_REPLACE =2;
166
167
168 { co-ordinates space for GpiConvert }
169CONST
170 CVTC_WORLD =1;
171 CVTC_MODEL =2;
172 CVTC_DEFAULTPAGE =3;
173 CVTC_PAGE =4;
174 CVTC_DEVICE =5;
175
176 { type of transformation for GpiSetSegmentTransformMatrix }
177 TRANSFORM_REPLACE =0;
178 TRANSFORM_ADD =1;
179 TRANSFORM_PREEMPT =2;
180
181 { transform matrix }
182TYPE
183 PMATRIXLF=^MATRIXLF;
184 MATRIXLF=RECORD
185 fxM11:FIXED;
186 fxM12:FIXED;
187 lM13:LONG;
188 fxM21:FIXED;
189 fxM22:FIXED;
190 lM23:LONG;
191 lM31:LONG;
192 lM32:LONG;
193 lM33:LONG;
194 END;
195
196
197 { modes for GpiModifyPath }
198CONST
199 MPATH_STROKE =6;
200
201 { modes for GpiFillPath }
202 FPATH_ALTERNATE =0;
203 FPATH_WINDING =2;
204 FPATH_INCL =0;
205 FPATH_EXCL =8;
206
207 { modes for GpiSetClipPath }
208 SCP_ALTERNATE =0;
209 SCP_WINDING =2;
210 SCP_AND =4;
211 SCP_RESET =0;
212 SCP_INCL =0;
213 SCP_EXCL =8;
214
215
216
217 { options for GpiCreateLogColorTable and others }
218CONST
219 LCOL_RESET =$0001;
220 LCOL_REALIZABLE =$0002;
221 LCOL_PURECOLOR =$0004;
222 LCOL_OVERRIDE_DEFAULT_COLORS =$0008;
223 LCOL_REALIZED =$0010;
224
225 { format of logical lColor table for GpiCreateLogColorTable and others }
226 LCOLF_DEFAULT =0;
227 LCOLF_INDRGB =1;
228 LCOLF_CONSECRGB =2;
229 LCOLF_RGB =3;
230 LCOLF_PALETTE =4;
231
232 { options for GpiQueryRealColors and others }
233 LCOLOPT_REALIZED =$0001;
234 LCOLOPT_INDEX =$0002;
235
236 { return codes from GpiQueryLogColorTable to indicate it is in RGB mode }
237 QLCT_ERROR =-1;
238 QLCT_RGB =-2;
239
240 { GpiQueryLogColorTable index returned for colors not explicitly loaded }
241 QLCT_NOTLOADED =-1;
242
243 { return codes for GpiQueryColorData }
244 QCD_LCT_FORMAT =0;
245 QCD_LCT_LOINDEX =1;
246 QCD_LCT_HIINDEX =2;
247 QCD_LCT_OPTIONS =3;
248
249 { Palette manager return values }
250 PAL_ERROR =-1;
251
252 { color flags for GpiCreatePalette and others }
253 PC_RESERVED =$01;
254 PC_EXPLICIT =$02;
255 PC_NOCOLLAPSE =$04;
256
257 { rgb colors }
258CONST
259 RGB_ERROR =-255;
260 RGB_BLACK =$00000000;
261 RGB_BLUE =$000000FF;
262 RGB_GREEN =$0000FF00;
263 RGB_CYAN =$0000FFFF;
264 RGB_RED =$00FF0000;
265 RGB_PINK =$00FF00FF;
266 RGB_YELLOW =$00FFFF00;
267 RGB_WHITE =$00FFFFFF;
268
269 { control flags used by GpiBeginArea }
270 BA_NOBOUNDARY =0;
271 BA_BOUNDARY =$0001;
272
273
274 BA_ALTERNATE =0;
275 BA_WINDING =$0002;
276
277 BA_INCL =0;
278 BA_EXCL =8;
279
280
281 { fill options for GpiBox/GpiFullArc }
282 DRO_FILL =1;
283 DRO_OUTLINE =2;
284 DRO_OUTLINEFILL =3;
285
286 { basic pattern symbols }
287 PATSYM_ERROR =-1;
288 PATSYM_DEFAULT = 0;
289 PATSYM_DENSE1 = 1;
290 PATSYM_DENSE2 = 2;
291 PATSYM_DENSE3 = 3;
292 PATSYM_DENSE4 = 4;
293 PATSYM_DENSE5 = 5;
294 PATSYM_DENSE6 = 6;
295 PATSYM_DENSE7 = 7;
296 PATSYM_DENSE8 = 8;
297 PATSYM_VERT = 9;
298 PATSYM_HORIZ =10;
299 PATSYM_DIAG1 =11;
300 PATSYM_DIAG2 =12;
301 PATSYM_DIAG3 =13;
302 PATSYM_DIAG4 =14;
303 PATSYM_NOSHADE =15;
304 PATSYM_SOLID =16;
305 PATSYM_HALFTONE =17;
306 PATSYM_HATCH =18;
307 PATSYM_DIAGHATCH =19;
308 PATSYM_BLANK =64;
309
310 { lcid values for GpiSet/QueryPattern and others }
311 LCID_ERROR =-1;
312 LCID_DEFAULT =0;
313
314
315
316
317 { mode for GpiSetAttrMode }
318CONST
319 AM_ERROR =-1;
320 AM_PRESERVE =0;
321 AM_NOPRESERVE =1;
322
323 { foreground mixes }
324 FM_ERROR =-1;
325 FM_DEFAULT =0;
326 FM_OR =1;
327 FM_OVERPAINT =2;
328 FM_LEAVEALONE =5;
329
330 FM_XOR =4;
331 FM_AND =6;
332 FM_SUBTRACT =7;
333 FM_MASKSRCNOT =8;
334 FM_ZERO =9;
335 FM_NOTMERGESRC =10;
336 FM_NOTXORSRC =11;
337 FM_INVERT =12;
338 FM_MERGESRCNOT =13;
339 FM_NOTCOPYSRC =14;
340 FM_MERGENOTSRC =15;
341 FM_NOTMASKSRC =16;
342 FM_ONE =17;
343
344
345 { background mixes }
346 BM_ERROR =-1;
347 BM_DEFAULT =0;
348 BM_OR =1;
349 BM_OVERPAINT =2;
350 BM_LEAVEALONE =5;
351
352 BM_XOR =4;
353 BM_AND =6;
354 BM_SUBTRACT =7;
355 BM_MASKSRCNOT =8;
356 BM_ZERO =9;
357 BM_NOTMERGESRC =10;
358 BM_NOTXORSRC =11;
359 BM_INVERT =12;
360 BM_MERGESRCNOT =13;
361 BM_NOTCOPYSRC =14;
362 BM_MERGENOTSRC =15;
363 BM_NOTMASKSRC =16;
364 BM_ONE =17;
365 BM_SRCTRANSPARENT =18;
366 BM_DESTTRANSPARENT =19;
367
368
369
370 { basic line type styles }
371 LINETYPE_ERROR =-1;
372 LINETYPE_DEFAULT =0;
373 LINETYPE_DOT =1;
374 LINETYPE_SHORTDASH =2;
375 LINETYPE_DASHDOT =3;
376 LINETYPE_DOUBLEDOT =4;
377 LINETYPE_LONGDASH =5;
378 LINETYPE_DASHDOUBLEDOT =6;
379 LINETYPE_SOLID =7;
380 LINETYPE_INVISIBLE =8;
381 LINETYPE_ALTERNATE =9;
382
383 { cosmetic line widths }
384 LINEWIDTH_ERROR =-1;
385 LINEWIDTH_DEFAULT =0;
386 LINEWIDTH_NORMAL =$00010000; { MAKEFIXED(1,0) }
387 LINEWIDTH_THICK =$00020000; { MAKEFIXED(2,0) }
388
389 { actual line widths }
390 LINEWIDTHGEOM_ERROR =-1;
391
392 { line end styles }
393 LINEEND_ERROR =-1;
394 LINEEND_DEFAULT =0;
395 LINEEND_FLAT =1;
396 LINEEND_SQUARE =2;
397 LINEEND_ROUND =3;
398
399 { line join styles }
400 LINEJOIN_ERROR =-1;
401 LINEJOIN_DEFAULT =0;
402 LINEJOIN_BEVEL =1;
403 LINEJOIN_ROUND =2;
404 LINEJOIN_MITRE =3;
405
406 { character directions }
407 CHDIRN_ERROR =-1;
408 CHDIRN_DEFAULT =0;
409 CHDIRN_LEFTRIGHT =1;
410 CHDIRN_TOPBOTTOM =2;
411 CHDIRN_RIGHTLEFT =3;
412 CHDIRN_BOTTOMTOP =4;
413
414 { character text alignments }
415 TA_NORMAL_HORIZ =$0001;
416 TA_LEFT =$0002;
417 TA_CENTER =$0003;
418 TA_RIGHT =$0004;
419 TA_STANDARD_HORIZ =$0005;
420 TA_NORMAL_VERT =$0100;
421 TA_TOP =$0200;
422 TA_HALF =$0300;
423 TA_BASE =$0400;
424 TA_BOTTOM =$0500;
425 TA_STANDARD_VERT =$0600;
426
427 { character modes }
428 CM_ERROR =-1;
429 CM_DEFAULT =0;
430 CM_MODE1 =1;
431 CM_MODE2 =2;
432 CM_MODE3 =3;
433
434 { basic marker symbols }
435 MARKSYM_ERROR =-1;
436 MARKSYM_DEFAULT =0;
437 MARKSYM_CROSS =1;
438 MARKSYM_PLUS =2;
439 MARKSYM_DIAMOND =3;
440 MARKSYM_SQUARE =4;
441 MARKSYM_SIXPOINTSTAR =5;
442 MARKSYM_EIGHTPOINTSTAR =6;
443 MARKSYM_SOLIDDIAMOND =7;
444 MARKSYM_SOLIDSQUARE =8;
445 MARKSYM_DOT =9;
446 MARKSYM_SMALLCIRCLE =10;
447 MARKSYM_BLANK =64;
448
449 { formatting options for GpiCharStringPosAt }
450 CHS_OPAQUE =$0001;
451 CHS_VECTOR =$0002;
452 CHS_LEAVEPOS =$0008;
453 CHS_CLIP =$0010;
454 CHS_UNDERSCORE =$0200;
455 CHS_STRIKEOUT =$0400;
456
457 { bundle codes for GpiSetAttributes and GpiQueryAttributes }
458 PRIM_LINE =1;
459 PRIM_CHAR =2;
460 PRIM_MARKER =3;
461 PRIM_AREA =4;
462 PRIM_IMAGE =5;
463
464 { line bundle mask bits }
465 LBB_COLOR =$0001;
466 LBB_BACK_COLOR =$0002;
467 LBB_MIX_MODE =$0004;
468 LBB_BACK_MIX_MODE =$0008;
469 LBB_WIDTH =$0010;
470 LBB_GEOM_WIDTH =$0020;
471 LBB_TYPE =$0040;
472 LBB_END =$0080;
473 LBB_JOIN =$0100;
474
475 { character bundle mask bits }
476 CBB_COLOR =$0001;
477 CBB_BACK_COLOR =$0002;
478 CBB_MIX_MODE =$0004;
479 CBB_BACK_MIX_MODE =$0008;
480 CBB_SET =$0010;
481 CBB_MODE =$0020;
482 CBB_BOX =$0040;
483 CBB_ANGLE =$0080;
484 CBB_SHEAR =$0100;
485 CBB_DIRECTION =$0200;
486 CBB_TEXT_ALIGN =$0400;
487 CBB_EXTRA =$0800;
488 CBB_BREAK_EXTRA =$1000;
489
490 { marker bundle mask bits }
491 MBB_COLOR =$0001;
492 MBB_BACK_COLOR =$0002;
493 MBB_MIX_MODE =$0004;
494 MBB_BACK_MIX_MODE =$0008;
495 MBB_SET =$0010;
496 MBB_SYMBOL =$0020;
497 MBB_BOX =$0040;
498
499 { pattern bundle mask bits }
500 ABB_COLOR =$0001;
501 ABB_BACK_COLOR =$0002;
502 ABB_MIX_MODE =$0004;
503 ABB_BACK_MIX_MODE =$0008;
504 ABB_SET =$0010;
505 ABB_SYMBOL =$0020;
506 ABB_REF_POINT =$0040;
507
508 { image bundle mask bits }
509 IBB_COLOR =$0001;
510 IBB_BACK_COLOR =$0002;
511 IBB_MIX_MODE =$0004;
512 IBB_BACK_MIX_MODE =$0008;
513
514 { structure for GpiSetArcParams and GpiQueryArcParams }
515TYPE
516 PARCPARAMS=^ARCPARAMS;
517 ARCPARAMS=RECORD
518 lP:LONG;
519 lQ:LONG;
520 lR:LONG;
521 lS:LONG;
522 END;
523
524 { variation of SIZE used for FIXEDs }
525TYPE
526 PSIZEF=^SIZEF;
527 SIZEF=RECORD
528 cx:FIXED;
529 cy:FIXED;
530 END;
531
532 { structure for gradient parameters e.g. for GpiSetCharAngle }
533TYPE
534 PGRADIENTL=^GRADIENTL;
535 GRADIENTL=RECORD
536 x:LONG;
537 y:LONG;
538 END;
539
540 { line bundle for GpiSetAttributes and GpiQueryAttributes }
541TYPE
542 PLINEBUNDLE=^LINEBUNDLE;
543 LINEBUNDLE=RECORD
544 lColor:LONG;
545 lBackColor:LONG;
546 usMixMode:WORD;
547 usBackMixMode:WORD;
548 fxWidth:FIXED;
549 lGeomWidth:LONG;
550 usType:WORD;
551 usEnd:WORD;
552 usJoin:WORD;
553 usReserved:WORD;
554 END;
555
556 { character bundle for GpiSetAttributes and GpiQueryAttributes }
557TYPE
558 PCHARBUNDLE=^CHARBUNDLE;
559 CHARBUNDLE=RECORD
560 lColor:LONG;
561 lBackColor:LONG;
562 usMixMode:WORD;
563 usBackMixMode:WORD;
564 usSet:WORD;
565 usPrecision:WORD;
566 sizfxCell:SIZEF;
567 ptlAngle:POINTL;
568 ptlShear:POINTL;
569 usDirection:WORD;
570 usTextAlign:WORD;
571 fxExtra:FIXED;
572 fxBreakExtra:FIXED;
573 END;
574
575 { marker bundle for GpiSetAttributes and GpiQueryAttributes }
576TYPE
577 PMARKERBUNDLE=^MARKERBUNDLE;
578 MARKERBUNDLE=RECORD
579 lColor:LONG;
580 lBackColor:LONG;
581 usMixMode:WORD;
582 usBackMixMode:WORD;
583 usSet:WORD;
584 usSymbol:WORD;
585 sizfxCell:SIZEF;
586 END;
587
588 { pattern bundle for GpiSetAttributes and GpiQueryAttributes }
589TYPE
590 PAREABUNDLE=^AREABUNDLE;
591 AREABUNDLE=RECORD
592 lColor:LONG;
593 lBackColor:LONG;
594 usMixMode:WORD;
595 usBackMixMode:WORD;
596 usSet:WORD;
597 usSymbol:WORD;
598 ptlRefPoint:POINTL
599 END;
600
601 { image bundle for GpiSetAttributes and GpiQueryAttributes }
602TYPE
603 PIMAGEBUNDLE=^IMAGEBUNDLE;
604 IMAGEBUNDLE=RECORD
605 lColor:LONG;
606 lBackColor:LONG;
607 usMixMode:WORD;
608 usBackMixMode:WORD;
609 END;
610
611 { pointer to any bundle used by GpiSet/QueryAttrs }
612TYPE PBUNDLE=POINTER;
613
614 { array indices for GpiQueryTextBox }
615CONST
616 TXTBOX_TOPLEFT =0;
617 TXTBOX_BOTTOMLEFT =1;
618 TXTBOX_TOPRIGHT =2;
619 TXTBOX_BOTTOMRIGHT =3;
620 TXTBOX_CONCAT =4;
621 { array count for GpiQueryTextBox }
622 TXTBOX_COUNT =5;
623
624 { return codes for GpiPtVisible }
625 PVIS_ERROR =0;
626 PVIS_INVISIBLE =1;
627 PVIS_VISIBLE =2;
628
629 { return codes for GpiRectVisible }
630 RVIS_ERROR =0;
631 RVIS_INVISIBLE =1;
632 RVIS_PARTIAL =2;
633 RVIS_VISIBLE =3;
634
635
636
637 { return codes from GpiCreateLogFont }
638CONST
639 FONT_DEFAULT =1;
640 FONT_MATCH =2;
641
642 { lcid type for GpiQuerySetIds }
643 LCIDT_FONT =6;
644
645 LCIDT_BITMAP =7;
646
647 { constant used to delete all lcids by GpiDeleteSetId }
648 LCID_ALL =-1;
649
650 { kerning data returned by GpiQueryKerningPairs }
651TYPE
652 PKERNINGPAIRS=^KERNINGPAIRS;
653 KERNINGPAIRS=RECORD
654 sFirstChar:SHORT;
655 sSecondChar:SHORT;
656 lKerningAmount:LONG;
657 END;
658
659 { data required by GpiQueryFaceString }
660TYPE
661 PFACENAMEDESC=^FACENAMEDESC;
662 FACENAMEDESC=RECORD
663 usSize:WORD;
664 usWeightClass:WORD;
665 usWidthClass:WORD;
666 usReserved:WORD;
667 flOptions:LONGWORD;
668 END;
669
670 { FACENAMEDESC 'WeightClass' options for GpiQueryFaceString }
671CONST
672 FWEIGHT_DONT_CARE =0;
673 FWEIGHT_ULTRA_LIGHT =1;
674 FWEIGHT_EXTRA_LIGHT =2;
675 FWEIGHT_LIGHT =3;
676 FWEIGHT_SEMI_LIGHT =4;
677 FWEIGHT_NORMAL =5;
678 FWEIGHT_SEMI_BOLD =6;
679 FWEIGHT_BOLD =7;
680 FWEIGHT_EXTRA_BOLD =8;
681 FWEIGHT_ULTRA_BOLD =9;
682
683 { FACENAMEDESC 'WidthClass' options for GpiQueryFaceString }
684 FWIDTH_DONT_CARE =0;
685 FWIDTH_ULTRA_CONDENSED =1;
686 FWIDTH_EXTRA_CONDENSED =2;
687 FWIDTH_CONDENSED =3;
688 FWIDTH_SEMI_CONDENSED =4;
689 FWIDTH_NORMAL =5;
690 FWIDTH_SEMI_EXPANDED =6;
691 FWIDTH_EXPANDED =7;
692 FWIDTH_EXTRA_EXPANDED =8;
693 FWIDTH_ULTRA_EXPANDED =9;
694
695 { FACENAMEDESC 'options' for GpiQueryFaceString }
696 FTYPE_ITALIC =$0001;
697 FTYPE_ITALIC_DONT_CARE =$0002;
698 FTYPE_OBLIQUE =$0004;
699 FTYPE_OBLIQUE_DONT_CARE =$0008;
700 FTYPE_ROUNDED =$0010;
701 FTYPE_ROUNDED_DONT_CARE =$0020;
702
703 { actions for GpiQueryFontAction }
704 QFA_PUBLIC =1;
705 QFA_PRIVATE =2;
706 QFA_ERROR =GPI_ALTERROR;
707
708 { options for GpiQueryFonts }
709 QF_PUBLIC =$0001;
710 QF_PRIVATE =$0002;
711 QF_NO_GENERIC =$0004;
712 QF_NO_DEVICE =$0008;
713
714 { font file descriptions for GpiQueryFontFileDescriptions }
715TYPE
716 FFDESCS=ARRAY[0..1,0..FACESIZE-1] OF BYTE;
717
718 PFFDESCS2=^FFDESCS2;
719 FFDESCS2=RECORD
720 cbLength:LONGWORD;
721 cbFacenameOffset:LONGWORD;
722 abFamilyName:BYTE;
723 END;
724
725
726
727 { raster operations defined for GpiBitBlt }
728CONST
729 ROP_SRCCOPY =$00CC;
730 ROP_SRCPAINT =$00EE;
731 ROP_SRCAND =$0088;
732 ROP_SRCINVERT =$0066;
733 ROP_SRCERASE =$0044;
734 ROP_NOTSRCCOPY =$0033;
735 ROP_NOTSRCERASE =$0011;
736 ROP_MERGECOPY =$00C0;
737 ROP_MERGEPAINT =$00BB;
738 ROP_PATCOPY =$00F0;
739 ROP_PATPAINT =$00FB;
740 ROP_PATINVERT =$005A;
741 ROP_DSTINVERT =$0055;
742 ROP_ZERO =$0000;
743 ROP_ONE =$00FF;
744
745 { Blt options for GpiBitBlt }
746 BBO_OR =0;
747 BBO_AND =1;
748 BBO_IGNORE =2;
749 BBO_PAL_COLORS =4;
750 BBO_NO_COLOR_INFO =8;
751
752 { Fill options for GpiFloodFill }
753 FF_BOUNDARY =0;
754 FF_SURFACE =1;
755
756 { error return for GpiSetBitmap }
757 HBM_ERROR =-1;
758
759
760
761 { usage flags for GpiCreateBitmap }
762CONST
763 CBM_INIT =$0004;
764
765 { error return code for GpiSet/QueryBitmapBits }
766 BMB_ERROR =-1;
767
768
769
770
771 { options for GpiCombineRegion }
772CONST
773 CRGN_OR =1;
774 CRGN_COPY =2;
775 CRGN_XOR =4;
776 CRGN_AND =6;
777 CRGN_DIFF =7;
778
779 { usDirection of returned region data for GpiQueryRegionRects }
780 RECTDIR_LFRT_TOPBOT =1;
781 RECTDIR_RTLF_TOPBOT =2;
782 RECTDIR_LFRT_BOTTOP =3;
783 RECTDIR_RTLF_BOTTOP =4;
784
785 { control data for GpiQueryRegionRects }
786TYPE
787 PRGNRECT=^RGNRECT;
788 RGNRECT=RECORD
789 ircStart:LONGWORD;
790 crc:LONGWORD;
791 crcReturned:LONGWORD;
792 ulDirection:LONGWORD;
793 END;
794
795TYPE
796 PStr8=POINTER;
797
798 { return code to indicate type of region for GpiCombineRegion and others }
799CONST
800 RGN_ERROR =0;
801 RGN_NULL =1;
802 RGN_RECT =2;
803 RGN_COMPLEX =3;
804
805 { return codes for GpiPtInRegion }
806 PRGN_ERROR =0;
807 PRGN_OUTSIDE =1;
808 PRGN_INSIDE =2;
809
810 { return codes for GpiRectInRegion }
811 RRGN_ERROR =0;
812 RRGN_OUTSIDE =1;
813 RRGN_PARTIAL =2;
814 RRGN_INSIDE =3;
815
816 { return codes for GpiEqualRegion }
817 EQRGN_ERROR =0;
818 EQRGN_NOTEQUAL =1;
819 EQRGN_EQUAL =2;
820
821 { error return code for GpiSetRegion }
822 HRGN_ERROR =-1;
823
824
825
826{ constants for index values of options array for GpiPlayMetaFile }
827CONST
828 PMF_SEGBASE =0;
829 PMF_LOADTYPE =1;
830 PMF_RESOLVE =2;
831 PMF_LCIDS =3;
832 PMF_RESET =4;
833 PMF_SUPPRESS =5;
834 PMF_COLORTABLES =6;
835 PMF_COLORREALIZABLE =7;
836 PMF_DEFAULTS =8;
837 PMF_DELETEOBJECTS =9;
838
839 { options for GpiPlayMetaFile }
840 RS_DEFAULT =0;
841 RS_NODISCARD =1;
842 LC_DEFAULT =0;
843 LC_NOLOAD =1;
844 LC_LOADDISC =3;
845 LT_DEFAULT =0;
846 LT_NOMODIFY =1;
847 LT_ORIGINALVIEW =4;
848 RES_DEFAULT =0;
849 RES_NORESET =1;
850 RES_RESET =2;
851 SUP_DEFAULT =0;
852 SUP_NOSUPPRESS =1;
853 SUP_SUPPRESS =2;
854 CTAB_DEFAULT =0;
855 CTAB_NOMODIFY =1;
856 CTAB_REPLACE =3;
857 CTAB_REPLACEPALETTE =4;
858 CREA_DEFAULT =0;
859 CREA_REALIZE =1;
860 CREA_NOREALIZE =2;
861 CREA_DOREALIZE =3;
862
863 DDEF_DEFAULT =0;
864 DDEF_IGNORE =1;
865 DDEF_LOADDISC =3;
866 DOBJ_DEFAULT =0;
867 DOBJ_NODELETE =1;
868 DOBJ_DELETE =2;
869 RSP_DEFAULT =0;
870 RSP_NODISCARD =1;
871
872
873TYPE
874 PPOLYGON=^POLYGON;
875 POLYGON=RECORD
876 ulPoints:LONGWORD;
877 Pointl:^POINTL;
878 END;
879
880 PPOLYSET=^POLYSET;
881 POLYSET=RECORD
882 ulPolys:LONGWORD;
883 Polygon:POLYGON;
884 END;
885
886{ control flags used by GpiPolygons }
887CONST
888 POLYGON_NOBOUNDARY =0;
889 POLYGON_BOUNDARY =$0001;
890
891 POLYGON_ALTERNATE =0;
892 POLYGON_WINDING =$0002;
893
894 POLYGON_INCL =0;
895 POLYGON_EXCL =$0008;
896
897IMPORTS
898
899FUNCTION GpiCreatePS(ahab:HAB;ahdc:HDC;VAR psizlSize:SIZEL;
900 flOptions:LONGWORD):HPS;
901 APIENTRY; 'PMGPI' index 369;
902FUNCTION GpiDestroyPS(ahps:HPS):BOOL;
903 APIENTRY; 'PMGPI' index 379;
904FUNCTION GpiAssociate(ahps:HPS;ahdc:HDC):BOOL;
905 APIENTRY; 'PMGPI' index 351;
906FUNCTION GpiRestorePS(ahps:HPS;lPSid:LONG):BOOL;
907 APIENTRY; 'PMGPI' index 499;
908FUNCTION GpiSavePS(ahps:HPS):LONG;
909 APIENTRY; 'PMGPI' index 501;
910FUNCTION GpiErase(ahps:HPS):BOOL;
911 APIENTRY; 'PMGPI' index 389;
912FUNCTION GpiQueryDevice(ahps:HPS):HDC;
913 APIENTRY; 'PMGPI' index 444;
914FUNCTION GpiResetPS(ahps:HPS;flOptions:LONGWORD):BOOL;
915 APIENTRY; 'PMGPI' index 498;
916FUNCTION GpiSetPS(ahps:HPS;VAR psizlsize:SIZEL;flOptions:LONGWORD):BOOL;
917 APIENTRY; 'PMGPI' index 539;
918FUNCTION GpiQueryPS(ahps:HPS;VAR psizlSize:SIZEL):LONGWORD;
919 APIENTRY; 'PMGPI' index 471;
920FUNCTION GpiErrorSegmentData(ahps:HPS;VAR plSegment,plContext:LONG):LONG;
921 APIENTRY; 'PMGPI' index 390;
922FUNCTION GpiQueryDrawControl(ahps:HPS;lControl:LONG):LONG;
923 APIENTRY; 'PMGPI' index 446;
924FUNCTION GpiSetDrawControl(ahps:HPS;lControl,lValue:LONG):BOOL;
925 APIENTRY; 'PMGPI' index 521;
926FUNCTION GpiQueryDrawingMode(ahps:HPS):LONG;
927 APIENTRY; 'PMGPI' index 447;
928FUNCTION GpiSetDrawingMode(ahps:HPS;lMode:LONG):BOOL;
929 APIENTRY; 'PMGPI' index 522;
930FUNCTION GpiQueryStopDraw(ahps:HPS):LONG;
931 APIENTRY; 'PMGPI' index 487;
932FUNCTION GpiSetStopDraw(ahps:HPS;lValue:LONG):BOOL;
933 APIENTRY; 'PMGPI' index 550;
934FUNCTION GpiCorrelateChain(ahps:HPS;lType:LONG;VAR pptlPick:POINTL;
935 lMaxHits,lMaxDepth:LONG;VAR pl2:LONG):LONG;
936 APIENTRY; 'PMGPI' index 366;
937FUNCTION GpiQueryTag(ahps:HPS;VAR plTag:LONG):BOOL;
938 APIENTRY; 'PMGPI' index 488;
939FUNCTION GpiSetTag(ahps:HPS;lTag:LONG):BOOL;
940 APIENTRY; 'PMGPI' index 551;
941FUNCTION GpiQueryPickApertureSize(ahps:HPS;VAR psizlSize:SIZEL):BOOL;
942 APIENTRY; 'PMGPI' index 478;
943FUNCTION GpiSetPickApertureSize(ahps:HPS;lOptions:LONG;
944 VAR psizlSize:SIZEL):BOOL;
945 APIENTRY; 'PMGPI' index 589;
946FUNCTION GpiQueryPickAperturePosition(ahps:HPS;VAR pptlPoint:POINTL):BOOL;
947 APIENTRY; 'PMGPI' index 477;
948FUNCTION GpiSetPickAperturePosition(ahps:HPS;VAR pptlPick:POINTL):BOOL;
949 APIENTRY; 'PMGPI' index 545;
950FUNCTION GpiQueryBoundaryData(ahps:HPS;VAR prclBoundary:RECTL):BOOL;
951 APIENTRY; 'PMGPI' index 428;
952FUNCTION GpiResetBoundaryData(ahps:HPS):BOOL;
953 APIENTRY; 'PMGPI' index 497;
954FUNCTION GpiCorrelateFrom(ahps:HPS;lFirstSegment,lLastSegment,lType:LONG;
955 VAR pptlPick:POINTL;lMaxHits,lMaxDepth:LONG;
956 VAR plSegTag:LONG):LONG;
957 APIENTRY; 'PMGPI' index 367;
958FUNCTION GpiCorrelateSegment(ahps:HPS;lSegment,lType:LONG;
959 VAR pptlPick:POINTL;lMaxHits,lMaxDepth:LONG;
960 VAR alSegTag:LONG):LONG;
961 APIENTRY; 'PMGPI' index 582;
962FUNCTION GpiOpenSegment(ahps:HPS;lSegment:LONG):BOOL;
963 APIENTRY; 'PMGPI' index 408;
964FUNCTION GpiCloseSegment(ahps:HPS):BOOL;
965 APIENTRY; 'PMGPI' index 361;
966FUNCTION GpiDeleteSegment(ahps:HPS;lSegid:LONG):BOOL;
967 APIENTRY; 'PMGPI' index 376;
968FUNCTION GpiQueryInitialSegmentAttrs(ahps:HPS;lAttribute:LONG):LONG;
969 APIENTRY; 'PMGPI' index 455;
970FUNCTION GpiSetInitialSegmentAttrs(ahps:HPS;lAttribute,lValue:LONG):BOOL;
971 APIENTRY; 'PMGPI' index 527;
972FUNCTION GpiQuerySegmentAttrs(ahps:HPS;lSegid,lAttribute:LONG):LONG;
973 APIENTRY; 'PMGPI' index 482;
974FUNCTION GpiSetSegmentAttrs(ahps:HPS;lSegid,lAttribute,lValue:LONG):LONG;
975 APIENTRY; 'PMGPI' index 547;
976FUNCTION GpiQuerySegmentPriority(ahps:HPS;lRefSegid,lOrder:LONG):LONG;
977 APIENTRY; 'PMGPI' index 484;
978FUNCTION GpiSetSegmentPriority(ahps:HPS;lSegid,lRefSegid,lOrder:LONG):BOOL;
979 APIENTRY; 'PMGPI' index 548;
980FUNCTION GpiDeleteSegments(ahps:HPS;lFirstSegment,lLastSegment:LONG):BOOL;
981 APIENTRY; 'PMGPI' index 377;
982FUNCTION GpiQuerySegmentNames(ahps:HPS;lFirstSegid,lLastSegid,lMax:LONG;
983 VAR alSegids:LONG):LONG;
984 APIENTRY; 'PMGPI' index 483;
985FUNCTION GpiGetData(ahps:HPS;lSegid:LONG;VAR plOffset:LONG;lFormat,
986 lLength:LONG;VAR pbData):LONG;
987 APIENTRY; 'PMGPI' index 394;
988FUNCTION GpiPutData(ahps:HPS;lFormat:LONG;VAR plCount:LONG;
989 VAR pbData):LONG;
990 APIENTRY; 'PMGPI' index 421;
991FUNCTION GpiDrawChain(ahps:HPS):BOOL;
992 APIENTRY; 'PMGPI' index 380;
993FUNCTION GpiDrawFrom(ahps:HPS;lFirstSegment,lLastSegment:LONG):BOOL;
994 APIENTRY; 'PMGPI' index 382;
995FUNCTION GpiDrawSegment(ahps:HPS;lSegment:LONG):BOOL;
996 APIENTRY; 'PMGPI' index 383;
997FUNCTION GpiDrawDynamics(ahps:HPS):BOOL;
998 APIENTRY; 'PMGPI' index 381;
999FUNCTION GpiRemoveDynamics(ahps:HPS;lFirstSegid,lLastSegid:LONG):BOOL;
1000 APIENTRY; 'PMGPI' index 496;
1001FUNCTION GpiBeginElement(ahps:HPS;lType:LONG;VAR pszDesc:PSZ):BOOL;
1002 APIENTRY; 'PMGPI' index 353;
1003FUNCTION GpiEndElement(ahps:HPS):BOOL;
1004 APIENTRY; 'PMGPI' index 386;
1005FUNCTION GpiLabel(ahps:HPS;lLabel:LONG):BOOL;
1006 APIENTRY; 'PMGPI' index 397;
1007FUNCTION GpiElement(ahps:HPS;lType:LONG;VAR pszDesc:PSZ;lLength:LONG;
1008 VAR pbData):LONG;
1009 APIENTRY; 'PMGPI' index 384;
1010FUNCTION GpiQueryElement(ahps:HPS;lOff,lMaxLength:LONG;
1011 VAR pbData):LONG;
1012 APIENTRY; 'PMGPI' index 449;
1013FUNCTION GpiDeleteElement(ahps:HPS):BOOL;
1014 APIENTRY; 'PMGPI' index 372;
1015FUNCTION GpiDeleteElementRange(ahps:HPS;lFirstElement,
1016 lLastElement:LONG):BOOL;
1017 APIENTRY; 'PMGPI' index 373;
1018FUNCTION GpiDeleteElementsBetweenLabels(ahps:HPS;lFirstLabel,
1019 lLastLabel:LONG):BOOL;
1020 APIENTRY; 'PMGPI' index 374;
1021FUNCTION GpiQueryEditMode(ahps:HPS):LONG;
1022 APIENTRY; 'PMGPI' index 448;
1023FUNCTION GpiSetEditMode(ahps:HPS;lMode:LONG):BOOL;
1024 APIENTRY; 'PMGPI' index 523;
1025FUNCTION GpiQueryElementPointer(ahps:HPS):LONG;
1026 APIENTRY; 'PMGPI' index 450;
1027FUNCTION GpiSetElementPointer(ahps:HPS;lElement:LONG):BOOL;
1028 APIENTRY; 'PMGPI' index 524;
1029FUNCTION GpiOffsetElementPointer(ahps:HPS;loffset:LONG):BOOL;
1030 APIENTRY; 'PMGPI' index 406;
1031FUNCTION GpiQueryElementType(ahps:HPS;VAR plType:LONG;lLength:LONG;
1032 VAR pszData:PSZ):LONG;
1033 APIENTRY; 'PMGPI' index 451;
1034FUNCTION GpiSetElementPointerAtLabel(ahps:HPS;lLabel:LONG):BOOL;
1035 APIENTRY; 'PMGPI' index 525;
1036FUNCTION GpiQuerySegmentTransformMatrix(ahps:HPS;lSegid,lCount:LONG;
1037 VAR pmatlfArray:MATRIXLF):BOOL;
1038 APIENTRY; 'PMGPI' index 485;
1039FUNCTION GpiSetSegmentTransformMatrix(ahps:HPS;lSegid,lCount:LONG;
1040 VAR pmatlfarray:MATRIXLF;
1041 lOptions:LONG):BOOL;
1042 APIENTRY; 'PMGPI' index 549;
1043FUNCTION GpiConvert(ahps:HPS;lSrc,lTarg,lCount:LONG;VAR aptlPoints:POINTL):BOOL;
1044 APIENTRY; 'PMGPI' index 364;
1045FUNCTION GpiConvertWithMatrix(ahps:HPS;lCountp:LONG;VAR aptlPoints:POINTL;
1046 lCount:LONG;VAR pmatlfArray:MATRIXLF):BOOL;
1047 APIENTRY; 'PMGPI' index 618;
1048FUNCTION GpiQueryModelTransformMatrix(ahps:HPS;lCount:LONG;
1049 VAR pmatlfArray:MATRIXLF):BOOL;
1050 APIENTRY; 'PMGPI' index 468;
1051FUNCTION GpiSetModelTransformMatrix(ahps:HPS;lCount:LONG;
1052 VAR pmatlfArray:MATRIXLF;
1053 lOptions:LONG):BOOL;
1054 APIENTRY; 'PMGPI' index 538;
1055FUNCTION GpiCallSegmentMatrix(ahps:HPS;lSegment,lCount:LONG;
1056 VAR pmatlfArray:MATRIXLF;
1057 lOptions:LONG):LONG;
1058 APIENTRY; 'PMGPI' index 357;
1059FUNCTION GpiQueryDefaultViewMatrix(ahps:HPS;lCount:LONG;
1060 VAR pmatlfArray:MATRIXLF):BOOL;
1061 APIENTRY; 'PMGPI' index 443;
1062FUNCTION GpiSetDefaultViewMatrix(ahps:HPS;lCount:LONG;
1063 VAR pmatlfarray:MATRIXLF;
1064 lOptions:LONG):BOOL;
1065 APIENTRY; 'PMGPI' index 520;
1066FUNCTION GpiQueryPageViewport(ahps:HPS;VAR prclViewport:RECTL):BOOL;
1067 APIENTRY; 'PMGPI' index 472;
1068FUNCTION GpiSetPageViewport(ahps:HPS;VAR prclViewport:RECTL):BOOL;
1069 APIENTRY; 'PMGPI' index 540;
1070FUNCTION GpiQueryViewingTransformMatrix(ahps:HPS;lCount:LONG;
1071 VAR pmatlfArray:MATRIXLF):BOOL;
1072 APIENTRY; 'PMGPI' index 491;
1073FUNCTION GpiSetViewingTransformMatrix(ahps:HPS;lCount:LONG;
1074 VAR pmatlfArray:MATRIXLF;
1075 lOptions:LONG):BOOL;
1076 APIENTRY; 'PMGPI' index 553;
1077FUNCTION GpiTranslate(ahps:HPS;VAR mat:MATRIXLF;cb:LONG;VAR ptl:POINTL):BOOL;
1078 APIENTRY; 'PMGPI' index 564;
1079FUNCTION GpiScale(ahps:HPS;VAR mat:MATRIXLF;cb:LONG;VAR f:FIXED;
1080 VAR pt:POINTL):BOOL;
1081 APIENTRY; 'PMGPI' index 565;
1082FUNCTION GpiRotate(ahps:HPS;VAR mat:MATRIXLF;cb:LONG;f:FIXED;
1083 VAR pt:POINTL):BOOL;
1084 APIENTRY; 'PMGPI' index 566;
1085FUNCTION GpiSetGraphicsField(ahps:HPS;VAR prclField:RECTL):BOOL;
1086 APIENTRY; 'PMGPI' index 526;
1087FUNCTION GpiQueryGraphicsField(ahps:HPS;VAR prclField:RECTL):BOOL;
1088 APIENTRY; 'PMGPI' index 454;
1089FUNCTION GpiSetViewingLimits(ahps:HPS;VAR prclLimits:RECTL):BOOL;
1090 APIENTRY; 'PMGPI' index 552;
1091FUNCTION GpiQueryViewingLimits(ahps:HPS;VAR prclLimits:RECTL):BOOL;
1092 APIENTRY; 'PMGPI' index 490;
1093FUNCTION GpiBeginPath(ahps:HPS;lPath:LONG):BOOL;
1094 APIENTRY; 'PMGPI' index 354;
1095FUNCTION GpiEndPath(ahps:HPS):BOOL;
1096 APIENTRY; 'PMGPI' index 387;
1097FUNCTION GpiCloseFigure(ahps:HPS):BOOL;
1098 APIENTRY; 'PMGPI' index 360;
1099FUNCTION GpiModifyPath(ahps:HPS;lPath,lMode:LONG):BOOL;
1100 APIENTRY; 'PMGPI' index 403;
1101FUNCTION GpiFillPath(ahps:HPS;lPath,lOptions:LONG):LONG;
1102 APIENTRY; 'PMGPI' index 392;
1103FUNCTION GpiSetClipPath(ahps:HPS;lPath,lOptions:LONG):BOOL;
1104 APIENTRY; 'PMGPI' index 515;
1105FUNCTION GpiOutlinePath(ahps:HPS;lPath,lOptions:LONG):LONG;
1106 APIENTRY; 'PMGPI' index 563;
1107FUNCTION GpiPathToRegion(GpiH:HPS;lPath,lOptions:LONG):HRGN;
1108 APIENTRY; 'PMGPI' index 559;
1109FUNCTION GpiStrokePath(ahps:HPS;lPath:LONG;flOptions:LONGWORD):LONG;
1110 APIENTRY; 'PMGPI' index 554;
1111FUNCTION GpiCreateLogColorTable(ahps:HPS;flOptions:LONGWORD;
1112 lFormat,lStart,lCount:LONG;
1113 VAR alTable):BOOL;
1114 APIENTRY; 'PMGPI' index 592;
1115FUNCTION GpiQueryColorData(ahps:HPS;lCount:LONG;VAR alArray:LONG):BOOL;
1116 APIENTRY; 'PMGPI' index 438;
1117FUNCTION GpiQueryLogColorTable(ahps:HPS;flOptions:LONGWORD;lStart,lCount:LONG;
1118 VAR alArray:LONG):LONG;
1119 APIENTRY; 'PMGPI' index 593;
1120FUNCTION GpiQueryRealColors(ahps:HPS;flOptions:LONGWORD;lStart,lCount:LONG;
1121 VAR alColors:LONG):LONG;
1122 APIENTRY; 'PMGPI' index 480;
1123FUNCTION GpiQueryNearestColor(ahps:HPS;flOptions:LONGWORD;lRgbIn:LONG):LONG;
1124 APIENTRY; 'PMGPI' index 469;
1125FUNCTION GpiQueryColorIndex(ahps:HPS;flOptions:LONGWORD;lRgbColor:LONG):LONG;
1126 APIENTRY; 'PMGPI' index 439;
1127FUNCTION GpiQueryRGBColor(ahps:HPS;flOptions:LONGWORD;lColorIndex:LONG):LONG;
1128 APIENTRY; 'PMGPI' index 479;
1129FUNCTION GpiCreatePalette(ahab:HAB;flOptions,ulFormat,ulCount:LONGWORD;
1130 VAR aulTable):HPAL;
1131 APIENTRY; 'PMGPI' index 594;
1132FUNCTION GpiDeletePalette(ahpal:HPAL):BOOL;
1133 APIENTRY; 'PMGPI' index 577;
1134FUNCTION GpiSelectPalette(ahps:HPS;ahpal:HPAL):HPAL;
1135 APIENTRY; 'PMGPI' index 578;
1136FUNCTION GpiAnimatePalette(ahpal:HPAL;ulFormat,ulStart,ulCount:LONGWORD;
1137 VAR aulTable:LONGWORD):LONG;
1138 APIENTRY; 'PMGPI' index 595;
1139FUNCTION GpiSetPaletteEntries(ahpal:HPAL;ulFormat,ulStart,ulCount:LONGWORD;
1140 VAR aulTable):BOOL;
1141 APIENTRY; 'PMGPI' index 596;
1142FUNCTION GpiQueryPalette(ahps:HPS):HPAL;
1143 APIENTRY; 'PMGPI' index 579;
1144FUNCTION GpiQueryPaletteInfo(ahpal:HPAL;ahps:HPS;flOptions,ulStart,
1145 ulCount:LONGWORD;VAR aulArray):LONG;
1146 APIENTRY; 'PMGPI' index 597;
1147FUNCTION GpiSetColor(ahps:HPS;lColor:LONG):BOOL;
1148 APIENTRY; 'PMGPI' index 517;
1149FUNCTION GpiQueryColor(ahps:HPS):LONG;
1150 APIENTRY; 'PMGPI' index 437;
1151FUNCTION GpiBox(ahps:HPS;lControl:LONG;VAR pptlPoint:POINTL;
1152 lHRound,lVRound:LONG):LONG;
1153 APIENTRY; 'PMGPI' index 356;
1154FUNCTION GpiMove(ahps:HPS;VAR pptlPoint:POINTL):BOOL;
1155 APIENTRY; 'PMGPI' index 404;
1156FUNCTION GpiLine(ahps:HPS;VAR pptlEndPoint:POINTL):LONG;
1157 APIENTRY; 'PMGPI' index 398;
1158FUNCTION GpiPolyLine(ahps:HPS;lCount:LONG;VAR aptlPoints:POINTL):LONG;
1159 APIENTRY; 'PMGPI' index 415;
1160FUNCTION GpiPolyLineDisjoint(ahps:HPS;lCount:LONG;VAR aptlPoints:POINTL):LONG;
1161 APIENTRY; 'PMGPI' index 558;
1162FUNCTION GpiSetPattern(ahps:HPS;lPatternSymbol:LONG):BOOL;
1163 APIENTRY; 'PMGPI' index 541;
1164FUNCTION GpiQueryPattern(ahps:HPS):LONG;
1165 APIENTRY; 'PMGPI' index 473;
1166FUNCTION GpiBeginArea(ahps:HPS;flOptions:LONGWORD):BOOL;
1167 APIENTRY; 'PMGPI' index 352;
1168FUNCTION GpiEndArea(ahps:HPS):LONG;
1169 APIENTRY; 'PMGPI' index 385;
1170FUNCTION GpiCharString(ahps:HPS;lCount:LONG;CONST pchString):LONG;
1171 APIENTRY; 'PMGPI' index 358;
1172FUNCTION GpiCharStringAt(ahps:HPS;VAR pptlPoint:POINTL;lCount:LONG;
1173 CONST pchString):LONG;
1174 APIENTRY; 'PMGPI' index 359;
1175FUNCTION GpiSetAttrMode(ahps:HPS;lMode:LONG):BOOL;
1176 APIENTRY; 'PMGPI' index 503;
1177FUNCTION GpiQueryAttrMode(ahps:HPS):LONG;
1178 APIENTRY; 'PMGPI' index 423;
1179FUNCTION GpiSetAttrs(ahps:HPS;lPrimType:LONG;flAttrMask,flDefMask:LONGWORD;
1180 VAR ppbunAttrs):BOOL;
1181 APIENTRY; 'PMGPI' index 588;
1182FUNCTION GpiQueryAttrs(ahps:HPS;lPrimType:LONG;flAttrMask:LONGWORD;
1183 VAR ppbunAttrs):LONG;
1184 APIENTRY; 'PMGPI' index 583;
1185FUNCTION GpiSetBackColor(ahps:HPS;lColor:LONG):BOOL;
1186 APIENTRY; 'PMGPI' index 504;
1187FUNCTION GpiQueryBackColor(ahps:HPS):LONG;
1188 APIENTRY; 'PMGPI' index 424;
1189FUNCTION GpiSetMix(ahps:HPS;lMixMode:LONG):BOOL;
1190 APIENTRY; 'PMGPI' index 537;
1191FUNCTION GpiQueryMix(ahps:HPS):LONG;
1192 APIENTRY; 'PMGPI' index 467;
1193FUNCTION GpiSetBackMix(ahps:HPS;lMixMode:LONG):BOOL;
1194 APIENTRY; 'PMGPI' index 505;
1195FUNCTION GpiQueryBackMix(ahps:HPS):LONG;
1196 APIENTRY; 'PMGPI' index 425;
1197FUNCTION GpiSetLineType(ahps:HPS;lLineType:LONG):BOOL;
1198 APIENTRY; 'PMGPI' index 530;
1199FUNCTION GpiQueryLineType(ahps:HPS):LONG;
1200 APIENTRY; 'PMGPI' index 459;
1201FUNCTION GpiSetLineWidth(ahps:HPS;fxLineWidth:FIXED):BOOL;
1202 APIENTRY; 'PMGPI' index 531;
1203FUNCTION GpiQueryLineWidth(ahps:HPS):FIXED;
1204 APIENTRY; 'PMGPI' index 460;
1205FUNCTION GpiSetLineWidthGeom(ahps:HPS;lLineWidth:LONG):BOOL;
1206 APIENTRY; 'PMGPI' index 532;
1207FUNCTION GpiQueryLineWidthGeom(ahps:HPS):LONG;
1208 APIENTRY; 'PMGPI' index 461;
1209FUNCTION GpiSetLineEnd(ahps:HPS;lLineEnd:LONG):BOOL;
1210 APIENTRY; 'PMGPI' index 528;
1211FUNCTION GpiQueryLineEnd(ahps:HPS):LONG;
1212 APIENTRY; 'PMGPI' index 457;
1213FUNCTION GpiSetLineJoin(ahps:HPS;lLineJoin:LONG):BOOL;
1214 APIENTRY; 'PMGPI' index 529;
1215FUNCTION GpiQueryLineJoin(ahps:HPS):LONG;
1216 APIENTRY; 'PMGPI' index 458;
1217FUNCTION GpiSetCurrentPosition(ahps:HPS;VAR pptlPoint:POINTL):BOOL;
1218 APIENTRY; 'PMGPI' index 519;
1219FUNCTION GpiQueryCurrentPosition(ahps:HPS;VAR pptlPoint:POINTL):BOOL;
1220 APIENTRY; 'PMGPI' index 441;
1221FUNCTION GpiSetArcParams(ahps:HPS;VAR parcpArcParams:ARCPARAMS):BOOL;
1222 APIENTRY; 'PMGPI' index 502;
1223FUNCTION GpiQueryArcParams(ahps:HPS;VAR parcpArcParams:ARCPARAMS):BOOL;
1224 APIENTRY; 'PMGPI' index 422;
1225FUNCTION GpiPointArc(ahps:HPS;VAR pptl2:POINTL):LONG;
1226 APIENTRY; 'PMGPI' index 412;
1227FUNCTION GpiFullArc(ahps:HPS;lControl:LONG;fxMultiplier:FIXED):LONG;
1228 APIENTRY; 'PMGPI' index 393;
1229FUNCTION GpiPartialArc(ahps:HPS;VAR pptlCenter:POINTL;fxMultiplier,
1230 fxStartAngle,fxSweepAngle:FIXED):LONG;
1231 APIENTRY; 'PMGPI' index 612;
1232FUNCTION GpiPolyFillet(ahps:HPS;lCount:LONG;VAR aptlPoints:POINTL):LONG;
1233 APIENTRY; 'PMGPI' index 413;
1234FUNCTION GpiPolySpline(ahps:HPS;lCount:LONG;VAR aptlPoints:POINTL):LONG;
1235 APIENTRY; 'PMGPI' index 417;
1236FUNCTION GpiPolyFilletSharp(ahps:HPS;lCount:LONG;VAR aptlPoints:POINTL;
1237 VAR afxPoints:FIXED):LONG;
1238 APIENTRY; 'PMGPI' index 414;
1239FUNCTION GpiSetPatternSet(ahps:HPS;lSet:LONG):BOOL;
1240 APIENTRY; 'PMGPI' index 543;
1241FUNCTION GpiQueryPatternSet(ahps:HPS):LONG;
1242 APIENTRY; 'PMGPI' index 475;
1243FUNCTION GpiSetPatternRefPoint(ahps:HPS;VAR pptlRefPoint:POINTL):BOOL;
1244 APIENTRY; 'PMGPI' index 542;
1245FUNCTION GpiQueryPatternRefPoint(ahps:HPS;VAR pptlRefPoint:POINTL):BOOL;
1246 APIENTRY; 'PMGPI' index 474;
1247FUNCTION GpiQueryCharStringPos(ahps:HPS;flOptions:LONGWORD;lCount:LONG;
1248 VAR pchString;VAR alXincrements:LONG;
1249 VAR aptlPositions:POINTL):BOOL;
1250 APIENTRY; 'PMGPI' index 584;
1251FUNCTION GpiQueryCharStringPosAt(ahps:HPS;VAR pptlStart:POINTL;
1252 flOptions:LONGWORD;lCount:LONG;
1253 VAR pchString;VAR alXincrements:LONG;
1254 VAR aptlPositions:POINTL):BOOL;
1255 APIENTRY; 'PMGPI' index 585;
1256FUNCTION GpiQueryTextBox(ahps:HPS;lCount1:LONG;VAR pchString;lCount2:LONG;
1257 VAR aptlPoints:POINTL):BOOL;
1258 APIENTRY; 'PMGPI' index 489;
1259FUNCTION GpiQueryDefCharBox(ahps:HPS;VAR psizlSize:SIZEL):BOOL;
1260 APIENTRY; 'PMGPI' index 442;
1261FUNCTION GpiSetCharSet(ahps:HPS;llcid:LONG):BOOL;
1262 APIENTRY; 'PMGPI' index 513;
1263FUNCTION GpiQueryCharSet(ahps:HPS):LONG;
1264 APIENTRY; 'PMGPI' index 433;
1265FUNCTION GpiSetCharBox(ahps:HPS;VAR psizfxBox:SIZEF):BOOL;
1266 APIENTRY; 'PMGPI' index 510;
1267FUNCTION GpiQueryCharBox(ahps:HPS;VAR psizfxSize:SIZEF):BOOL;
1268 APIENTRY; 'PMGPI' index 430;
1269FUNCTION GpiSetCharAngle(ahps:HPS;VAR pgradlAngle:GRADIENTL):BOOL;
1270 APIENTRY; 'PMGPI' index 509;
1271FUNCTION GpiQueryCharAngle(ahps:HPS;VAR pgradlAngle:GRADIENTL):BOOL;
1272 APIENTRY; 'PMGPI' index 429;
1273FUNCTION GpiSetCharShear(ahps:HPS;VAR pptlAngle:POINTL):BOOL;
1274 APIENTRY; 'PMGPI' index 514;
1275FUNCTION GpiQueryCharShear(ahps:HPS;VAR pptlShear:POINTL):BOOL;
1276 APIENTRY; 'PMGPI' index 434;
1277FUNCTION GpiSetCharDirection(ahps:HPS;lDirection:LONG):BOOL;
1278 APIENTRY; 'PMGPI' index 511;
1279FUNCTION GpiQueryCharDirection(ahps:HPS):LONG;
1280 APIENTRY; 'PMGPI' index 431;
1281FUNCTION GpiSetCharMode(ahps:HPS;lMode:LONG):BOOL;
1282 APIENTRY; 'PMGPI' index 512;
1283FUNCTION GpiQueryCharMode(ahps:HPS):LONG;
1284 APIENTRY; 'PMGPI' index 432;
1285FUNCTION GpiSetTextAlignment(ahps:HPS;lHoriz,lVert:LONG):BOOL;
1286 APIENTRY; 'PMGPI' index 649;
1287FUNCTION GpiQueryTextAlignment(ahps:HPS;VAR plHoriz,plVert:LONG):BOOL;
1288 APIENTRY; 'PMGPI' index 648;
1289FUNCTION GpiCharStringPos(ahps:HPS;VAR prclRect:RECTL;flOptions:LONGWORD;
1290 lCount:LONG;VAR pchString;VAR alAdx:LONG):LONG;
1291 APIENTRY; 'PMGPI' index 580;
1292FUNCTION GpiCharStringPosAt(ahps:HPS;VAR pptlStart:POINTL;VAR prclRect:RECTL;
1293 flOptions:LONGWORD;lCount:LONG;VAR pchString;
1294 VAR alAdx:LONG):LONG;
1295 APIENTRY; 'PMGPI' index 581;
1296FUNCTION GpiSetCharExtra(ahps:HPS;Extra:FIXED):BOOL;
1297 APIENTRY; 'PMGPI' index 614;
1298FUNCTION GpiSetCharBreakExtra(ahps:HPS;BreakExtra:FIXED):BOOL;
1299 APIENTRY; 'PMGPI' index 616;
1300FUNCTION GpiQueryCharExtra(ahps:HPS;VAR Extra:FIXED):BOOL;
1301 APIENTRY; 'PMGPI' index 613;
1302FUNCTION GpiQueryCharBreakExtra(ahps:HPS;VAR BreakExtra:FIXED):BOOL;
1303 APIENTRY; 'PMGPI' index 615;
1304FUNCTION GpiMarker(ahps:HPS;VAR pptlPoint:POINTL):LONG;
1305 APIENTRY; 'PMGPI' index 402;
1306FUNCTION GpiPolyMarker(ahps:HPS;lCount:LONG;VAR aptlPoints:POINTL):LONG;
1307 APIENTRY; 'PMGPI' index 416;
1308FUNCTION GpiSetMarker(ahps:HPS;lSymbol:LONG):BOOL;
1309 APIENTRY; 'PMGPI' index 533;
1310FUNCTION GpiSetMarkerBox(ahps:HPS;VAR psizfxSize:SIZEF):BOOL;
1311 APIENTRY; 'PMGPI' index 534;
1312FUNCTION GpiSetMarkerSet(ahps:HPS;lSet:LONG):BOOL;
1313 APIENTRY; 'PMGPI' index 535;
1314FUNCTION GpiQueryMarker(ahps:HPS):LONG;
1315 APIENTRY; 'PMGPI' index 462;
1316FUNCTION GpiQueryMarkerBox(ahps:HPS;VAR psizfxSize:SIZEF):BOOL;
1317 APIENTRY; 'PMGPI' index 463;
1318FUNCTION GpiQueryMarkerSet(ahps:HPS):LONG;
1319 APIENTRY; 'PMGPI' index 464;
1320FUNCTION GpiImage(ahps:HPS;lFormat:LONG;VAR psizlImageSize:SIZEL;
1321 lLength:LONG;VAR pbData):LONG;
1322 APIENTRY; 'PMGPI' index 395;
1323FUNCTION GpiPop(ahps:HPS;lCount:LONG):BOOL;
1324 APIENTRY; 'PMGPI' index 418;
1325FUNCTION GpiPtVisible(ahps:HPS;VAR pptlPoint:POINTL):LONG;
1326 APIENTRY; 'PMGPI' index 420;
1327FUNCTION GpiRectVisible(ahps:HPS;VAR prclRectangle:RECTL):LONG;
1328 APIENTRY; 'PMGPI' index 495;
1329FUNCTION GpiComment(ahps:HPS;lLength:LONG;VAR pbData):BOOL;
1330 APIENTRY; 'PMGPI' index 363;
1331FUNCTION GpiCreateLogFont(ahps:HPS;pName:PStr8;lLcid:LONG;
1332 VAR pfatAttrs:FATTRS):LONG;
1333 APIENTRY; 'PMGPI' index 368;
1334FUNCTION GpiDeleteSetId(ahps:HPS;lLcid:LONG):BOOL;
1335 APIENTRY; 'PMGPI' index 378;
1336FUNCTION GpiLoadFonts(ahab:HAB;VAR pszFilename:PSZ):BOOL;
1337 APIENTRY; 'PMGPI' index 400;
1338FUNCTION GpiUnloadFonts(ahab:HAB;VAR pszFilename:PSZ):BOOL;
1339 APIENTRY; 'PMGPI' index 555;
1340FUNCTION GpiQueryFonts(ahps:HPS;flOptions:LONGWORD;VAR pszFacename:PSZ;
1341 VAR plReqFonts:LONG;lMetricsLength:LONG;
1342 VAR afmMetrics:FONTMETRICS):LONG;
1343 APIENTRY; 'PMGPI' index 586;
1344FUNCTION GpiQueryFontMetrics(ahps:HPS;lMetricsLength:LONG;
1345 VAR pfmMetrics:FONTMETRICS):BOOL;
1346 APIENTRY; 'PMGPI' index 453;
1347FUNCTION GpiQueryKerningPairs(ahps:HPS;lCount:LONG;
1348 VAR akrnprData:KERNINGPAIRS):LONG;
1349 APIENTRY; 'PMGPI' index 456;
1350FUNCTION GpiQueryWidthTable(ahps:HPS;lFirstChar,lCount:LONG;
1351 VAR alData:LONG):BOOL;
1352 APIENTRY; 'PMGPI' index 492;
1353FUNCTION GpiQueryNumberSetIds(ahps:HPS):LONG;
1354 APIENTRY; 'PMGPI' index 470;
1355FUNCTION GpiQuerySetIds(ahps:HPS;lCount:LONG;VAR alTypes:LONG;
1356 aNames:PStr8;VAR allcids:LONG):BOOL;
1357 APIENTRY; 'PMGPI' index 486;
1358FUNCTION GpiQueryFaceString(PS:HPS;VAR FamilyName:PSZ;VAR attrs:FACENAMEDESC;
1359 alength:LONG;VAR CompoundFaceName:PSZ):LONGWORD;
1360 APIENTRY; 'PMGPI' index 575;
1361FUNCTION GpiQueryLogicalFont(PS:HPS;lcid:LONG;name:PStr8;VAR attrs:FATTRS;
1362 alength:LONG):BOOL;
1363 APIENTRY; 'PMGPI' index 574;
1364FUNCTION GpiQueryFontAction(anchor:HAB;options:LONGWORD):LONGWORD;
1365 APIENTRY; 'PMGPI' index 576;
1366FUNCTION GpiLoadPublicFonts(ahab:HAB;VAR name:PSZ):BOOL;
1367 APIENTRY; 'PMGPI' index 622;
1368FUNCTION GpiUnloadPublicFonts(ahab:HAB;VAR name:PSZ):BOOL;
1369 APIENTRY; 'PMGPI' index 623;
1370FUNCTION GpiSetCp(ahps:HPS;ulCodePage:LONGWORD):BOOL;
1371 APIENTRY; 'PMGPI' index 518;
1372FUNCTION GpiQueryCp(ahps:HPS):LONGWORD;
1373 APIENTRY; 'PMGPI' index 440;
1374{FUNCTION GpiQueryFullFontFileDescs(ahab:HAB;VAR pszFilename:PSZ;
1375 VAR plCount:LONG;pNames:POINTER;
1376 VAR plNamesBuffLength:LONG):LONG;
1377 APIENTRY; 'PMGPI' index}
1378FUNCTION GpiQueryFontFileDescriptions(ahab:HAB;VAR pszFilename:PSZ;
1379 VAR plCount:LONG;
1380 VAR affdescsNames:FFDESCS):LONG;
1381 APIENTRY; 'PMGPI' index 452;
1382FUNCTION GpiBitBlt(hpsTarget,hpsSource:HPS;lCount:LONG;VAR aptlPoints:POINTL;
1383 lRop:LONG;flOptions:LONGWORD):LONG;
1384 APIENTRY; 'PMGPI' index 355;
1385FUNCTION GpiDeleteBitmap(hbm:HBITMAP):BOOL;
1386 APIENTRY; 'PMGPI' index 371;
1387FUNCTION GpiLoadBitmap(ahps:HPS;aResource:HMODULE;idBitmap:LONGWORD;
1388 lWidth,lHeight:LONG):HBITMAP;
1389 APIENTRY; 'PMGPI' index 399;
1390FUNCTION GpiSetBitmap(ahps:HPS;hbm:HBITMAP):HBITMAP;
1391 APIENTRY; 'PMGPI' index 506;
1392FUNCTION GpiWCBitBlt(hpsTarget:HPS;hbmSource:HBITMAP;lCount:LONG;
1393 VAR aptlPoints:POINTL;lRop:LONG;flOptions:LONGWORD):LONG;
1394 APIENTRY; 'PMGPI' index 557;
1395FUNCTION GpiCreateBitmap(ahps:HPS;VAR pbmpNew;
1396 flOptions:LONGWORD;VAR pbInitData;
1397 VAR pbmiInfoTable):HBITMAP;
1398 APIENTRY; 'PMGPI' index 598;
1399FUNCTION GpiSetBitmapBits(ahps:HPS;lScanStart,lScans:LONG;
1400 VAR pbBuffer;
1401 VAR pbmiInfoTable):LONG;
1402 APIENTRY; 'PMGPI' index 602;
1403FUNCTION GpiSetBitmapDimension(hbm:HBITMAP;
1404 VAR psizlBitmapDimension:SIZEL):BOOL;
1405 APIENTRY; 'PMGPI' index 507;
1406FUNCTION GpiSetBitmapId(ahps:HPS;hbm:HBITMAP;lLcid:LONG):BOOL;
1407 APIENTRY; 'PMGPI' index 508;
1408FUNCTION GpiQueryBitmapBits(ahps:HPS;lScanStart,lScans:LONG;
1409 VAR pbBuffer;
1410 VAR pbmiInfoTable):LONG;
1411 APIENTRY; 'PMGPI' index 599;
1412FUNCTION GpiQueryBitmapDimension(hbm:HBITMAP;
1413 VAR psizlBitmapDimension:SIZEL):BOOL;
1414 APIENTRY; 'PMGPI' index 426;
1415
1416FUNCTION GpiQueryBitmapHandle(ahps:HPS;lLcid:LONG):HBITMAP;
1417 APIENTRY; 'PMGPI' index 427;
1418FUNCTION GpiQueryBitmapParameters(hbm:HBITMAP;
1419 VAR pbmpData:BITMAPINFOHEADER):BOOL;
1420 APIENTRY; 'PMGPI' index 573;
1421FUNCTION GpiQueryBitmapInfoHeader(hbm:HBITMAP;
1422 VAR pbmpData):BOOL;
1423 APIENTRY; 'PMGPI' index 601;
1424FUNCTION GpiQueryDeviceBitmapFormats(ahps:HPS;lCount:LONG;
1425 VAR alArray:LONG):BOOL;
1426 APIENTRY; 'PMGPI' index 445;
1427FUNCTION GpiSetPel(ahps:HPS;VAR pptlPoint:POINTL):LONG;
1428 APIENTRY; 'PMGPI' index 544;
1429FUNCTION GpiQueryPel(ahps:HPS;VAR pptlPoint:POINTL):LONG;
1430 APIENTRY; 'PMGPI' index 476;
1431FUNCTION GpiFloodFill(ahps:HPS;lOptions,lColor:LONG):LONG;
1432 APIENTRY; 'PMGPI' index 560;
1433FUNCTION GpiDrawBits(ahps:HPS;pBits:POINTER;
1434 VAR pbmiInfoTable:BITMAPINFO2;lCount:LONG;
1435 VAR aptlPoints:POINTL;lRop:LONG;
1436 flOptions:LONGWORD):LONG;
1437 APIENTRY; 'PMGPI' index 603;
1438FUNCTION GpiCombineRegion(ahps:HPS;hrgnDest,hrgnSrc1,hrgnSrc2:HRGN;
1439 lMode:LONG):LONG;
1440 APIENTRY; 'PMGPI' index 362;
1441FUNCTION GpiCreateRegion(ahps:HPS;lCount:LONG;
1442 CONST arclRectangles:RECTL):HRGN;
1443 APIENTRY; 'PMGPI' index 370;
1444FUNCTION GpiDestroyRegion(ahps:HPS;ahrgn:HRGN):BOOL;
1445 APIENTRY; 'PMGPI' index 611;
1446FUNCTION GpiEqualRegion(ahps:HPS;hrgnSrc1,hrgnSrc2:HRGN):LONG;
1447 APIENTRY; 'PMGPI' index 388;
1448FUNCTION GpiOffsetRegion(ahps:HPS;aHrgn:HRGN;VAR pptlOffset:POINTL):BOOL;
1449 APIENTRY; 'PMGPI' index 407;
1450FUNCTION GpiPaintRegion(ahps:HPS;ahrgn:HRGN):LONG;
1451 APIENTRY; 'PMGPI' index 409;
1452FUNCTION GpiFrameRegion(ahps:HPS;ahrgn:HRGN;VAR thickness:SIZEL):LONG;
1453 APIENTRY; 'PMGPI' index 617;
1454FUNCTION GpiPtInRegion(ahps:HPS;ahrgn:HRGN;VAR pptlPoint:POINTL):LONG;
1455 APIENTRY; 'PMGPI' index 419;
1456FUNCTION GpiQueryRegionBox(ahps:HPS;ahrgn:HRGN;VAR prclBound:RECTL):LONG;
1457 APIENTRY; 'PMGPI' index 481;
1458FUNCTION GpiQueryRegionRects(ahps:HPS;ahrgn:HRGN;VAR prclBound:RECTL;
1459 VAR prgnrcControl:RGNRECT;
1460 VAR prclRect:RECTL):BOOL;
1461 APIENTRY; 'PMGPI' index 587;
1462FUNCTION GpiRectInRegion(ahps:HPS;ahrgn:HRGN;VAR prclRect:RECTL):LONG;
1463 APIENTRY; 'PMGPI' index 494;
1464FUNCTION GpiSetRegion(ahps:HPS;ahrgn:HRGN;lcount:LONG;
1465 VAR arclRectangles:RECTL):BOOL;
1466 APIENTRY; 'PMGPI' index 546;
1467FUNCTION GpiSetClipRegion(ahps:HPS;ahrgn:HRGN;VAR phrgnOld:HRGN):LONG;
1468 APIENTRY; 'PMGPI' index 516;
1469FUNCTION GpiQueryClipRegion(ahps:HPS):HRGN;
1470 APIENTRY; 'PMGPI' index 436;
1471FUNCTION GpiQueryClipBox(ahps:HPS;VAR prclBound:RECTL):LONG;
1472 APIENTRY; 'PMGPI' index 435;
1473FUNCTION GpiExcludeClipRectangle(ahps:HPS;CONST prclRectangle:RECTL):LONG;
1474 APIENTRY; 'PMGPI' index 391;
1475FUNCTION GpiIntersectClipRectangle(ahps:HPS;VAR prclRectangle:RECTL):LONG;
1476 APIENTRY; 'PMGPI' index 396;
1477FUNCTION GpiOffsetClipRegion(ahps:HPS;VAR pptlPoint:POINTL):LONG;
1478 APIENTRY; 'PMGPI' index 405;
1479FUNCTION GpiCopyMetaFile(ahmf:HMF):HMF;
1480 APIENTRY; 'PMGPI' index 365;
1481FUNCTION GpiDeleteMetaFile(ahmf:HMF):BOOL;
1482 APIENTRY; 'PMGPI' index 375;
1483FUNCTION GpiLoadMetaFile(ahab:HAB;Const pszFilename:CString):HMF;
1484 APIENTRY; 'PMGPI' index 401;
1485FUNCTION GpiPlayMetaFile(ahps:HPS;ahmf:HMF;lCount1:LONG;
1486 VAR alOptarray,plSegCount:LONG;
1487 lCount2:LONG;VAR pszDesc:PSZ):LONG;
1488 APIENTRY; 'PMGPI' index 411;
1489FUNCTION GpiQueryMetaFileBits(ahmf:HMF;lOffset,lLength:LONG;
1490 VAR pbData):LONG;
1491 APIENTRY; 'PMGPI' index 465;
1492FUNCTION GpiQueryMetaFileLength(ahmf:HMF):LONG;
1493 APIENTRY; 'PMGPI' index 466;
1494FUNCTION GpiSaveMetaFile(ahmf:HMF;Const pszFilename:CString):BOOL;
1495 APIENTRY; 'PMGPI' index 500;
1496FUNCTION GpiSetMetaFileBits(ahmf:HMF;lOffset,lLength:LONG;
1497 VAR pbBuffer):BOOL;
1498 APIENTRY; 'PMGPI' index 536;
1499FUNCTION GpiQueryDefArcParams(ahps:HPS;
1500 VAR parcpArcParams:ARCPARAMS):BOOL;
1501 APIENTRY; 'PMGPI' index 567;
1502FUNCTION GpiQueryDefAttrs(ahps:HPS;lPrimType:LONG;flAttrMask:LONGWORD;
1503 VAR ppbunAttrs):BOOL;
1504 APIENTRY; 'PMGPI' index 590;
1505FUNCTION GpiQueryDefTag(ahps:HPS;VAR plTag:LONG):BOOL;
1506 APIENTRY; 'PMGPI' index 568;
1507FUNCTION GpiQueryDefViewingLimits(ahps:HPS;VAR prclLimits:RECTL):BOOL;
1508 APIENTRY; 'PMGPI' index 569;
1509FUNCTION GpiSetDefArcParams(ahps:HPS;VAR parcpArcParams:ARCPARAMS):BOOL;
1510 APIENTRY; 'PMGPI' index 570;
1511FUNCTION GpiSetDefAttrs(ahps:HPS;lPrimType:LONG;flAttrMask:LONGWORD;
1512 VAR ppbunAttrs):BOOL;
1513 APIENTRY; 'PMGPI' index 591;
1514FUNCTION GpiSetDefTag(ahps:HPS;lTag:LONG):BOOL;
1515 APIENTRY; 'PMGPI' index 571;
1516FUNCTION GpiSetDefViewingLimits(ahps:HPS;VAR prclLimits:RECTL):BOOL;
1517 APIENTRY; 'PMGPI' index 572;
1518FUNCTION GpiPolygons(ahps:HPS;ulCount:LONGWORD;VAR paplgn:POLYGON;
1519 flOptions,flModel:LONGWORD):LONG;
1520 APIENTRY; 'PMGPI' index 650;
1521END; {IMPORTS}
1522
1523
1524
1525FUNCTION MAKEFIXED(intpart,fractpart:WORD):FIXED;
1526FUNCTION FIXEDFRAC(fx:FIXED):WORD;
1527FUNCTION FIXEDINT(fx:FIXED):WORD;
1528
1529IMPLEMENTATION
1530
1531
1532{ make FIXED number from SHORT integer part and WORD fractional part }
1533FUNCTION MAKEFIXED(intpart,fractpart:WORD):FIXED;
1534BEGIN
1535 MAKEFIXED:=MAKELONG(fractpart,intpart);
1536END;
1537
1538
1539{ extract fractional part from a fixed quantity }
1540FUNCTION FIXEDFRAC(fx:FIXED):WORD;
1541BEGIN
1542 FIXEDFRAC:=LOUSHORT(fx);
1543END;
1544
1545{ extract integer part from a fixed quantity }
1546FUNCTION FIXEDINT(fx:FIXED):WORD;
1547BEGIN
1548 FIXEDINT:=HIUSHORT(fx);
1549END;
1550
1551BEGIN
1552END.
Note: See TracBrowser for help on using the repository browser.