1 ##rem $Id: AmigaOberon.sd 253 2014-02-18 11:15:58Z damato $
5 (****************************************************************
7 This file was created automatically by `%fv'
9 AmigaOberon source description (C) 1994 by Albert Weinert
10 Using with AmigaOberon Interfaces for AmigaOS Release 3.1
17 ****************************************************************)
22 lo := Locale, e := Exec, u := Utility, y := SYSTEM;
28 %i* = %d;\n %iSTR = %s;\n
35 AppStringArray = ARRAY %n OF AppString;
38 AppStrings = AppStringArray (
43 catalog : lo.CatalogPtr;
45 PROCEDURE CloseCatalog*();
47 IF catalog # NIL THEN lo.CloseCatalog (catalog); catalog:=NIL END;
50 PROCEDURE OpenCatalog*(loc:lo.LocalePtr; language:ARRAY OF CHAR);
54 IF (catalog = NIL) & (lo.base # NIL) THEN
55 Tag:= u.Tags4(lo.builtInLanguage, y.ADR(builtinlanguage),
60 Tag[1].tag:= lo.language; Tag[1].data := y.ADR( language );
62 catalog := lo.OpenCatalogA (loc, "%b.catalog", Tag);
66 PROCEDURE GetString* (num: LONGINT): e.LSTRPTR;
71 i := 0; WHILE (i < %n) AND (AppStrings[i].id # num) DO INC (i) END;
74 default := AppStrings[i].str;
80 RETURN lo.GetCatalogStr (catalog, num, default^);