|
|
C C fgraph.fi - declare constants and functions for graphics library C C Copyright (c) 1987-1993 Microsoft Corporation. All rights reserved. C C Purpose: C This file declares the graphics library functions and C the manifest constants that are used with them. C
$NOTRUNCATE $NOTSTRICT
C User-visible declarations for FORTRAN Graphics Library
INTERFACE TO FUNCTION arc(x1,y1,x2,y2,x3,y3,x4,y4) INTEGER*2 arc[FAR,C,ALIAS:"__arc"],x1,y1,x2,y2,x3,y3,x4,y4 END
INTERFACE TO FUNCTION arc_w(wx1,wy1,wx2,wy2,wx3,wy3,wx4,wy4) INTEGER*2 arc_w[FAR,C,ALIAS:"__arc_w"] DOUBLE PRECISION wx1,wy1,wx2,wy2,wx3,wy3,wx4,wy4 END
INTERFACE TO FUNCTION getarcinfo(lpstart,lpend,lppaint) INTEGER*2 getarcinfo[FAR,C,ALIAS:"__getarcinfo"] STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/lpstart[FAR,REFERENCE] RECORD/xycoord/lpend[FAR,REFERENCE] RECORD/xycoord/lppaint[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + clearscreen[FAR,C,ALIAS:"__clearscreen"](area) INTEGER*2 area END
INTERFACE TO FUNCTION displaycursor(toggle) INTEGER*2 displaycursor[FAR,C,ALIAS:"__displaycursor"],toggle END
INTERFACE TO FUNCTION ellipse(control,x1,y1,x2,y2) INTEGER*2 ellipse[FAR,C,ALIAS:"__ellipse"],control,x1,y1,x2,y2 END
INTERFACE TO FUNCTION ellipse_w(control,wx1,wy1,wx2,wy2) INTEGER*2 ellipse_w[FAR,C,ALIAS:"__ellipse_w"],control DOUBLE PRECISION wx1,wy1,wx2,wy2 END
INTERFACE TO FUNCTION floodfill(x,y,boundary) INTEGER*2 floodfill[FAR,C,ALIAS:"__floodfill"],x,y,boundary END
INTERFACE TO FUNCTION floodfill_w(wx1,wy1,boundary) INTEGER*2 floodfill_w[FAR,C,ALIAS:"__floodfill_w"],boundary DOUBLE PRECISION wx1,wy1 END
INTERFACE TO FUNCTION getactivepage() INTEGER*2 getactivepage[FAR,C,ALIAS:"__getactivepage"] END
INTERFACE TO FUNCTION getbkcolor() INTEGER*4 getbkcolor[FAR,C,ALIAS:"__getbkcolor"] END
INTERFACE TO FUNCTION getcolor() INTEGER*2 getcolor[FAR,C,ALIAS:"__getcolor"] END
INTERFACE TO SUBROUTINE + getcurrentposition[FAR,C,ALIAS:"__f_getcurrentposition"](s) STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + getcurrentposition_w[FAR,C,ALIAS:"__f_getcurrentposition_wxy"](s) STRUCTURE/wxycoord/ DOUBLE PRECISION wx DOUBLE PRECISION wy END STRUCTURE RECORD/wxycoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + getfillmask[FAR,C,ALIAS:"__getfillmask"](mask) INTEGER*1 mask[FAR,REFERENCE](8) END
INTERFACE TO SUBROUTINE + getimage[FAR,C,ALIAS:"__getimage"](x1,y1,x2,y2,image) INTEGER*2 x1,y1,x2,y2 INTEGER*1 image[FAR,REFERENCE](*) END
INTERFACE TO SUBROUTINE + getimage_w[FAR,C,ALIAS:"__getimage_w"](wx1,wy1,wx2,wy2,image) DOUBLE PRECISION wx1,wy1,wx2,wy2 INTEGER*1 image[FAR,REFERENCE](*) END
INTERFACE TO FUNCTION getlinestyle() INTEGER*2 getlinestyle[FAR,C,ALIAS:"__getlinestyle"] END
INTERFACE TO SUBROUTINE + getphyscoord[FAR,C,ALIAS:"__f_getphyscoord"](x,y,s) INTEGER*2 x,y STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/s[FAR,REFERENCE] END
INTERFACE TO FUNCTION getpixel(x,y) INTEGER*2 getpixel[FAR,C,ALIAS:"__getpixel"],x,y END
INTERFACE TO FUNCTION getpixel_w(wx,wy) INTEGER*2 getpixel_w[FAR,C,ALIAS:"__getpixel_w"] DOUBLE PRECISION wx,wy END
INTERFACE TO FUNCTION gettextcolor() INTEGER*2 gettextcolor[FAR,C,ALIAS:"__gettextcolor"] END
INTERFACE TO FUNCTION gettextcursor() INTEGER*2 gettextcursor[FAR,C,ALIAS:"__gettextcursor"] END
INTERFACE TO SUBROUTINE + gettextposition[FAR,C,ALIAS:"__f_gettextposition"](s) STRUCTURE/rccoord/ INTEGER*2 row INTEGER*2 col END STRUCTURE RECORD/rccoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + gettextwindow[FAR,C,ALIAS:"__gettextwindow"](r1,c1,r2,c2) INTEGER*2 r1[FAR,REFERENCE],c1[FAR,REFERENCE] INTEGER*2 r2[FAR,REFERENCE],c2[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + getvideoconfig[FAR,C,ALIAS:"__getvideoconfig"](s) STRUCTURE/videoconfig/ INTEGER*2 numxpixels ! number of pixels on X axis INTEGER*2 numypixels ! number of pixels on Y axis INTEGER*2 numtextcols ! number of text columns available INTEGER*2 numtextrows ! number of text rows available INTEGER*2 numcolors ! number of actual colors INTEGER*2 bitsperpixel ! number of bits per pixel INTEGER*2 numvideopages ! number of available video pages INTEGER*2 mode ! current video mode INTEGER*2 adapter ! active display adapter INTEGER*2 monitor ! active display monitor INTEGER*2 memory ! adapter video memory in K bytes END STRUCTURE RECORD/videoconfig/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + getviewcoord[FAR,C,ALIAS:"__f_getviewcoord"](x,y,s) INTEGER*2 x,y STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + getviewcoord_w[FAR,C,ALIAS:"__f_getviewcoord_w"](wx,wy,s) DOUBLE PRECISION wx,wy STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/s[FAR,REFERENCE] END
INTERFACE TO FUNCTION getvisualpage() INTEGER*2 getvisualpage[FAR,C,ALIAS:"__getvisualpage"] END
INTERFACE TO SUBROUTINE + getwindowcoord[FAR,C,ALIAS:"__f_getwindowcoord"](x,y,s) INTEGER*2 x,y STRUCTURE/wxycoord/ DOUBLE PRECISION wx DOUBLE PRECISION wy END STRUCTURE RECORD/wxycoord/s[FAR,REFERENCE] END
INTERFACE TO FUNCTION getwritemode() INTEGER*2 getwritemode[FAR,C,ALIAS:"__getwritemode"] END
INTERFACE TO FUNCTION grstatus() INTEGER*2 grstatus[FAR,C,ALIAS:"__grstatus"] END
INTERFACE TO FUNCTION imagesize(x1,y1,x2,y2) INTEGER*4 imagesize[FAR,C,ALIAS:"__imagesize"] INTEGER*2 x1,y1,x2,y2 END
INTERFACE TO FUNCTION imagesize_w(wx1,wy1,wx2,wy2) INTEGER*4 imagesize_w[FAR,C,ALIAS:"__imagesize_w"] DOUBLE PRECISION wx1,wy1,wx2,wy2 END
INTERFACE TO FUNCTION lineto(x,y) INTEGER*2 lineto[FAR,C,ALIAS:"__lineto"],x,y END
INTERFACE TO FUNCTION lineto_w(wx,wy) INTEGER*2 lineto_w[FAR,C,ALIAS:"__lineto_w"] DOUBLE PRECISION wx,wy END
INTERFACE TO SUBROUTINE + moveto[FAR,C,ALIAS:"__f_moveto"](x,y,s) INTEGER*2 x,y STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + moveto_w[FAR,C,ALIAS:"__f_moveto_w"](wx,wy,s) DOUBLE PRECISION wx,wy STRUCTURE/wxycoord/ DOUBLE PRECISION wx DOUBLE PRECISION wy END STRUCTURE RECORD/wxycoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + outtext[FAR,C,ALIAS:"__f_outtext"](text) CHARACTER*(*) text[FAR,REFERENCE] END
INTERFACE TO FUNCTION pie(i,x1,y1,x2,y2,x3,y3,x4,y4) INTEGER*2 pie[FAR,C,ALIAS:"__pie"],i,x1,y1,x2,y2,x3,y3,x4,y4 END
INTERFACE TO FUNCTION pie_w(i,wx1,wy1,wx2,wy2,wx3,wy3,wx4,wy4) INTEGER*2 pie_w[FAR,C,ALIAS:"__pie_w"],i DOUBLE PRECISION wx1,wy1,wx2,wy2,wx3,wy3,wx4,wy4 END
INTERFACE TO FUNCTION polygon(control,lppoints,cpoints) INTEGER*2 polygon[FAR,C,ALIAS:"__polygon"],control,cpoints STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/lppoints[FAR,REFERENCE](*) END
INTERFACE TO FUNCTION polygon_w(control,lppoints,cpoints) INTEGER*2 polygon_w[FAR,C,ALIAS:"__polygon_w"],control,cpoints STRUCTURE/wxycoord/ DOUBLE PRECISION wx DOUBLE PRECISION wy END STRUCTURE RECORD/wxycoord/lppoints[FAR,REFERENCE](*) END
INTERFACE TO SUBROUTINE + putimage[FAR,C,ALIAS:"__putimage"](x,y,image,action) INTEGER*2 x,y,action INTEGER*1 image[FAR,REFERENCE](*) END
INTERFACE TO SUBROUTINE + putimage_w[FAR,C,ALIAS:"__putimage_w"](wx,wy,image,action) DOUBLE PRECISION wx,wy INTEGER*1 image[FAR,REFERENCE](*) INTEGER*2 action END
INTERFACE TO FUNCTION rectangle(control,x1,y1,x2,y2) INTEGER*2 rectangle[FAR,C,ALIAS:"__rectangle"] INTEGER*2 control,x1,y1,x2,y2 END
INTERFACE TO FUNCTION rectangle_w(control,wx1,wy1,wx2,wy2) INTEGER*2 rectangle_w[FAR,C,ALIAS:"__rectangle_w"],control DOUBLE PRECISION wx1,wy1,wx2,wy2 END
INTERFACE TO FUNCTION remappalette(index,color) INTEGER*4 remappalette[FAR,C,ALIAS:"__remappalette"],color INTEGER*2 index END
INTERFACE TO FUNCTION remapallpalette(colors) INTEGER*2 remapallpalette[FAR,C,ALIAS:"__remapallpalette"] INTEGER*4 colors[FAR,REFERENCE](*) END
INTERFACE TO SUBROUTINE + scrolltextwindow[FAR,C,ALIAS:"__scrolltextwindow"](rows) INTEGER*2 rows END
INTERFACE TO FUNCTION selectpalette(number) INTEGER*2 selectpalette[FAR,C,ALIAS:"__selectpalette"],number END
INTERFACE TO FUNCTION setactivepage(page) INTEGER*2 setactivepage[FAR,C,ALIAS:"__setactivepage"],page END
INTERFACE TO FUNCTION setbkcolor(color) INTEGER*4 setbkcolor[FAR,C,ALIAS:"__setbkcolor"],color END
INTERFACE TO SUBROUTINE + setcliprgn[FAR,C,ALIAS:"__setcliprgn"](x1,y1,x2,y2) INTEGER*2 x1,y1,x2,y2 END
INTERFACE TO FUNCTION setcolor(color) INTEGER*2 setcolor[FAR,C,ALIAS:"__setcolor"] INTEGER*2 color END
INTERFACE TO SUBROUTINE + setfillmask[FAR,C,ALIAS:"__setfillmask"](mask) INTEGER*1 mask[FAR,REFERENCE](8) END
INTERFACE TO SUBROUTINE + setlinestyle[FAR,C,ALIAS:"__setlinestyle"](mask) INTEGER*2 mask END
INTERFACE TO FUNCTION setpixel(x,y) INTEGER*2 setpixel[FAR,C,ALIAS:"__setpixel"],x,y END
INTERFACE TO FUNCTION setpixel_w(wx,wy) INTEGER*2 setpixel_w[FAR,C,ALIAS:"__setpixel_w"] DOUBLE PRECISION wx,wy END
INTERFACE TO FUNCTION settextcolor(index) INTEGER*2 settextcolor[FAR,C,ALIAS:"__settextcolor"],index END
INTERFACE TO FUNCTION settextcursor(attr) INTEGER*2 settextcursor[FAR,C,ALIAS:"__settextcursor"],attr END
INTERFACE TO SUBROUTINE + settextposition[FAR,C,ALIAS:"__f_settextposition"](row,col,s) INTEGER*2 row,col STRUCTURE/rccoord/ INTEGER*2 row INTEGER*2 col END STRUCTURE RECORD/rccoord/s[FAR,REFERENCE] END
INTERFACE TO FUNCTION settextrows(rows) INTEGER*2 settextrows[FAR,C,ALIAS:"__settextrows"],rows END
INTERFACE TO SUBROUTINE + settextwindow[FAR,C,ALIAS:"__settextwindow"](r1,c1,r2,c2) INTEGER*2 r1,c1,r2,c2 END
INTERFACE TO FUNCTION setvideomode(mode) INTEGER*2 setvideomode[FAR,C,ALIAS:"__setvideomode"],mode END
INTERFACE TO FUNCTION setvideomoderows(mode,rows) INTEGER*2 setvideomoderows[FAR,C,ALIAS:"__setvideomoderows"] INTEGER*2 mode,rows END
INTERFACE TO SUBROUTINE + setvieworg[FAR,C,ALIAS:"__f_setvieworg"](x,y,s) INTEGER*2 x,y STRUCTURE/xycoord/ INTEGER*2 xcoord INTEGER*2 ycoord END STRUCTURE RECORD/xycoord/s[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + setviewport[FAR,C,ALIAS:"__setviewport"](x1,y1,x2,y2) INTEGER*2 x1,y1,x2,y2 END
INTERFACE TO FUNCTION setvisualpage(page) INTEGER*2 setvisualpage[FAR,C,ALIAS:"__setvisualpage"],page END
INTERFACE TO FUNCTION setwindow(finvert,wx1,wy1,wx2,wy2) INTEGER*2 setwindow[FAR,C,ALIAS:"__setwindow"] LOGICAL*2 finvert DOUBLE PRECISION wx1,wy1,wx2,wy2 END
INTERFACE TO FUNCTION setwritemode(wmode) INTEGER*2 setwritemode[FAR,C,ALIAS:"__setwritemode"],wmode END
INTERFACE TO FUNCTION wrapon(option) INTEGER*2 wrapon[FAR,C,ALIAS:"__wrapon"],option END
C FONTS
INTERFACE TO FUNCTION getfontinfo(fi) INTEGER*2 getfontinfo[FAR,C,ALIAS:"__f_getfontinfo"] STRUCTURE/fontinfo/ INTEGER*2 type ! b0 set = vector,clear = bit map INTEGER*2 ascent ! pix dist from top to baseline INTEGER*2 pixwidth ! character width in pixels, 0=prop INTEGER*2 pixheight ! character height in pixels INTEGER*2 avgwidth ! average character width in pixels CHARACTER*81 filename ! file name including path CHARACTER*32 facename ! font name END STRUCTURE RECORD/fontinfo/fi[FAR,REFERENCE] END
INTERFACE TO FUNCTION getgtextextent(text) INTEGER*2 getgtextextent[FAR,C,ALIAS:"__f_getgtextextent"] CHARACTER*(*) text[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + getgtextvector[FAR,C,ALIAS:"__f_getgtextvector"](x,y) INTEGER*2 x[FAR,REFERENCE],y[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + outgtext[FAR,C,ALIAS:"__f_outgtext"](text) CHARACTER*(*) text[FAR,REFERENCE] END
INTERFACE TO FUNCTION registerfonts(filename) INTEGER*2 registerfonts[FAR,C,ALIAS:"__f_registerfonts"] CHARACTER*(*) filename[FAR,REFERENCE] END
INTERFACE TO FUNCTION setfont(options) INTEGER*2 setfont[FAR,C,ALIAS:"__f_setfont"] CHARACTER*(*) options[FAR,REFERENCE] END
INTERFACE TO SUBROUTINE + setgtextvector[FAR,C,ALIAS:"__setgtextvector"](x,y) INTEGER*2 x,y END
INTERFACE TO SUBROUTINE + unregisterfonts[FAR,C,ALIAS:"__unregisterfonts"]() END
C QuickWin Graphics API's INTERFACE TO FUNCTION INCHARQQ() INTEGER*2 INCHARQQ[FAR,C,ALIAS:"__inchar"] END
INTERFACE TO FUNCTION WGOPENQQ(name) INTEGER*2 WGOPENQQ[FAR,C,ALIAS:"__wgopen"] CHARACTER*(*) name[REFERENCE] END
INTERFACE TO FUNCTION WGCLOSEQQ(handle) INTEGER*2 WGCLOSEQQ[FAR,C,ALIAS:"__wgclose"], handle END
INTERFACE TO FUNCTION WGSETACTIVEQQ(handle) INTEGER*2 WGSETACTIVEQQ[FAR,C,ALIAS:"__wgsetactive"], handle END INTERFACE TO FUNCTION WGGETACTIVEQQ() INTEGER*2 WGGETACTIVEQQ[FAR,C,ALIAS:"__wggetactive"] END
|