<> <> <> <> <> <> <<>> DIRECTORY ViewerClasses USING [Viewer]; ViewerEvents: CEDAR DEFINITIONS = BEGIN Viewer: TYPE ~ ViewerClasses.Viewer; EventProc: TYPE = PROC [viewer: Viewer, event: ViewerEvent, before: BOOL] RETURNS [abort: BOOL _ FALSE]; <> <> ViewerEvent: TYPE = {save, edit, destroy, create, close, open, grow, changeColumn, setInputFocus, killInputFocus, spare1, spare2, spare3, spare4}; <> EventRegistration: TYPE = REF; RegisterEventProc: PROC [proc: EventProc, event: ViewerEvent, filter: REF ANY _ NIL, before: BOOL _ TRUE] RETURNS [EventRegistration]; <> UnRegisterEventProc: PROC [proc: EventRegistration, event: ViewerEvent]; <> ProcessEvent: PRIVATE PROC [event: ViewerEvent, viewer: Viewer, before: BOOL] RETURNS[abort: BOOL]; <> END.