CommanderRegistry.mesa
Copyright Ó 1990, 1991 by Xerox Corporation. All rights reserved.
Swinehart, December 10, 1990 11:49 am PST
Michael Plass, February 21, 1991 2:02 am PST
This interface allows for the registration of command and property lookup mechanisms that are different from the standard ones.
DIRECTORY
Commander USING [ CommandProcHandle, EnumerateAction, Handle ],
Prop USING [ PropList ],
Rope USING [ ROPE ];
CommanderRegistry: CEDAR DEFINITIONS ~ {
OPEN Prop, Rope;
LookupProc: TYPE ~ PROC [key: ROPE] RETURNS [Commander.CommandProcHandle];
EnumerateProc: TYPE ~ PROC [matchProc: Commander.EnumerateAction]
RETURNS [key: ROPE, procData: Commander.CommandProcHandle];
EnumPatternProc: TYPE ~ PROC [pattern: ROPE, matchProc: Commander.EnumerateAction]
RETURNS [key: ROPE, procData: Commander.CommandProcHandle];
LookupProp: TYPE ~ PROC [cmd: Commander.Handle, key: REF] RETURNS [value: REF];
ChangeProc: TYPE =
PROC [
oldLk: PropList --OF REF LookupProc--,
oldEn: PropList --OF REF EnumerateProc--,
oldEnP: PropList --OF REF EnumPatternProc--,
oldLkPrp: PropList --OF REF LookupProp--]
RETURNS [
newLk: PropList --OF REF LookupProc--,
newEn: PropList --OF REF EnumerateProc--,
newEnP: PropList --OF REF EnumPatternProc--,
newLkPrp: PropList --OF REF LookupProp--];
ChangeRegistry: PROC [change: ChangeProc];
EnumeratePattern: EnumPatternProc;
GetProp: LookupProp;
}.