LanguagePackHeader Struct Reference

Header of a language file. More...

#include <language.h>

Inheritance diagram for LanguagePackHeader:
LanguageMetadata LanguagePack

Public Member Functions

bool IsValid () const
 Check whether the header is a valid header for OpenTTD.
uint8 GetGenderIndex (const char *gender_str) const
 Get the index for the given gender.
uint8 GetCaseIndex (const char *case_str) const
 Get the index for the given case.

Data Fields

uint32 ident
 32-bits identifier
uint32 version
 32-bits of auto generated version info which is basically a hash of strings.h
char name [32]
 the international name of this language
char own_name [32]
 the localized name of this language
char isocode [16]
 the ISO code for the language (not country code)
uint16 offsets [32]
 the offsets
char digit_group_separator [8]
 Thousand separator used for anything not currencies.
char digit_group_separator_currency [8]
 Thousand separator used for currencies.
char digit_decimal_separator [8]
 Decimal separator.
byte plural_form
 plural form index
byte text_dir
 default direction of the text
uint16 winlangid
 Windows language ID: Windows cannot and will not convert isocodes to something it can use to determine whether a font can be used for the language or not.
uint8 newgrflangid
 newgrf language id
uint8 num_genders
 the number of genders of this language
uint8 num_cases
 the number of cases of this language
byte pad [1]
 pad header to be a multiple of 4
char genders [MAX_NUM_GENDERS][CASE_GENDER_LEN]
 the genders used by this translation
char cases [MAX_NUM_CASES][CASE_GENDER_LEN]
 the cases used by this translation

Static Public Attributes

static const uint32 IDENT = 0x474E414C
 Identifier for OpenTTD language files, big endian for "LANG".

Detailed Description

Header of a language file.

Definition at line 25 of file language.h.


Member Function Documentation

uint8 LanguagePackHeader::GetCaseIndex ( const char *  case_str  )  const [inline]

Get the index for the given case.

Parameters:
case_str The string representation of the case.
Returns:
The index of the case, or MAX_NUM_CASES when the case is unknown.

Definition at line 80 of file language.h.

References cases, and MAX_NUM_CASES.

uint8 LanguagePackHeader::GetGenderIndex ( const char *  gender_str  )  const [inline]

Get the index for the given gender.

Parameters:
gender_str The string representation of the gender.
Returns:
The index of the gender, or MAX_NUM_GENDERS when the gender is unknown.

Definition at line 67 of file language.h.

References genders, and MAX_NUM_GENDERS.

bool LanguagePackHeader::IsValid (  )  const

Check whether the header is a valid header for OpenTTD.

Returns:
true iff the header is deemed valid.

Definition at line 1390 of file strings.cpp.

References digit_decimal_separator, digit_group_separator, digit_group_separator_currency, IDENT, ident, isocode, lastof, MAX_LANG, MAX_NUM_CASES, MAX_NUM_GENDERS, name, newgrflangid, num_cases, num_genders, own_name, plural_form, StrValid(), text_dir, and version.

Referenced by GetLanguageFileHeader().


Field Documentation

Windows language ID: Windows cannot and will not convert isocodes to something it can use to determine whether a font can be used for the language or not.

As a result of that we need to pass the language id via strgen to OpenTTD to tell what language it is in "Windows". The ID is the 'locale identifier' on: http://msdn.microsoft.com/en-us/library/ms776294.aspx windows language id

Definition at line 51 of file language.h.

Referenced by CheckForMissingGlyphsInLoadedLanguagePack(), and GetLanguageFileHeader().


The documentation for this struct was generated from the following files:

Generated on Thu Jan 20 22:58:31 2011 for OpenTTD by  doxygen 1.6.1