revert between 56095 -> 55830 in arch
[AROS.git] / tools / flexcat / src / sd / C_c_V21.sd
blobf4c2cc624101023655092dc51c24d4125756d47a
1 ##rem $Id$
2 ##stringtype C
3 ##shortstrings
5 /****************************************************************
7    This file was created automatically by `%fv'
8    from "%f0".
10    Do NOT edit by hand!
12 ****************************************************************/
14 #if defined(__SASC)  ||  defined(_DCC)
15 #include <proto/locale.h>
16 #elif defined(__GNUC__)
17 #include <inline/locale.h>
18 #else
19 #include <clib/locale_protos.h>
20 #endif
25 static LONG %b_Version = %v;
26 static const STRPTR %b_BuiltInLanguage = (STRPTR) %l;
28 struct FC_Type
29 {   LONG   ID;
30     STRPTR Str;
34 const struct FC_Type _%i = { %d, %s };
37 static struct Catalog *%b_Catalog = NULL;
39 void Open%bCatalog(struct Locale *loc, STRPTR language)
40 { LONG tag, tagarg;
41   extern struct Library *LocaleBase;
42   extern void Close%bCatalog(void);
44   Close%bCatalog(); /* Not needed if the programmer pairs Open%bCatalog
45                        and Close%bCatalog right, but does no harm. */
47   if (LocaleBase != NULL  &&  %b_Catalog == NULL)
48   { if (language == NULL)
49     { tag = TAG_IGNORE;
50     }
51     else
52     { tag = OC_Language;
53       tagarg = (LONG) language;
54     }
55     %b_Catalog = OpenCatalog(loc, (STRPTR) "%b.catalog",
56                                 OC_BuiltInLanguage, %b_BuiltInLanguage,
57                                 tag, tagarg,
58                                 OC_Version, %b_Version,
59                                 TAG_DONE);
60   }
63 void Close%bCatalog(void)
64 { if (LocaleBase != NULL)
65   { CloseCatalog(%b_Catalog);
66   }
67   %b_Catalog = NULL;
70 STRPTR Get%bString(APTR fcstr)
71 { STRPTR defaultstr;
72   LONG strnum;
74   strnum = ((struct FC_Type *) fcstr)->ID;
75   defaultstr = ((struct FC_Type *) fcstr)->Str;
77   return(%b_Catalog ? GetCatalogStr(%b_Catalog, strnum, defaultstr) :
78                       defaultstr);