DIRECTORY CD USING [Technology], CDSequencer USING [Command], Rope USING [ROPE]; CDMenus: CEDAR DEFINITIONS = BEGIN CreateMenu: PROC [label: Rope.ROPE_NIL, globalKey: ATOM_NIL] RETURNS [menu: REF]; GetMenu: PROC [globalKey: ATOM] RETURNS [menu: REF]; CreateEntry: PROC [menu: REF, entry: Rope.ROPE_NIL, key: REF]; CallMenu: PROC [menu: REF] RETURNS [key: REF]; CallCommand: PROC [menu: REF, comm: CDSequencer.Command]; ImplementMenuCommand: PROC[a: ATOM, menu: REF, technology: CD.Technology_NIL]; END. CDMenus.mesa Copyright c 1984 by Xerox Corporation. All rights reserved. Created by: Ch. Jacobi, September 18, 1984 3:24:53 pm PDT Last Edited by: Ch. Jacobi, May 29, 1985 11:41:04 am PDT --NIL if not found --menu: a menu => use menu -- an ATOM => fetch for menu with globalKey --key: a menu => use menu recursively -- an ATOM => return as result (does NOT search for a menu) / use CDSequencer -- others => return as result / error message --returned key will not be of type menu --the atom will be changed to the menu atom Ê‹˜šœ ™ Jšœ Ïmœ1™Jšœ™Jšœ-™-Jšœ%™%JšœO™OJšœ/™/—J˜š  œžœžœžœžœ˜.Jšœ'™'—J˜š  œžœžœ˜9Jšœ+™+—J˜Jš  œžœžœžœžœ žœ˜OJ˜Jšžœ˜J˜J˜J˜—…— ³