' include file for qfig.bas DECLARE FUNCTION Angle! (x0!, y0!, x1!, y1!) DECLARE FUNCTION KeyIsTouched$ () DECLARE FUNCTION KeyIsTyped% () DECLARE FUNCTION Usetdata$ () DECLARE FUNCTION yesno$ () DECLARE SUB CL.R.edraw (simple%, show%) DECLARE SUB Chr.Input (a$) DECLARE SUB CopySymm () DECLARE SUB CursorDisplay (ppxx%, ppyy%) DECLARE SUB CursorMotion (keyin%) DECLARE SUB D.Circles (cx%, cy%, rad!, ratio!, sang!, eang!, clr%, thickness%, simple%, wpatt%) DECLARE SUB D.Lines (sx%, sy%, ex%, ey%, clr%, box%, thickness%, linetype%, filltype%, simple%) DECLARE SUB D.Strings (n%, clr%, simple%) DECLARE SUB D.Str1 (n%, clr%, simple%) DECLARE SUB Disp.C (sobj%, snode%) DECLARE SUB Disp.D (sobj%, snode%) DECLARE SUB DispCut () DECLARE SUB EditObject () DECLARE SUB FillPattern () DECLARE SUB G.Addnode (o%, n%, editcc%) DECLARE SUB G.Arc () DECLARE SUB G.ArrowDirec (sobj%, snode%, n%) DECLARE SUB G.Arrows () DECLARE SUB G.Arrowset (sobj%, snode%, already%) DECLARE SUB G.Box () DECLARE SUB G.Char () DECLARE SUB G.CharDisp () DECLARE SUB G.Charset (ams$, n%) DECLARE SUB G.Crcl () DECLARE SUB G.Crcl.Ellps () DECLARE SUB G.Curve (curve%, closed%) DECLARE SUB G.Ellps () DECLARE SUB G.Group () DECLARE SUB G.Group1 (i%) DECLARE SUB G.XYparam (x0%, y0%, x1%, y1%, x2%, y2%, ax!, bx!, cx!, ay!, by!, cy!) DECLARE SUB Help.Me () DECLARE SUB IO.Eepic () DECLARE SUB IO.Export () DECLARE SUB IO.File () DECLARE SUB IO.Load (ifile%) DECLARE SUB IO.Save (ifile%) DECLARE SUB KeyDisplay () DECLARE SUB KeySwitch (ksw%) DECLARE SUB Killer (i%, s%) DECLARE SUB KillObject () DECLARE SUB L.Text (ipx%, ipy%) DECLARE SUB MarkEnds (c%) DECLARE SUB Marking (c%, n%) DECLARE SUB Marking.Chk (m%, sobj%, snode%) DECLARE SUB Marking.One (c%, i%) DECLARE SUB Marking.Reg (sx%, sy%, ex%, ey%, total%) DECLARE SUB MaxMin (ppxx%, ppyy%) DECLARE SUB MoveObj (c%) DECLARE SUB MoveObject (total%, c%) DECLARE SUB Object.Max.Check () DECLARE SUB PPUT (xp, yp, markp%()) DECLARE SUB Preparation () DECLARE SUB Rotate () DECLARE SUB SetInst (ninstr%) DECLARE SUB SetObject (n%, clr%, simple%) DECLARE SUB TeX.Characters (i%, j%, ams$, kanji%, special%, script%) DECLARE SUB ptext (x%, y%, s$, c%, m%) DECLARE SUB whelp () DECLARE SUB QUIT0 () TYPE Instruction L AS STRING * 15 R AS STRING * 15 D AS STRING * 6 END TYPE COMMON SHARED /Objects/ xx(), yy(), obj%(), mobj%() COMMON SHARED /Settings/ ltp%(), ltp$(), lth$(), tlp$(), dpattern$() COMMON SHARED /Settings/ chartype$(), chartex$(), charjtex$(), chattr%() COMMON SHARED /Settings/ epitch%(), eheight(), jheight(), scrpt() COMMON SHARED /Settings/ Ins() AS Instruction COMMON SHARED /Settings/ curs%(), curs1%(), curs2%() COMMON SHARED /Settings/ mark%(), markg%(), markx%(), marky%(), kky$() COMMON SHARED /Settings/ windowx%(), windowy%(), wndwxy() COMMON SHARED /Settings/ iomessages$() COMMON SHARED pxmin%, pxmax%, pymin%, pymax% COMMON SHARED charpt%, chartype%, jpitch% COMMON SHARED px%, py%, s%, s1%, mouswitch%, func%, func1%, job%, seljob% COMMON SHARED pxo%, pyo%, hscroll%, vscroll%, margin%, help%, linesel%, wkill% COMMON SHARED xmin%, xmax%, ymin%, ymax%, row%, col%, lbut%, rbut%, woldrad% COMMON SHARED nobj%, ltype%, thick%, fill%, kswitch%, altpitch$, pi, wtext% COMMON SHARED group%, emulation%, wndwfctr%, wnode%, wspec%, wrong%, selh% COMMON SHARED scrtype%, ega%, line1%, line2%, line3%, texth%, pymax2% COMMON SHARED winpy%, inbox%, sxg%, syg% COMMON SHARED arrowhead, darrowhead, arrowdirect, arcarrowd, filler%() COMMON SHARED eepicpattern$(), tpicshade$(), tpicshade%, nocheat% COMMON SHARED interpolcurve%, interpolang% COMMON SHARED wxx1!, wxx2! CONST nobjmax% = 300 '(maximum # of objects)-1 =300 CONST nodemax% = 64 '(maximum # of nodes)-1 =64 CONST UP = &H48, LEFT = &H4B, RIGHT = &H4D, DOWN = &H50 CONST CR = &HD, SP = &H20, DEL = &H53, ESC = &H0, CLRHM = &H3E, HMCLR = &HAE CONST FILE.CHECK$ = "% Output of qfig.bas" CONST ptmm = .3515 CONST REGIONXMAX = 840, REGIONYMAX = 880 CONST msgload$ = " Now loading.... " CONST msgsave$ = " Now saving..... " CONST msgrdrw$ = " Now redrawing... " DIM xx(nobjmax%, nodemax%), yy(nobjmax%, nodemax%), obj%(nobjmax%, 6) DIM mobj%(nobjmax% / 2) DIM ltp%(3), ltp$(3), lth$(2), tlp$(1 TO 3), dpattern$(3) DIM chartype$(3), chartex$(1, 3), charjtex$(1, 1), chattr%(3, 1) DIM epitch%(3, 94), jheight(1), eheight(3), scrpt(2) DIM Ins(13) AS Instruction DIM curs%(92), curs1%(92), curs2%(92) DIM mark%(32), markg%(32), markx%(24), marky%(24) DIM kky$(1 TO 25) DIM filler%(3), eepicpattern$(1 TO 3), tpicshade$(1 TO 3) DIM windowx%(3), windowy%(3), wndwxy(3) DIM iomessages$(1 TO 7) DEF fno$ (a, b) = LTRIM$(STR$(INT(a * b))) DEF fnor$ (a, b) = LTRIM$(STR$(INT(a * b * 1000! + .5) / 1000!)) 'DEF fnor$ (a, b) = LTRIM$(STR$(INT(a * b * 1000! + .5) / 1000!)) DEF fnoo% (ob%) = obj%(ob%, 0) - INT(obj%(ob%, 0) / 100) * 100 ' end of qfig.bi