OpenTTD Source  20241124-master-g9399a92a4f
strings_type.h File Reference

Types related to strings. More...

Go to the source code of this file.

Typedefs

typedef uint32_t StringID
 Numeric value that represents a string, independent of the selected language.
 
using StringParameterData = std::variant< uint64_t, std::string >
 

Enumerations

enum  TextDirection { TD_LTR , TD_RTL }
 Directions a text can go to. More...
 
enum  StringTab {
  TEXT_TAB_TOWN = 4 , TEXT_TAB_INDUSTRY = 9 , TEXT_TAB_STATION = 12 , TEXT_TAB_SPECIAL = 14 ,
  TEXT_TAB_OLD_CUSTOM = 15 , TEXT_TAB_VEHICLE = 16 , TEXT_TAB_OLD_NEWGRF = 26 , TEXT_TAB_END = 32 ,
  TEXT_TAB_GAMESCRIPT_START = 32 , TEXT_TAB_NEWGRF_START = 64
}
 StringTabs to group StringIDs. More...
 
enum  SpecialStrings {
  SPECSTR_TOWNNAME_START = 0x20C0 , SPECSTR_TOWNNAME_ENGLISH = SPECSTR_TOWNNAME_START , SPECSTR_TOWNNAME_FRENCH , SPECSTR_TOWNNAME_GERMAN ,
  SPECSTR_TOWNNAME_AMERICAN , SPECSTR_TOWNNAME_LATIN , SPECSTR_TOWNNAME_SILLY , SPECSTR_TOWNNAME_SWEDISH ,
  SPECSTR_TOWNNAME_DUTCH , SPECSTR_TOWNNAME_FINNISH , SPECSTR_TOWNNAME_POLISH , SPECSTR_TOWNNAME_SLOVAK ,
  SPECSTR_TOWNNAME_NORWEGIAN , SPECSTR_TOWNNAME_HUNGARIAN , SPECSTR_TOWNNAME_AUSTRIAN , SPECSTR_TOWNNAME_ROMANIAN ,
  SPECSTR_TOWNNAME_CZECH , SPECSTR_TOWNNAME_SWISS , SPECSTR_TOWNNAME_DANISH , SPECSTR_TOWNNAME_TURKISH ,
  SPECSTR_TOWNNAME_ITALIAN , SPECSTR_TOWNNAME_CATALAN , SPECSTR_TOWNNAME_LAST = SPECSTR_TOWNNAME_CATALAN , SPECSTR_COMPANY_NAME_START = 0x70EA ,
  SPECSTR_COMPANY_NAME_LAST = SPECSTR_COMPANY_NAME_START + SPECSTR_TOWNNAME_LAST - SPECSTR_TOWNNAME_START , SPECSTR_SILLY_NAME = 0x70E5 , SPECSTR_ANDCO_NAME = 0x70E6 , SPECSTR_PRESIDENT_NAME = 0x70E7
}
 Special string constants.
 

Variables

static const StringID INVALID_STRING_ID = 0xFFFF
 Constant representing an invalid string (16bit in case it is used in savegames)
 
static const int MAX_CHAR_LENGTH = 4
 Max. length of UTF-8 encoded unicode character.
 
static const uint MAX_LANG = 0x7F
 Maximum number of languages supported by the game, and the NewGRF specs.
 
static const uint TAB_SIZE_BITS = 11
 Number of bits for the StringIndex within a StringTab.
 
static const uint TAB_SIZE = 1 << TAB_SIZE_BITS
 Number of strings per StringTab.
 
static const uint TAB_SIZE_GAMESCRIPT = TAB_SIZE * 32
 Number of strings for GameScripts.
 
static const uint TAB_SIZE_NEWGRF = TAB_SIZE * 256
 Number of strings for NewGRFs.
 

Detailed Description

Types related to strings.

Definition in file strings_type.h.

Enumeration Type Documentation

◆ StringTab

enum StringTab

StringTabs to group StringIDs.

Enumerator
TEXT_TAB_END 

End of language files.

TEXT_TAB_GAMESCRIPT_START 

Start of GameScript supplied strings.

TEXT_TAB_NEWGRF_START 

Start of NewGRF supplied strings.

Definition at line 28 of file strings_type.h.

◆ TextDirection

Directions a text can go to.

Enumerator
TD_LTR 

Text is written left-to-right by default.

TD_RTL 

Text is written right-to-left by default.

Definition at line 22 of file strings_type.h.