OpenTTD Source
20241108-master-g80f628063a
|
Header of Action 04 "universal holder" structure and functions. More...
Go to the source code of this file.
Functions | |
StringID | AddGRFString (uint32_t grfid, uint16_t stringid, uint8_t langid, bool new_scheme, bool allow_newlines, std::string_view text_to_add, StringID def_string) |
Add the new read string into our structure. | |
StringID | GetGRFStringID (uint32_t grfid, StringID stringid) |
Returns the index for this stringid associated with its grfID. | |
const char * | GetGRFStringFromGRFText (const GRFTextList &text_list) |
Get a C-string from a GRFText-list. More... | |
const char * | GetGRFStringFromGRFText (const GRFTextWrapper &text) |
Get a C-string from a GRFText-list. More... | |
const char * | GetGRFStringPtr (uint32_t stringid) |
Get a C-string from a stringid set by a newgrf. | |
void | CleanUpStrings () |
House cleaning. More... | |
void | SetCurrentGrfLangID (uint8_t language_id) |
Equivalence Setter function between game and newgrf langID. More... | |
std::string | TranslateTTDPatchCodes (uint32_t grfid, uint8_t language_id, bool allow_newlines, std::string_view str, StringControlCode byte80=SCC_NEWGRF_PRINT_WORD_STRING_ID) |
Translate TTDPatch string codes into something OpenTTD can handle (better). More... | |
void | AddGRFTextToList (GRFTextList &list, uint8_t langid, uint32_t grfid, bool allow_newlines, std::string_view text_to_add) |
Add a string to a GRFText list. More... | |
void | AddGRFTextToList (GRFTextWrapper &list, uint8_t langid, uint32_t grfid, bool allow_newlines, std::string_view text_to_add) |
Add a string to a GRFText list. More... | |
void | AddGRFTextToList (GRFTextWrapper &list, std::string_view text_to_add) |
Add a GRFText to a GRFText list. More... | |
bool | CheckGrfLangID (uint8_t lang_id, uint8_t grf_version) |
void | StartTextRefStackUsage (const struct GRFFile *grffile, uint8_t numEntries, const uint32_t *values=nullptr) |
void | StopTextRefStackUsage () |
Stop using the TTDP compatible string code parsing. | |
bool | UsingNewGRFTextStack () |
Check whether the NewGRF text stack is in use. More... | |
struct TextRefStack * | CreateTextRefStackBackup () |
Create a backup of the current NewGRF text stack. More... | |
void | RestoreTextRefStackBackup (struct TextRefStack *backup) |
Restore a copy of the text stack to the used stack. More... | |
Header of Action 04 "universal holder" structure and functions.
Definition in file newgrf_text.h.
void AddGRFTextToList | ( | GRFTextList & | list, |
uint8_t | langid, | ||
uint32_t | grfid, | ||
bool | allow_newlines, | ||
std::string_view | text_to_add | ||
) |
Add a string to a GRFText list.
list | The list where the text should be added to. |
langid | The language of the new text. |
grfid | The grfid where this string is defined. |
allow_newlines | Whether newlines are allowed in this string. |
text_to_add | The text to add to the list. |
Definition at line 508 of file newgrf_text.cpp.
References AddGRFTextToList(), and TranslateTTDPatchCodes().
void AddGRFTextToList | ( | GRFTextWrapper & | list, |
std::string_view | text_to_add | ||
) |
Add a GRFText to a GRFText list.
The text should not contain any text-codes. The text will be added as a 'default language'-text.
list | The list where the text should be added to. |
text_to_add | The text to add to the list. |
Definition at line 534 of file newgrf_text.cpp.
References AddGRFTextToList().
void AddGRFTextToList | ( | GRFTextWrapper & | list, |
uint8_t | langid, | ||
uint32_t | grfid, | ||
bool | allow_newlines, | ||
std::string_view | text_to_add | ||
) |
Add a string to a GRFText list.
list | The list where the text should be added to. |
langid | The language of the new text. |
grfid | The grfid where this string is defined. |
allow_newlines | Whether newlines are allowed in this string. |
text_to_add | The text to add to the list. |
Definition at line 522 of file newgrf_text.cpp.
References AddGRFTextToList().
void CleanUpStrings | ( | ) |
House cleaning.
Remove all strings.
Definition at line 682 of file newgrf_text.cpp.
Referenced by ResetNewGRFData().
struct TextRefStack* CreateTextRefStackBackup | ( | ) |
Create a backup of the current NewGRF text stack.
Definition at line 765 of file newgrf_text.cpp.
References _newgrf_textrefstack.
Referenced by FormatString().
const char* GetGRFStringFromGRFText | ( | const GRFTextList & | text_list | ) |
Get a C-string from a GRFText-list.
If there is a translation for the current language it is returned, otherwise the default translation is returned. If there is neither a default nor a translation for the current language nullptr is returned.
text_list | The GRFTextList to get the string from. |
Definition at line 606 of file newgrf_text.cpp.
References _currentLangID.
Referenced by GRFConfig::GetDescription(), GetGRFStringFromGRFText(), GRFConfig::GetName(), and GRFConfig::GetURL().
const char* GetGRFStringFromGRFText | ( | const GRFTextWrapper & | text | ) |
Get a C-string from a GRFText-list.
If there is a translation for the current language it is returned, otherwise the default translation is returned. If there is neither a default nor a translation for the current language nullptr is returned.
text | The GRFTextList to get the string from. |
Definition at line 631 of file newgrf_text.cpp.
References GetGRFStringFromGRFText().
void RestoreTextRefStackBackup | ( | struct TextRefStack * | backup | ) |
Restore a copy of the text stack to the used stack.
backup | The copy to restore. |
Definition at line 774 of file newgrf_text.cpp.
References _newgrf_textrefstack.
Referenced by FormatString().
void SetCurrentGrfLangID | ( | uint8_t | language_id | ) |
Equivalence Setter function between game and newgrf langID.
This function will adjust _currentLangID as to what is the LangID of the current language set by the user. This function is called after the user changed language, from strings.cpp:ReadLanguagePack
language_id | iso code of current selection |
Definition at line 659 of file newgrf_text.cpp.
References _currentLangID.
std::string TranslateTTDPatchCodes | ( | uint32_t | grfid, |
uint8_t | language_id, | ||
bool | allow_newlines, | ||
std::string_view | str, | ||
StringControlCode | byte80 | ||
) |
Translate TTDPatch string codes into something OpenTTD can handle (better).
grfid | The (NewGRF) ID associated with this string |
language_id | The (NewGRF) language ID associated with this string. |
allow_newlines | Whether newlines are allowed in the string or not. |
str | The string to translate. |
byte80 | The control code to use as replacement for the 0x80-value. |
Definition at line 236 of file newgrf_text.cpp.
References NFO_UTF8_IDENTIFIER, Utf8Decode(), and Utf8EncodedCharLen().
Referenced by AddGRFTextToList().
bool UsingNewGRFTextStack | ( | ) |
Check whether the NewGRF text stack is in use.
Definition at line 756 of file newgrf_text.cpp.
References _newgrf_textrefstack.
Referenced by FormatString().