home *** CD-ROM | disk | FTP | other *** search
/ OS/2 Shareware BBS: 10 Tools / 10-Tools.zip / mod201j.zip / modula2.exe / os2api / gpipolyg.def < prev    next >
Text File  |  1994-05-03  |  2KB  |  60 lines

  1. DEFINITION MODULE GPIPOLYGON;
  2.  
  3. (************************************************************************
  4.   OS/2 2.0 interface for Presentation Manager
  5.            GPI Polygons.
  6.  
  7.   Copyright (c) 1992 by Juergen Neuhoff
  8. *************************************************************************)
  9.  
  10. (*$XL+       Modula-2 language extensions: '_' allowed for symbol names *)
  11. (*$CDECL+    C-style procedures                                         *)
  12. (*$A         default alignment for record fields                        *)
  13.  
  14. FROM   OS2DEF  IMPORT TYPEPREFIX, PPOINTL, HPS;
  15.  
  16. TYPE
  17.   POLYGON                 = RECORD   (* plygn *)
  18.     CASE                    : TYPEPREFIX OF
  19.     | TRUE                  :
  20.       ulPoints              : LONGCARD;
  21.       aPointl               : PPOINTL;
  22.     | FALSE                 :
  23.       PointCount            : LONGCARD;
  24.       PointArray            : PPOINTL;
  25.     END;                    END;
  26.   PPOLYGON                = POINTER TO POLYGON;
  27.  
  28. TYPE
  29.   POLYSET                 = RECORD   (* plyst *)
  30.     CASE                    : TYPEPREFIX OF
  31.     | TRUE                  :
  32.       ulPolys               : LONGCARD;
  33.       aPolygon              : ARRAY [0..0] OF POLYGON;
  34.     | FALSE                 :
  35.       PolygonCount          : LONGCARD;
  36.       PolygonArray          : ARRAY [0..0] OF POLYGON;
  37.     END;                    END;
  38.   PPOLYSET                = POINTER TO POLYSET;
  39.  
  40. CONST (* control flags used by GpiPolygons *)
  41.   POLYGON_NOBOUNDARY      =     0;
  42.   POLYGON_BOUNDARY        = 0001H;
  43.   POLYGON_ALTERNATE       =     0;
  44.   POLYGON_WINDING         = 0002H;
  45.   POLYGON_EXCL            =     0;
  46.   POLYGON_INCL            = 0008H;
  47.  
  48.  
  49. (*** default functions *)
  50.  
  51. PROCEDURE GpiPolygons
  52. ( PresSpaceHandle         : HPS;
  53.   Count                   : LONGCARD;
  54.   VAR Polygons            : ARRAY OF POLYGON;
  55.   Options                 : LONGCARD;
  56.   Model                   : LONGCARD
  57. )                         : LONGINT;
  58.  
  59. END GPIPOLYGON.
  60.