<> <> <> <> DIRECTORY JaM USING [State], Rope USING [ROPE], TextNode USING [Ref]; TAPrivate: CEDAR DEFINITIONS = { ROPE: TYPE = Rope.ROPE; FileNotFound: SIGNAL; GetDocument: PROCEDURE[fileName: ROPE] RETURNS[node: TextNode.Ref, fromFile: BOOLEAN]; <> <> <> FixFileName: PROCEDURE[oldname, extension: ROPE] RETURNS [newname: ROPE]; <> NoJaMGraphicsViewer: SIGNAL; state: JaM.State; InitJaMGraphics: PROCEDURE; <> <> <<>> 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]; }.