DIRECTORY Buttons USING [ButtonProc], EditToolBuilder USING [BuildButton, Layout, ToNext], EditToolPrivate USING [DoList, Info], Rope USING [ROPE]; EditToolExtra2Impl: CEDAR PROGRAM IMPORTS EditToolPrivate, EditToolBuilder EXPORTS EditToolPrivate = { OPEN EditToolPrivate, EditToolBuilder; ---------------------------- BuildExtraOverflow: PUBLIC PROC [info: Info] = { { OPEN info; BuildOne: PROC [info: Layout, name: Rope.ROPE, proc: Buttons.ButtonProc] = { [] _ BuildButton[info: info, name: name, proc: proc, gapAfter: FALSE] }; BuildOne[layout, "BackSpace", BackSpace]; BuildOne[layout, "BackWord", BackWord]; BuildOne[layout, "DeleteNextChar", DeleteNextChar]; BuildOne[layout, "DeleteNextWord", DeleteNextWord]; ToNext[layout,TRUE]; BuildOne[layout, "Add( )", ParenBrackets]; BuildOne[layout, "Add< >", AngleBrackets]; BuildOne[layout, "Add{ }", CurlyBrackets]; BuildOne[layout, "Add[ ]", SquareBrackets]; BuildOne[layout, "Add\" \"", DoubleQuoteBrackets]; BuildOne[layout, "Add\' \'", SingleQuoteBrackets]; BuildOne[layout, "Add- -", DashBrackets]; BuildOne[layout, "Add ", PlaceholderBrackets]; ToNext[layout,TRUE]; BuildOne[layout, "AllCaps", AllCaps]; BuildOne[layout, "AllLower", AllLower]; BuildOne[layout, "InitialCaps", InitialCaps]; BuildOne[layout, "FirstCap", FirstCap]; ToNext[layout,TRUE]; BuildOne[layout, "MakeOctalCharacter", MakeOctalCharacter]; BuildOne[layout, "MakeControlCharacter", MakeControlCharacter]; ToNext[layout,TRUE]; BuildOne[layout, "UnMakeOctalCharacter", UnMakeOctalCharacter]; BuildOne[layout, "UnMakeControlCharacter", UnMakeControlCharacter]; ToNext[layout,TRUE]; BuildOne[layout, "Break", Break]; BuildOne[layout, "Join", Join]; BuildOne[layout, "Nest", Nest]; BuildOne[layout, "UnNest", UnNest]; ToNext[layout,TRUE]; BuildOne[layout, "CommentNode", SetComment]; BuildOne[layout, "NotCommentNode", SetNotComment]; BuildOne[layout, "ExpandAbbreviation", ExpandAbbrev]; BuildOne[layout, "MesaFormatting", SetMesaLooks]; ToNext[layout,TRUE]; BuildOne[layout, "Command 0", Command0]; BuildOne[layout, " 1", Command1]; BuildOne[layout, " 2", Command2]; BuildOne[layout, " 3", Command3]; BuildOne[layout, " 4", Command4]; BuildOne[layout, " 5", Command5]; BuildOne[layout, " 6", Command6]; BuildOne[layout, " 7", Command7]; BuildOne[layout, " 8", Command8]; BuildOne[layout, " 9", Command9]; ToNext[layout,TRUE] }}; int: PROC [i: INT] RETURNS [REF] = { RETURN [NEW[INT _ i]] }; backspace: LIST OF REF ANY = LIST[int[1],$BackSpace]; BackSpace: Buttons.ButtonProc = {DoList[backspace]}; backword: LIST OF REF ANY = LIST[int[1],$BackWord]; BackWord: Buttons.ButtonProc = {DoList[backword]}; deletenextchar: LIST OF REF ANY = LIST[int[1],$DeleteNextChar]; DeleteNextChar: Buttons.ButtonProc = {DoList[deletenextchar]}; deletenextword: LIST OF REF ANY = LIST[int[1],$DeleteNextWord]; DeleteNextWord: Buttons.ButtonProc = {DoList[deletenextword]}; parenbrackets: LIST OF REF ANY = LIST[$ParenBrackets]; ParenBrackets: Buttons.ButtonProc = {DoList[parenbrackets]}; dashbrackets: LIST OF REF ANY = LIST[$DashBrackets]; DashBrackets: Buttons.ButtonProc = {DoList[dashbrackets]}; anglebrackets: LIST OF REF ANY = LIST[$AngleBrackets]; AngleBrackets: Buttons.ButtonProc = {DoList[anglebrackets]}; doublequotebrackets: LIST OF REF ANY = LIST[$DoubleQuoteBrackets]; DoubleQuoteBrackets: Buttons.ButtonProc = {DoList[doublequotebrackets]}; singlequotebrackets: LIST OF REF ANY = LIST[$SingleQuoteBrackets]; SingleQuoteBrackets: Buttons.ButtonProc = {DoList[singlequotebrackets]}; curlybrackets: LIST OF REF ANY = LIST[$CurlyBrackets]; CurlyBrackets: Buttons.ButtonProc = {DoList[curlybrackets]}; squarebrackets: LIST OF REF ANY = LIST[$SquareBrackets]; SquareBrackets: Buttons.ButtonProc = {DoList[squarebrackets]}; placeholderbrackets: LIST OF REF ANY = LIST[$PlaceholderBrackets]; PlaceholderBrackets: Buttons.ButtonProc = {DoList[placeholderbrackets]}; allcaps: LIST OF REF ANY = LIST[$AllCaps]; AllCaps: Buttons.ButtonProc = {DoList[allcaps]}; alllower: LIST OF REF ANY = LIST[$AllLower]; AllLower: Buttons.ButtonProc = {DoList[alllower]}; initialcaps: LIST OF REF ANY = LIST[$InitialCaps]; InitialCaps: Buttons.ButtonProc = {DoList[initialcaps]}; firstcap: LIST OF REF ANY = LIST[$FirstCap]; FirstCap: Buttons.ButtonProc = {DoList[firstcap]}; makeoctalcharacter: LIST OF REF ANY = LIST[$MakeOctalCharacter]; MakeOctalCharacter: Buttons.ButtonProc = {DoList[makeoctalcharacter]}; makecontrolcharacter: LIST OF REF ANY = LIST[$MakeControlCharacter]; MakeControlCharacter: Buttons.ButtonProc = {DoList[makecontrolcharacter]}; unmakeoctalcharacter: LIST OF REF ANY = LIST[$UnMakeOctalCharacter]; UnMakeOctalCharacter: Buttons.ButtonProc = {DoList[unmakeoctalcharacter]}; unmakecontrolcharacter: LIST OF REF ANY = LIST[$UnMakeControlCharacter]; UnMakeControlCharacter: Buttons.ButtonProc = {DoList[unmakecontrolcharacter]}; expandabbrev: LIST OF REF ANY = LIST[$ExpandAbbrev]; ExpandAbbrev: Buttons.ButtonProc = {DoList[expandabbrev]}; setmesalooks: LIST OF REF ANY = LIST[$SetMesaLooks]; SetMesaLooks: Buttons.ButtonProc = {DoList[setmesalooks]}; setcomment: LIST OF REF ANY = LIST[$SetComment]; SetComment: Buttons.ButtonProc = {DoList[setcomment]}; setnotcomment: LIST OF REF ANY = LIST[$SetNotComment]; SetNotComment: Buttons.ButtonProc = {DoList[setnotcomment]}; break: LIST OF REF ANY = LIST[$Break]; Break: Buttons.ButtonProc = {DoList[break]}; join: LIST OF REF ANY = LIST[$Join]; Join: Buttons.ButtonProc = {DoList[join]}; nest: LIST OF REF ANY = LIST[$Nest]; Nest: Buttons.ButtonProc = {DoList[nest]}; unnest: LIST OF REF ANY = LIST[$UnNest]; UnNest: Buttons.ButtonProc = {DoList[unnest]}; command0: LIST OF REF ANY = LIST[$Command0]; Command0: Buttons.ButtonProc = {DoList[command0]}; command1: LIST OF REF ANY = LIST[$Command1]; Command1: Buttons.ButtonProc = {DoList[command1]}; command2: LIST OF REF ANY = LIST[$Command2]; Command2: Buttons.ButtonProc = {DoList[command2]}; command3: LIST OF REF ANY = LIST[$Command3]; Command3: Buttons.ButtonProc = {DoList[command3]}; command4: LIST OF REF ANY = LIST[$Command4]; Command4: Buttons.ButtonProc = {DoList[command4]}; command5: LIST OF REF ANY = LIST[$Command5]; Command5: Buttons.ButtonProc = {DoList[command5]}; command6: LIST OF REF ANY = LIST[$Command6]; Command6: Buttons.ButtonProc = {DoList[command6]}; command7: LIST OF REF ANY = LIST[$Command7]; Command7: Buttons.ButtonProc = {DoList[command7]}; command8: LIST OF REF ANY = LIST[$Command8]; Command8: Buttons.ButtonProc = {DoList[command8]}; command9: LIST OF REF ANY = LIST[$Command9]; Command9: Buttons.ButtonProc = {DoList[command9]}; }. .. ~EditToolExtra2Impl.mesa Edited by Paxton on November 24, 1982 8:58 am Edited by Doug Wyatt on January 13, 1984 2:46 pm ÊÖ˜šœ™Jšœ-™-Jšœ0™0—J˜šÏk ˜ Jšœœ˜Jšœœ˜4Jšœœ˜%Jšœœœ˜J˜—Jšœ ˜!Jšœ!˜(Jšœ˜J˜Jšœœ"˜(J˜JšÏc˜J˜šÏnœœœ˜1Jšœœ˜ šŸœœœ˜LJšœ?œ˜HJ˜)J˜'—˜3J˜3Jšœœ˜—˜*J˜*J˜*—˜+J˜2—˜2J˜)—˜0Jšœœ˜—˜%J˜'—˜-J˜'Jšœœ˜—˜;J˜?—Jšœœ˜˜?J˜C—šœœ˜J˜!—˜J˜—˜#Jšœœ˜—J˜,˜2J˜5J˜1Jšœœ˜—J˜(J˜!J˜!J˜!J˜!J˜!J˜!J˜!J˜!˜!Jšœœ˜J˜——Jšœœœœœœœœ ˜=J˜Jš œ œœœœœ˜5J˜4J˜Jš œ œœœœœ˜3J˜2J˜Jš œœœœœœ˜?J˜>J˜Jš œœœœœœ˜?J˜>J˜Jš œœœœœœ˜6J˜J˜Jš œœœœœœ˜BJ˜HJ˜Jš œ œœœœœ ˜*J˜0J˜Jš œ œœœœœ ˜,J˜2J˜Jš œ œœœœœ˜2J˜8J˜Jš œ œœœœœ ˜,J˜2J˜Jš œœœœœœ˜@J˜FJ˜Jš œœœœœœ˜DJ˜JJ˜Jš œœœœœœ˜DJ˜JJ˜Jš œœœœœœ˜HJ˜NJ˜Jš œœœœœœ˜4J˜:J˜Jš œœœœœœ˜4J˜:J˜Jš œ œœœœœ˜0J˜6J˜Jš œœœœœœ˜6J˜