RoseEvents.Mesa
Last Edited by: Spreitzer, October 18, 1985 5:37:20 pm PDT
RoseEvents: CEDAR DEFINITIONS =
BEGIN
WatcherList: TYPE = LIST OF Watcher;
Watcher: TYPE = RECORD [
Notify: NotifyProc,
watcherData: REF ANYNIL];
NotifyProc: TYPE = PROC [event: ATOM, watched, watcherData, arg: REF ANY];
AddWatcher, RemoveWatcher: PROC [event: ATOM, watcher: Watcher, watched: REF ANYNIL];
watched may be all
When watched is a non-leaf RoseWire, the registration is splayed to the appropriate leaf RoseWire(s), and the NotifyProc will be called with watched=those leaf RoseWire(s).
all: REF ANY;
Notify: PROC [event: ATOM, watched: REF ANYNIL, arg: REF ANYNIL];
watched may not be all
END.