home *** CD-ROM | disk | FTP | other *** search
- /* ------------------------------------------------------------------------
- :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
-