DIRECTORY TextNode USING [Ref], TEditDocument USING [Selection, TEditDocumentData], UndoEvent USING [Ref], ViewerClasses USING [Viewer]; TEditInput: CEDAR DEFINITIONS = BEGIN interpreterNesting: INTEGER; currentEvent: UndoEvent.Ref; -- used by anyone who needs to save info for Undo/Cancel EditState: TYPE = { reset, -- no edit specified abort, -- edit aborted tolimbo, -- delete primary toprimary, -- copy/move secondary selection to/onto primary tosecondary, -- copy/move primary to/onto secondary toboth -- transpose primary and secondary }; editState: EditState; repeatList: LIST OF REF ANY; chars: REF TEXT; -- buffer for typein charsClosed: BOOL; charsUsed: BOOL; closeEvent: BOOL; CloseEvent: PROC = INLINE { closeEvent _ TRUE }; CurrentEvent: PROC RETURNS [UndoEvent.Ref] = INLINE { RETURN [currentEvent] }; CloseEventNow: PROC; CommandProc: TYPE = PROC [viewer: ViewerClasses.Viewer _ NIL] RETURNS [recordAtom: BOOL _ TRUE, quit: BOOL _ FALSE]; Register: PROC [name: ATOM, proc: CommandProc, before: BOOL _ TRUE]; UnRegister: PROC [name: ATOM, proc: CommandProc]; IsRegistered: PROC [name: ATOM, proc: CommandProc] RETURNS [BOOLEAN]; RecordInt: PROC [i: LONG INTEGER]; RecordChar: PROC [c: CHARACTER]; RecordRef: PROC [ref: REF ANY]; GetRepeatSequence: PROC RETURNS [params: LIST OF REF ANY]; ComIndex: TYPE = [0..9]; SetCommand: PROC [num: ComIndex, params: LIST OF REF ANY]; GetCommand: PROC [num: ComIndex] RETURNS [params: LIST OF REF ANY]; InterpInput: PROC [viewer: ViewerClasses.Viewer, params: LIST OF REF ANY, increaseNestingCount: BOOL _ TRUE]; Interpret: PROC [viewer: ViewerClasses.Viewer, params: LIST OF REF ANY]; DontDoIt: SIGNAL; -- raised if user category is too low BadMouse: SIGNAL; -- raised if mouse "color" is wrong InterpretAtom: PROC [viewer: ViewerClasses.Viewer, atom: ATOM]; ResetInputStuff: PROC ; SaveCoords: PROC [x,y: INTEGER]; ReadTipTables: PROC; CheckSelection: PROC [sel: TEditDocument.Selection] RETURNS [BOOLEAN]; FreeTree: PROC [root: TextNode.Ref]; AllLevels: CommandProc; FirstLevelOnly: CommandProc; MoreLevels: CommandProc; FewerLevels: CommandProc; AllLines: CommandProc; FirstLineOnly: CommandProc; MoreLines: CommandProc; FewerLines: CommandProc; MaxLevelShown: PROC [tdd: TEditDocument.TEditDocumentData] RETURNS [level: INTEGER]; MakePointSelection: CommandProc; Normalize: CommandProc; Cancel: CommandProc; Repeat: CommandProc; RestoreSelectionA: CommandProc; SaveSelectionA: CommandProc; RestoreSelectionB: CommandProc; SaveSelectionB: CommandProc; END. φTEditInput.mesa; Edited by Paxton on October 29, 1982 9:58 am by Plass on October 11, 1983 10:00 am If before is true, proc goes at front of list. Else goes at end of list. Remove the proc from the list for the atom. as if input from TIP Κs˜šœ=™=J™%—šΟk ˜ Jšœ œ˜Jšœœ ˜3Jšœ œ˜Jšœœ ˜J˜—šœ œ˜%J˜—šœœ˜J˜—šœΟc8˜UJ˜—šœ œ˜Jšœž˜Jšœž˜Jšœ ž˜Jšœ ž0˜;Jšœ ž&˜3Jšœž"˜*J˜J˜—˜J˜—š œ œœœœ˜J˜—šœœœž˜%J˜—Jšœ œ˜Jšœ œ˜šœ œ˜J˜—šΟn œœœœ˜0J˜—š Ÿ œœœœœ˜NJ˜—šŸ œœ˜J˜—procšŸ œœœ!œ˜=Jš œœœœœ˜6J˜—š Ÿœœœœœ˜DK™IJ˜—šŸ œœœ˜1K™+J˜—š Ÿ œœœœœ˜EK˜—šŸ œœœœ˜"J˜—šŸ œœ œ˜ J˜—šŸ œœœœ˜J˜—šŸœœœ œœœœ˜:J˜—šœ œ ˜J˜—š Ÿ œœœœœœ˜:J˜—šŸ œœœ œœœœ˜CJ˜—š Ÿ œœ(œœœœ˜IJšœœœ˜#J˜—š Ÿ œœ(œœœœ˜HJ˜—šœ œž%˜7J˜—šœ œž#˜5J˜—šŸ œœ&œ˜?Jšœ™J˜—šŸœœ˜J˜—šŸ œœœ˜ J˜—šŸ œœ˜J˜—šŸœœ œœ˜FJ˜—šŸœœ˜$J˜—JšŸ œ˜JšŸœ˜JšŸ œ˜JšŸ œ˜J˜JšŸœ˜JšŸ œ˜JšŸ œ˜šŸ œ˜J˜—JšŸ œœ(œ œ˜TJšŸœ˜ šŸ œ˜J˜—JšŸœ˜JšŸœ˜JšŸœ˜JšŸœ˜JšŸœ˜šŸœ˜J˜—Jšœ˜J˜—…— ϊc