diff options
author | Patric Stout <truebrain@openttd.org> | 2021-07-09 21:16:03 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2021-07-09 21:16:03 +0200 |
commit | 8f5d0ecde39cbaf2ac1a6d27e82239bfc3bf1515 (patch) | |
tree | 232daba5b6f77f8ae33191c0b88dd21ef662a1c1 /src/table/settings/locale_settings.ini | |
parent | d9ca9ca55571829af88429147e20bf0734e07e2d (diff) | |
download | openttd-8f5d0ecde39cbaf2ac1a6d27e82239bfc3bf1515.tar.xz |
Codechange: split settings.ini over several files (#9421)
This reduced the load on compilers, as currently for example MacOS
doesn't like the huge settings-tables.
Additionally, nobody can find settings, as the list is massive and
unordered. By splitting it, it becomes a little bit more sensible.
Diffstat (limited to 'src/table/settings/locale_settings.ini')
-rw-r--r-- | src/table/settings/locale_settings.ini | 177 |
1 files changed, 177 insertions, 0 deletions
diff --git a/src/table/settings/locale_settings.ini b/src/table/settings/locale_settings.ini new file mode 100644 index 000000000..777ae15cf --- /dev/null +++ b/src/table/settings/locale_settings.ini @@ -0,0 +1,177 @@ +; This file is part of OpenTTD. +; OpenTTD is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, version 2. +; OpenTTD is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +; See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with OpenTTD. If not, see <http://www.gnu.org/licenses/>. +; + +; Locale settings as stored in the main configuration file ("openttd.cfg") and +; in the savegame PATS chunk. These settings are not sync'd over the network. + +[pre-amble] +uint8 _old_units; ///< Old units from old savegames + +static std::initializer_list<const char*> _locale_currencies{"GBP", "USD", "EUR", "YEN", "ATS", "BEF", "CHF", "CZK", "DEM", "DKK", "ESP", "FIM", "FRF", "GRD", "HUF", "ISK", "ITL", "NLG", "NOK", "PLN", "RON", "RUR", "SIT", "SEK", "YTL", "SKK", "BRL", "EEK", "custom"}; +static std::initializer_list<const char*> _locale_units{"imperial", "metric", "si", "gameunits"}; + +static const SettingVariant _locale_settings_table[] = { +[post-amble] +}; +[templates] +SDTG_OMANY = SDTG_OMANY($name, $type, $flags, $var, $def, $max, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup), +SDT_OMANY = SDT_OMANY(GameSettings, $var, $type, $flags, $def, $max, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $load, $cat, $extra, $startup), +SDT_SSTR = SDT_SSTR(GameSettings, $var, $type, $flags, $def, $pre_cb, $post_cb, $from, $to, $cat, $extra, $startup), + +[validation] +SDTG_OMANY = static_assert($max <= MAX_$type, "Maximum value for $var exceeds storage size"); +SDT_OMANY = static_assert($max <= MAX_$type, "Maximum value for GameSettings.$var exceeds storage size"); + +[defaults] +flags = SF_NONE +interval = 0 +str = STR_NULL +strhelp = STR_CONFIG_SETTING_NO_EXPLANATION_AVAILABLE_HELPTEXT +strval = STR_NULL +pre_cb = nullptr +post_cb = nullptr +load = nullptr +from = SL_MIN_VERSION +to = SL_MAX_VERSION +cat = SC_ADVANCED +extra = 0 +startup = false + + +[SDT_OMANY] +var = locale.currency +type = SLE_UINT8 +from = SLV_97 +flags = SF_NO_NETWORK_SYNC +def = 0 +max = CURRENCY_END - 1 +full = _locale_currencies +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC + +[SDTG_OMANY] +name = ""units"" +var = _old_units +type = SLE_UINT8 +from = SLV_97 +to = SLV_184 +flags = SF_NOT_IN_CONFIG +def = 1 +max = 2 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC + +[SDT_OMANY] +var = locale.units_velocity +type = SLE_UINT8 +from = SLV_184 +flags = SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 3 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +str = STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY +strhelp = STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_HELPTEXT +strval = STR_CONFIG_SETTING_LOCALISATION_UNITS_VELOCITY_IMPERIAL + +[SDT_OMANY] +var = locale.units_power +type = SLE_UINT8 +from = SLV_184 +flags = SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +str = STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER +strhelp = STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_HELPTEXT +strval = STR_CONFIG_SETTING_LOCALISATION_UNITS_POWER_IMPERIAL + +[SDT_OMANY] +var = locale.units_weight +type = SLE_UINT8 +from = SLV_184 +flags = SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +str = STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT +strhelp = STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_HELPTEXT +strval = STR_CONFIG_SETTING_LOCALISATION_UNITS_WEIGHT_IMPERIAL + +[SDT_OMANY] +var = locale.units_volume +type = SLE_UINT8 +from = SLV_184 +flags = SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +str = STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME +strhelp = STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_HELPTEXT +strval = STR_CONFIG_SETTING_LOCALISATION_UNITS_VOLUME_IMPERIAL + +[SDT_OMANY] +var = locale.units_force +type = SLE_UINT8 +from = SLV_184 +flags = SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +str = STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE +strhelp = STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_HELPTEXT +strval = STR_CONFIG_SETTING_LOCALISATION_UNITS_FORCE_IMPERIAL + +[SDT_OMANY] +var = locale.units_height +type = SLE_UINT8 +from = SLV_184 +flags = SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _locale_units +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +str = STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT +strhelp = STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_HELPTEXT +strval = STR_CONFIG_SETTING_LOCALISATION_UNITS_HEIGHT_IMPERIAL + +[SDT_SSTR] +var = locale.digit_group_separator +type = SLE_STRQ +from = SLV_118 +flags = SF_NO_NETWORK_SYNC +def = nullptr +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC + +[SDT_SSTR] +var = locale.digit_group_separator_currency +type = SLE_STRQ +from = SLV_118 +flags = SF_NO_NETWORK_SYNC +def = nullptr +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC + +[SDT_SSTR] +var = locale.digit_decimal_separator +type = SLE_STRQ +from = SLV_126 +flags = SF_NO_NETWORK_SYNC +def = nullptr +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC |