/****************************************************************
   This file was created automatically by `FlexCat 1.5'
   from "typeface.cd".

   Do NOT edit by hand!
****************************************************************/

/****************************************************************
    This file uses the auto initialization possibilities of
    Dice, gcc and SAS/C, respectively.

    Dice does this by using the keywords __autoinit and
    __autoexit, SAS uses names beginning with _STI or
    _STD, respectively. gcc uses the asm() instruction,
    to emulate C++ constructors and destructors.

    Using this file you don't have *all* possibilities of
    the locale.library. (No Locale or Language arguments are
    supported when opening the catalog. However, these are
    *very* rarely used, so this should be sufficient for most
    applications.

    If you really need all possibilities or you have another
    compiler, you should use the source description C_c_V21.sd
    instead.
****************************************************************/


/*
    Include files and compiler specific stuff
*/
#include <libraries/locale.h>

#if defined(__SASC)  ||  defined(_DCC)
#include <proto/exec.h>
#include <proto/locale.h>
typedef struct Library LocaleBase_t;
#elif defined(__GNUC__)
#include <inline/exec.h>
#include <inline/locale.h>
typedef struct LocaleBase LocaleBase_t;
#else
#error "Don't know how to handle your compiler."
#endif

#if defined(__SASC) || defined(__GNUC__)
#define __autoinit
#define __autoexit
#endif


/*
    Variables
*/
struct FC_Type
{   LONG   ID;
    STRPTR Str;
};
const struct FC_Type _msgContinue = { 0, (STRPTR) "Continue" };
const struct FC_Type _msgCancel = { 1, (STRPTR) "Cancel" };
const struct FC_Type _msgYesNo = { 2, (STRPTR) "Yes|No" };
const struct FC_Type _gadgAccept = { 3, (STRPTR) "_Accept" };
const struct FC_Type _gadgCancel = { 4, (STRPTR) "_Cancel" };
const struct FC_Type _msgNoAslLib = { 5, (STRPTR) "Cannot open asl.library v37+." };
const struct FC_Type _msgNoDiskfontLib = { 6, (STRPTR) "Cannot open diskfont.library v36+." };
const struct FC_Type _msgNoIFFParseLib = { 7, (STRPTR) "Cannot open iffparse.library v37+." };
const struct FC_Type _msgNoBguiLib = { 8, (STRPTR) "Cannot open bgui.library v39+." };
const struct FC_Type _msgNoTextFieldGadget = { 9, (STRPTR) "Cannot open textfield.gadget v3+." };
const struct FC_Type _msgFatalError = { 10, (STRPTR) "A fatal error has occured:\nA call to %s has failed." };
const struct FC_Type _msgOpenFont = { 11, (STRPTR) "Open Font" };
const struct FC_Type _msgNoOpenFont = { 12, (STRPTR) "Cannot open %s." };
const struct FC_Type _msgCharTitle = { 13, (STRPTR) "%c (%lu decimal/$%.2lX hex)" };
const struct FC_Type _msgZeroTitle = { 14, (STRPTR) "(0 decimal/$00 hex)" };
const struct FC_Type _msgBlankTitle = { 15, (STRPTR) "blank" };
const struct FC_Type _msgFreeChip = { 16, (STRPTR) "Free Chip Memory" };
const struct FC_Type _msgFreeFast = { 17, (STRPTR) "Free Fast Memory" };
const struct FC_Type _msgCheckQuit = { 18, (STRPTR) "%sDo you wish to quit?" };
const struct FC_Type _msgCharsChanged = { 19, (STRPTR) "The character data has been\nchanged. " };
const struct FC_Type _msgQuitCancel = { 20, (STRPTR) "Quit|Cancel" };
const struct FC_Type _msgVisitors = { 21, (STRPTR) "Please close all visitor windows." };
const struct FC_Type _msgCheckResetKerning = { 22, (STRPTR) "Do you wish the kerning and\n"\
	"spacing information for all\n"\
	"characters to be reset?" };
const struct FC_Type _msgPutPositive = { 23, (STRPTR) "The %s must be greater than %ld." };
const struct FC_Type _msgFontParamsTitle = { 24, (STRPTR) "Edit Font Parameters" };
const struct FC_Type _msgFontFixed = { 25, (STRPTR) "Fixed Width" };
const struct FC_Type _msgFontProp = { 26, (STRPTR) "Proportional" };
const struct FC_Type _msgAspectNormal = { 27, (STRPTR) "Normal" };
const struct FC_Type _msgAspectThin = { 28, (STRPTR) "Thin" };
const struct FC_Type _msgAspectWide = { 29, (STRPTR) "Wide" };
const struct FC_Type _gadgFontType = { 30, (STRPTR) "_Font Type" };
const struct FC_Type _gadgFontHeight = { 31, (STRPTR) "_Height" };
const struct FC_Type _gadgFontBaseline = { 32, (STRPTR) "_Baseline" };
const struct FC_Type _gadgFontWidth = { 33, (STRPTR) "_Width" };
const struct FC_Type _gadgBoldSmear = { 34, (STRPTR) "Bold _Smear" };
const struct FC_Type _gadgFontNormal = { 35, (STRPTR) "_Normal" };
const struct FC_Type _gadgFontItalic = { 36, (STRPTR) "_Italic" };
const struct FC_Type _gadgFontBold = { 37, (STRPTR) "B_old" };
const struct FC_Type _gadgFontUnderline = { 38, (STRPTR) "_Underline" };
const struct FC_Type _gadgFontExtended = { 39, (STRPTR) "_Extended" };
const struct FC_Type _gadgFontReversed = { 40, (STRPTR) "_Reversed" };
const struct FC_Type _gadgFontAspect = { 41, (STRPTR) "As_pect" };
const struct FC_Type _gadgFontBlank = { 42, (STRPTR) "B_lank" };
const struct FC_Type _msgErrorBaseline = { 43, (STRPTR) "The font baseline must be\n"\
	"less than the font height." };
const struct FC_Type _msgErrorFontWidth = { 44, (STRPTR) "The font width must be positive." };
const struct FC_Type _msgWarnPropChange = { 45, (STRPTR) "This font will be changed from proportional\n"\
	"to fixed width. Do you wish all characters\n"\
	"to have the same width (yes is recommended)?" };
const struct FC_Type _msgBoldSmear = { 46, (STRPTR) "bold smear" };
const struct FC_Type _msgFontBaseline = { 47, (STRPTR) "font baseline" };
const struct FC_Type _msgFontHeight = { 48, (STRPTR) "font height" };
const struct FC_Type _msgPrefsTitle = { 49, (STRPTR) "Preferences" };
const struct FC_Type _msgPrefsScreen = { 50, (STRPTR) "Screen" };
const struct FC_Type _msgPrefsToolBar = { 51, (STRPTR) "Tool Bar" };
const struct FC_Type _msgPrefsEdit = { 52, (STRPTR) "Edit Windows" };
const struct FC_Type _msgPrefsSelect = { 53, (STRPTR) "Selection Window" };
const struct FC_Type _msgPrefsMisc = { 54, (STRPTR) "Miscellaneous" };
const struct FC_Type _gadgPrefsSave = { 55, (STRPTR) "_Save" };
const struct FC_Type _gadgPrefsUse = { 56, (STRPTR) "_Use" };
const struct FC_Type _msgPrefsSaveError = { 57, (STRPTR) "Cannot save preferences to\n\"%s\"" };
const struct FC_Type _msgScreenFont = { 58, (STRPTR) "Change Screen Font" };
const struct FC_Type _msgScreenMode = { 59, (STRPTR) "Change Screen Mode" };
const struct FC_Type _gadgCustomScr = { 60, (STRPTR) "Cus_tom Screen" };
const struct FC_Type _gadgMode = { 61, (STRPTR) "_Mode" };
const struct FC_Type _gadgScreenFont = { 62, (STRPTR) "_Font" };
const struct FC_Type _gadgPubScreen = { 63, (STRPTR) "_Public Screen" };
const struct FC_Type _msgNeedAslV38 = { 64, (STRPTR) "asl.library v38 or higher required." };
const struct FC_Type _msgToolBarElements = { 65, (STRPTR) "Tool Bar Elements" };
const struct FC_Type _gadgToolBarHeight = { 66, (STRPTR) "_Height" };
const struct FC_Type _gadgAuto = { 67, (STRPTR) "_Auto" };
const struct FC_Type _msgToolbarHeight = { 68, (STRPTR) "tool bar height" };
const struct FC_Type _msgPixels = { 69, (STRPTR) "Pixels" };
const struct FC_Type _gadgPixelWidth = { 70, (STRPTR) "_Width" };
const struct FC_Type _gadgPixelHeight = { 71, (STRPTR) "_Height" };
const struct FC_Type _gadgPixelBorder = { 72, (STRPTR) "_Border" };
const struct FC_Type _msgBorderNo = { 73, (STRPTR) "No" };
const struct FC_Type _msgBorderYes = { 74, (STRPTR) "Yes" };
const struct FC_Type _msgBorderGrid = { 75, (STRPTR) "Grid" };
const struct FC_Type _gadgMaxWindow = { 76, (STRPTR) "_Maximize Window " };
const struct FC_Type _gadgShowBLine = { 77, (STRPTR) "Baseli_ne" };
const struct FC_Type _msgPixelWidth = { 78, (STRPTR) "pixel width" };
const struct FC_Type _msgPixelHeight = { 79, (STRPTR) "pixel height" };
const struct FC_Type _gadgSizeWin = { 80, (STRPTR) "Window Si_zing" };
const struct FC_Type _gadgShift = { 81, (STRPTR) "Sh_ift" };
const struct FC_Type _gadgWidthCycle = { 82, (STRPTR) "_Width" };
const struct FC_Type _gadgSelWinHeight = { 83, (STRPTR) "_Height" };
const struct FC_Type _gadgSelWinFont = { 84, (STRPTR) "_Font" };
const struct FC_Type _msgSelWndWidth = { 85, (STRPTR) "window width" };
const struct FC_Type _msgSavePrefsTo = { 86, (STRPTR) "Save preferences to" };
const struct FC_Type _gadgQuit = { 87, (STRPTR) "Confirm _Quit" };
const struct FC_Type _msgPrefsEnv = { 88, (STRPTR) "Environment Variable" };
const struct FC_Type _msgPrefsProg = { 89, (STRPTR) "Typeface Directory" };
const struct FC_Type _msgFontDirTitle = { 90, (STRPTR) "Change Font Directory" };
const struct FC_Type _gadgAssign = { 91, (STRPTR) "_Assign" };
const struct FC_Type _gadgAssignAdd = { 92, (STRPTR) "Assign A_dd" };
const struct FC_Type _msgNoDir = { 93, (STRPTR) "Cannot find directory\n\"%s\"" };
const struct FC_Type _msgSaveTitle = { 94, (STRPTR) "Save Font" };
const struct FC_Type _gadgFontDir = { 95, (STRPTR) "Font _Directory" };
const struct FC_Type _gadgFontName = { 96, (STRPTR) "_Font" };
const struct FC_Type _msgSize = { 97, (STRPTR) "Size" };
const struct FC_Type _gadgFirst = { 98, (STRPTR) "F_irst" };
const struct FC_Type _gadgLast = { 99, (STRPTR) "_Last" };
const struct FC_Type _gadgKernInfo = { 100, (STRPTR) "_Kern Info" };
const struct FC_Type _gadgSave = { 101, (STRPTR) "_Save" };
const struct FC_Type _msgFirstRange = { 102, (STRPTR) "The first character must be between 0 and 255." };
const struct FC_Type _msgLastRange = { 103, (STRPTR) "The last character must be between 0 and 255." };
const struct FC_Type _msgFirstGreaterLast = { 104, (STRPTR) "The first character cannot be greater than the last." };
const struct FC_Type _msgSaveNoDir = { 105, (STRPTR) "Directory \"%s\"\ndoes not exist." };
const struct FC_Type _msgSaveNoDirGadgets = { 106, (STRPTR) "Create|Cancel" };
const struct FC_Type _msgSaveCreateError = { 107, (STRPTR) "Cannot create directory\n\"%s\"." };
const struct FC_Type _msgSaveWarnExists = { 108, (STRPTR) "File \"%s\" exists." };
const struct FC_Type _msgSaveWarnExistsGadgets = { 109, (STRPTR) "Overwrite|Cancel" };
const struct FC_Type _msgSaveWriteHeader = { 110, (STRPTR) "Cannot write font header to \n\"%s\"." };
const struct FC_Type _msgSaveCreateHeader = { 111, (STRPTR) "Cannot create font header." };
const struct FC_Type _msgSaveWriteData = { 112, (STRPTR) "Cannot write font data to \n\"%s\"." };
const struct FC_Type _msgSaveNoMemory = { 113, (STRPTR) "Not enough memory." };
const struct FC_Type _msgWidthTitle = { 114, (STRPTR) "Change Width of %lu (from %d)" };
const struct FC_Type _msgWidthTitleBlank = { 115, (STRPTR) "Change Width of blank (from %d)" };
const struct FC_Type _gadgNewWidth = { 116, (STRPTR) "New _Width" };
const struct FC_Type _msgLeftOffset = { 117, (STRPTR) "Left Offset: %ld" };
const struct FC_Type _msgRightOffset = { 118, (STRPTR) "Right Offset: %ld" };
const struct FC_Type _msgKernTitle = { 119, (STRPTR) "Kerning for %lu" };
const struct FC_Type _msgKernTitleBlank = { 120, (STRPTR) "Kerning for blank" };
const struct FC_Type _gadgSpacing = { 121, (STRPTR) "_Spacing" };
const struct FC_Type _gadgKerning = { 122, (STRPTR) "_Kerning" };
const struct FC_Type _msgPreviewTitle = { 123, (STRPTR) "Font Preview" };
const struct FC_Type _gadgUpdate = { 124, (STRPTR) "Upda_te" };
const struct FC_Type _gadgShowAll = { 125, (STRPTR) "S_how All" };
const struct FC_Type _gadgClear = { 126, (STRPTR) "C_lear" };
const struct FC_Type _msgMenuProjectTitle = { 127, (STRPTR) "Project" };
const struct FC_Type _msgMenuOpen = { 128, (STRPTR) "Open Font..." };
const struct FC_Type _msgMenuSave = { 129, (STRPTR) "Save Font..." };
const struct FC_Type _msgMenuChangeDir = { 130, (STRPTR) "Change Dir..." };
const struct FC_Type _msgMenuPreview = { 131, (STRPTR) "Preview..." };
const struct FC_Type _msgMenuPrefs = { 132, (STRPTR) "Preferences..." };
const struct FC_Type _msgMenuAbout = { 133, (STRPTR) "About..." };
const struct FC_Type _msgMenuQuit = { 134, (STRPTR) "Quit" };
const struct FC_Type _msgMenuFontTitle = { 135, (STRPTR) "Font" };
const struct FC_Type _msgMenuEditFont = { 136, (STRPTR) "Edit Parameters..." };
const struct FC_Type _msgMenuMoveLeft = { 137, (STRPTR) "Move Left" };
const struct FC_Type _msgMenuMoveRight = { 138, (STRPTR) "Move Right" };
const struct FC_Type _msgMenuMoveUp = { 139, (STRPTR) "Move Up" };
const struct FC_Type _msgMenuMoveDown = { 140, (STRPTR) "Move Down" };
const struct FC_Type _msgMenuResetKern = { 141, (STRPTR) "Reset Kerning..." };
const struct FC_Type _msgMenuCharTitle = { 142, (STRPTR) "Character" };
const struct FC_Type _msgMenuCopy = { 143, (STRPTR) "Copy" };
const struct FC_Type _msgMenuPaste = { 144, (STRPTR) "Paste" };
const struct FC_Type _msgMenuZoomIn = { 145, (STRPTR) "Zoom In" };
const struct FC_Type _msgMenuZoomOut = { 146, (STRPTR) "Zoom Out" };
const struct FC_Type _msgMenuChangeWidth = { 147, (STRPTR) "Change Width..." };
const struct FC_Type _msgMenuKerning = { 148, (STRPTR) "Kerning..." };
const struct FC_Type _msgMenuPreviewTitle = { 149, (STRPTR) "Preview" };
const struct FC_Type _msgMenuUpdate = { 150, (STRPTR) "Update" };
const struct FC_Type _msgMenuShowAll = { 151, (STRPTR) "Show All" };
const struct FC_Type _msgMenuClear = { 152, (STRPTR) "Clear" };

static struct Catalog *typeface_Catalog = NULL;

LocaleBase_t *LocaleBase;





STATIC __autoinit VOID _STIOpenCatalog(VOID)

  {
    STATIC const struct TagItem tags[] =
      {
	{ OC_BuiltInLanguage, (ULONG) "english" },
	{ OC_Version, 1 },
	{ TAG_DONE, 0 }
      };
    if ((LocaleBase = (LocaleBase_t *)
		      OpenLibrary((STRPTR) "locale.library", 38)))
    {
      typeface_Catalog = OpenCatalogA(NULL, (STRPTR) "typeface.catalog",
				(struct TagItem *) tags);
    }
  }



STATIC __autoexit VOID _STDCloseCatalog(VOID)

  {
    if (LocaleBase)
      {
	CloseCatalog(typeface_Catalog);
	typeface_Catalog = NULL;
	CloseLibrary((struct Library *) LocaleBase);
      }
  }



STRPTR GetString(struct FC_Type *fcstr)

  {
    STRPTR defaultstr;
    LONG strnum;

    strnum = fcstr->ID;
    defaultstr = fcstr->Str;

    return(typeface_Catalog ? GetCatalogStr(typeface_Catalog, strnum, defaultstr) :
			defaultstr);
  }

#if defined(__GNUC__)
asm ("  .text;  .stabs \"___CTOR_LIST__\",22,0,0,__STIOpenCatalog");
asm ("  .text;  .stabs \"___DTOR_LIST__\",22,0,0,__STDCloseCatalog");
#endif
