<<>> <> <> <> <> <> <> <> <> <<>> DIRECTORY Atom, CursorTypes, Imager, InputFocus, KeyMappingTypes, Rope, TIPTypes, TIPPrivate, ViewerClasses, ViewerScreenTypes, ViewersWorldClasses; ViewersWorldTypes: CEDAR DEFINITIONS = BEGIN ContextList: TYPE ~ LIST OF Imager.Context; CursorArray: TYPE = CursorTypes.CursorArray; Focus: TYPE = InputFocus.Focus; Screen: TYPE = ViewerScreenTypes.Screen; Viewer: TYPE = ViewerClasses.Viewer; Ref: TYPE = REF ViewersWorldObj; ViewersWorldObj: TYPE = RECORD [ focusTIP: TIPPrivate.TIPClient, mapping: KeyMappingTypes.Mapping, inputEnabled: BOOL ¬ FALSE, outputEnabled: BOOL ¬ FALSE, currentFocus: Focus ¬ NIL, forkNewNotifier: BOOL ¬ TRUE, <> captureProc: ViewerClasses.NotifyProc ¬ NIL, -- improved input handling for full-screen actions captureTIP: TIPTypes.TIPTable ¬ NIL, -- TIP Table associated with the capture. captureViewer: Viewer ¬ NIL, -- focus data private to the capture. width, height: NAT ¬ 0, contextPool: ARRAY Screen OF ContextList ¬ ALL[NIL], contextPoolOverflows: ARRAY Screen OF INT ¬ ALL[0], class: ViewersWorldClass, screenServerData: REF, properties: Atom.PropList ¬ NIL ]; ViewersWorldClass: TYPE = ViewersWorldClasses.ViewersWorldClass; END.