DIRECTORY TextNode USING [Ref], TEditDocument USING [Selection, TEditDocumentData], UndoEvent USING [Event], ViewerClasses USING [Viewer]; TEditInput: CEDAR DEFINITIONS = BEGIN interpreterNesting: INTEGER; interrupt: REF BOOL; currentEvent: UndoEvent.Event; 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, charsUsed, closeEvent: BOOL; CloseEvent: PROC = INLINE { closeEvent _ TRUE }; CurrentEvent: PROC RETURNS [UndoEvent.Event] = 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 [BOOL]; RecordInt: PROC [i: LONG INTEGER]; RecordChar: PROC [c: CHAR]; 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 [BOOL]; FreeTree: PROC [root: TextNode.Ref]; AllLevels: CommandProc; FirstLevelOnly: CommandProc; MoreLevels: CommandProc; FewerLevels: 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 Copyright Σ 1985, 1986, 1988 by Xerox Corporation. All rights reserved. Edited by Paxton on October 29, 1982 9:58 am Doug Wyatt, February 17, 1988 5:28:04 pm PST Set by EditAbort, reset and tested by long running operations such as searches. used by anyone who needs to save info for Undo/Cancel 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 ΚP˜codešœ™KšœH™HKšœ,™,K™,—K˜šΟk ˜ Kšœ œ˜Kšœœ ˜3Kšœ œ ˜Kšœœ ˜—K˜KšΠbl œœ ˜Kšœ˜K˜Kšœœ˜K˜šœ œœ˜K™OK™—šœ˜Kšœ5™5—K˜šœ œ˜KšœΟc˜KšœŸ˜Kšœ Ÿ˜Kšœ Ÿ0˜;Kšœ Ÿ&˜3KšœŸ"˜)K˜K˜—K˜K˜Kš œ œœœœ˜K˜KšœœœŸ˜%K˜Kšœ$œ˜)K˜KšΟn œœœœ˜0K˜Kš   œœœœœ˜PK˜Kš  œœ˜K˜š  œœœ!œ˜=Kš œœœœœ˜6K˜—š  œœœœœ˜DK™I—K˜š  œœœ˜1K™+K˜—Kš   œœœœœ˜BK˜Kš  œœœœ˜"K˜Kš  œœœ˜K˜Kš  œœœœ˜K˜Kš œœœ œœœœ˜:K˜Kšœ œ ˜K˜Kš   œœœœœœ˜:K˜Kš  œœœ œœœœ˜CK˜š  œœ(œœœœœœ˜nK˜—Kš   œœ(œœœœ˜HK˜Kš œœŸ%˜7K˜Kš œœŸ#˜5K˜š  œœ&œ˜?Kšœ™K˜—Kš œœ˜K˜Kš  œœœ˜ K˜Kš  œœ˜K˜Kš œœ œœ˜CK˜Kš œœ˜$K˜Kš  œ˜Kš œ˜Kš  œ˜Kš  œ˜K˜Kš  œœ(œ œ˜TK˜Kš œ˜ Kš  œ˜K˜Kš œ˜Kš œ˜Kš œ˜Kš œ˜Kš œ˜Kš œ˜K˜Kšœ˜—…— ^z