OpenTTD Source  20241108-master-g80f628063a
language.h File Reference

Information about languages and their files. More...

#include <unicode/coll.h>
#include "strings_type.h"
#include <filesystem>

Go to the source code of this file.

Data Structures

struct  LanguagePackHeader
 Header of a language file. More...
 
struct  LanguageMetadata
 Make sure the size is right. More...
 

Typedefs

typedef std::vector< LanguageMetadataLanguageList
 Type for the list of language meta data.
 

Functions

bool ReadLanguagePack (const LanguageMetadata *lang)
 Read a particular language. More...
 
const LanguageMetadataGetLanguage (uint8_t newgrflangid)
 Get the language with the given NewGRF language ID. More...
 

Variables

static const uint8_t CASE_GENDER_LEN = 16
 The (maximum) length of a case/gender string.
 
static const uint8_t MAX_NUM_GENDERS = 8
 Maximum number of supported genders.
 
static const uint8_t MAX_NUM_CASES = 16
 Maximum number of supported cases.
 
LanguageList _languages
 The actual list of language meta data.
 
const LanguageMetadata_current_language
 The currently loaded language.
 
std::unique_ptr< icu::Collator > _current_collator
 Collator for the language currently in use.
 

Detailed Description

Information about languages and their files.

Definition in file language.h.

Function Documentation

◆ GetLanguage()

const LanguageMetadata* GetLanguage ( uint8_t  newgrflangid)

Get the language with the given NewGRF language ID.

Parameters
newgrflangidNewGRF languages ID to check.
Returns
The language's metadata, or nullptr if it is not known.

Definition at line 2046 of file strings.cpp.

References _languages.

Referenced by FillLanguageList().

◆ ReadLanguagePack()

bool ReadLanguagePack ( const LanguageMetadata lang)

Read a particular language.

Parameters
langThe metadata about the language.
Returns
Whether the loading went okay or not.

Definition at line 1912 of file strings.cpp.

References LanguageMetadata::file, FS2OTTD(), ReadFileToMem(), and TEXT_TAB_END.