/* ------------------------------------------------------------------------ :Program. Err.ced :Contents. Show Oberon error with CygnusEd Professional :Author. Kai Bolay [kai] :Address. Snail-Mail: E-Mail: :Address. Hoffmannstraße 168 UUCP: kai@amokle.tynet.sub.org :Address. D-7250 Leonberg 1 FIDO: 2:247/706.3 :History. v1.0 [kai] 12-Mar-92 :Version. $VER: Err 1.0 (12-Mar-92) :Copyright. FD :Language. ARexx :Translator. RexxMast ------------------------------------------------------------------------ */ /*** Open oberonsupport.library ***/ options results arg what if (what ~= "FIRST") & (what ~= "NEXT") & (what ~= "PREV") then do Okay1 "Fehler: Falscher Aufruf!" exit end libname = "oberonsupport.library" if ~show("L", libname) then do if ~addlib(libname, 0, -30, 1) then do text = libname "not found!" Okay1 text end end status 21 /* Nur Filnamen (ohne Pfad) holen */ filename = result if filename = "" then do Okay1 "Fehler: Kein Filename" exit end status 19 /* Kompletten Filenamen (mit Pfad) holen */ filename = result if right(filename,4) ~= ".mod" then do Okay1 "Fehler: Filename endet nicht auf '.mod'" exit end filename = filename || 'E' count = GetErrCount(filename) if count < 0 then do Okay1 "Fehler: Kann Fehleranzahl nicht bestimmen" exit end if what = "FIRST" then do cnt = 0 end; else do cnt = getclip("CurrentError") if cnt = "" then do Okay1 "Fehler: Kann mir aktuellen Fehler nicht holen" exit end if what = "NEXT" then do cnt = cnt+1 end; else do cnt = cnt-1 end end if cnt >= count then do Okay1 "Letzer Fehler bereits erreicht" exit end if cnt < 0 then do Okay1 "Erster Fehler bereits erreicht" exit end if ~GetError(filename, cnt, Error.) then do Okay1 "Fehler: Kann Fehlerdatei nicht laden" exit end jumpto Error.line Error.column-1 text = "Fehler Nr." cnt+1 "von" count || ":" || '0A'X || GetErrorText(Error.num) Okay1 text if ~setclip("CurrentError",cnt) then do Okay1 "Fehler: Kann mir aktuellen Fehler nicht merken" exit end