<<>> <> <> <> <> <<>> <> <<>> DIRECTORY Feedback, IO, Rope, ViewerClasses; FeedbackOps: CEDAR DEFINITIONS = BEGIN <> Viewer: TYPE = ViewerClasses.Viewer; MsgType: TYPE = Feedback.MsgType; MsgClass: TYPE = Feedback.MsgClass; MsgRouter: TYPE = Feedback.MsgRouter; MsgHandler: TYPE = Feedback.MsgHandler; <> CreateNamedTypescript: PROC [headerText: Rope.ROPE, typescriptName: ATOM, openHeight: NAT _ 120, storing: BOOL _ FALSE] RETURNS [alreadyExists: BOOL, typescript: Viewer]; <> CreateTypescriptFromStream: PROC [stream: IO.STREAM, typescriptName: ATOM, storing: BOOL _ FALSE] RETURNS [alreadyExists: BOOL, oldStream: IO.STREAM]; <> GetTypescripts: PROC [] RETURNS [names: LIST OF ATOM]; <> GetTypescriptStream: PROC [typescriptName: ATOM] RETURNS [IO.STREAM]; <> <> <> <<>> <> messageWindow: READONLY Viewer; CreateViewersHandler: PROC [typescriptName: ATOM _ $None, label: Viewer _ NIL, blink: BOOL _ FALSE] RETURNS [MsgHandler]; <> < no output to any named typescript.>> < output goes to that named typescript, if it exists at the moment of output.>> < no output to any label.>> < output goes to the MessageWindow.>> <