-- PROGRAM EDITOR -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
DIRECTORY
BOPPictures USING [Point],
BOPBook USING [RefBook],
Rope USING [Ref, Int];
MUMEditor: DEFINITIONS
IMPORTS Rope =
BEGIN OPEN BOPBook, BOPPictures;
CHAR: TYPE = CHARACTER;
-- Editor control codes
ConQ: CHAR = 21C;
ConW: CHAR = 27C;
ConB: CHAR = 02C;
ConF: CHAR = 06C;
ConA: CHAR = 01C;
ConE: CHAR = 05C;
ConP: CHAR = 20C;
ConN: CHAR = 16C;
MUMFont: RefBook;
EditableSource: TYPE = RECORD [First, Last: REF EditableLine];
EditableLine: TYPE = RECORD
[FirstCP, LastCP: Point,
Text: Rope.Ref,
Prev, Next: REF EditableLine];
EditPoint: TYPE = RECORD
[Line: REF EditableLine,
Col: Rope.Int];
EditSource: PROCEDURE [Src: EditableSource] RETURNS [EditableSource];
CleanSource: PROCEDURE [Src: EditableSource] RETURNS [R: Rope.Ref];
END.