DIRECTORY IO, MessageWindow, Rope, SVError; SVErrorImpl: CEDAR PROGRAM IMPORTS IO, MessageWindow EXPORTS SVError = BEGIN gErrorStream: IO.STREAM; SetErrorStream: PUBLIC PROC [errorStream: IO.STREAM] = { gErrorStream _ errorStream; }; GetErrorStream: PUBLIC PROC [] RETURNS [errorStream: IO.STREAM] = { RETURN[gErrorStream]; }; Append: PUBLIC PROC [msg: Rope.ROPE, clearHerald: BOOL _ FALSE, addCR: BOOL _ FALSE] = { MessageWindow.Append[msg, clearHerald]; gErrorStream.PutF[msg]; IF addCR THEN gErrorStream.PutChar[IO.CR]; }; AppendHerald: PUBLIC PROC [msg: Rope.ROPE, clearHerald: BOOL] = { MessageWindow.Append[msg, clearHerald]; }; AppendTypescript: PUBLIC PROC [msg: Rope.ROPE] = { gErrorStream.PutF[msg]; gErrorStream.PutChar[IO.CR]; }; Blink: PUBLIC PROC [] = { MessageWindow.Blink[]; }; NotYetImplemented: PUBLIC SIGNAL = CODE; END. βFile: SVErrorImpl.mesa Last edited by: Eric Bier on July 3, 1984 5:27:31 pm PDT Contents: Routines for handling user error messages throughout Solidviews. (It's never too late to try to do it right. Global Variables ΚΨ˜Ihead™J™8J™wJ™šΟk ˜ Jšœ˜Jšœ˜J˜J˜J˜—šœ œ˜Jšœœ˜Jšœ ˜J˜—š˜J˜J™J™Jšœœœ˜J˜—J˜š Οnœœœœœ˜8Jšœ˜J˜J˜—š žœœœœœœ˜CJšœ˜J˜—J˜šžœœœ œœœ œœ˜XJšœ'˜'Jšœ˜Jšœœœœ˜*J˜J˜—š ž œœœ œœ˜AJšœ'˜'J˜J˜—šžœœœ œ˜2Jšœ˜Jšœœœ˜J˜J˜—šžœœœ˜šœ˜J˜—J˜—Jšœœœœ˜(J˜Jšœ˜J˜—…—X