-- TAPrivate.mesa
-- Rick Beach, July 5, 1982 11:44 am
-- Maureen Stone October 19, 1982 5:28 pm

DIRECTORY
 JaMInternal USING [Frame],
 Rope USING [ROPE],
 TextNode USING [Ref];

TAPrivate: DEFINITIONS = {

ROPE: TYPE = Rope.ROPE;

FileNotFound: SIGNAL;

GetDocument: PROCEDURE[fileName: ROPE] RETURNS[node: TextNode.Ref, fromFile: BOOLEAN];
 -- returns the root of the Tioga document
 -- if a viewer exists with that file, then it is used
 -- SIGNALs FileNotFound

FixFileName: PROCEDURE[oldname, extension: ROPE] RETURNS [newname: ROPE];
 -- forces the file name, oldname, to have the extension if no period is found

NoJaMGraphicsViewer: SIGNAL;

InitJaMGraphics: PROCEDURE;
 -- initialize JaMGraphics to ensure that TJaMGraphicsPackage is running and
 -- a JaM typescript exists

jaMFrame: JaMInternal.Frame;

PushDC: PROCEDURE;
PopDC: PROCEDURE;
PushReal: PROCEDURE[r: REAL];
DrawArea: PROCEDURE;
DrawPath: PROCEDURE;
OutlinePath: PROCEDURE;
DrawBox: PROCEDURE;
SetCP: PROCEDURE;
Translate: PROCEDURE;
RoundPen: PROCEDURE;
ItalicPen: PROCEDURE;
RectangularPen: PROCEDURE;
EllipticalPen: PROCEDURE;
ShadowPen: PROCEDURE;
ShadowPath: PROCEDURE;
DrawImage: PROCEDURE[imageFileName: Rope.ROPE];
PushString: PROCEDURE[node: TextNode.Ref];
DrawText: PROCEDURE;
SetHSV: PROCEDURE[h, s, v: REAL];


ExecuteNode: PROCEDURE[node: TextNode.Ref];

TextureRef: TYPE = REF TextureRec;
TextureRec: TYPE = RECORD [
 next: TextureRef,
 h, s, b: REAL,
 texture: CARDINAL];

}.