diff --git a/src/settings.cpp b/src/settings.cpp index 1958413b42..7204864884 100644 --- a/src/settings.cpp +++ b/src/settings.cpp @@ -124,7 +124,11 @@ static bool _fallback_gui_zoom_max = false; */ static const SettingTable _generic_setting_tables[] = { _settings, + _gui_settings, + _multimedia_settings, _network_settings, + _news_display_settings, + _scenario_settings, }; void IterateSettingsTables(std::function handler) diff --git a/src/table/settings.h.preamble b/src/table/settings.h.preamble index 71def0bce3..ca4c31469a 100644 --- a/src/table/settings.h.preamble +++ b/src/table/settings.h.preamble @@ -10,6 +10,9 @@ /* Callback function used in _settings[] as well as _company_settings[] */ static size_t ConvertLandscape(const char *value); +/* Callback function used in _settings[] as well as _gui_settings[] */ +static void UpdateTimeSettings(int32 new_value); + /**************************** * OTTD specific INI stuff diff --git a/src/table/settings/CMakeLists.txt b/src/table/settings/CMakeLists.txt index 31d24b5739..cb04bc0bf4 100644 --- a/src/table/settings/CMakeLists.txt +++ b/src/table/settings/CMakeLists.txt @@ -5,10 +5,14 @@ set(TABLE_INI_SOURCE_FILES ${CMAKE_CURRENT_SOURCE_DIR}/company_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/currency_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/gameopt_settings.ini + ${CMAKE_CURRENT_SOURCE_DIR}/gui_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/misc_settings.ini + ${CMAKE_CURRENT_SOURCE_DIR}/multimedia_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/network_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/network_private_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/network_secrets_settings.ini + ${CMAKE_CURRENT_SOURCE_DIR}/news_display_settings.ini + ${CMAKE_CURRENT_SOURCE_DIR}/scenario_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/win32_settings.ini ${CMAKE_CURRENT_SOURCE_DIR}/window_settings.ini diff --git a/src/table/settings/gameopt_settings.ini b/src/table/settings/gameopt_settings.ini index 987f2e6bac..12c61beb3f 100644 --- a/src/table/settings/gameopt_settings.ini +++ b/src/table/settings/gameopt_settings.ini @@ -28,12 +28,7 @@ static constexpr std::initializer_list _locale_units{"imperial", "m static constexpr std::initializer_list _town_names{"english", "french", "german", "american", "latin", "silly", "swedish", "dutch", "finnish", "polish", "slovak", "norwegian", "hungarian", "austrian", "romanian", "czech", "swiss", "danish", "turkish", "italian", "catalan"}; static constexpr std::initializer_list _climates{"temperate", "arctic", "tropic", "toyland"}; static constexpr std::initializer_list _roadsides{"left", "right"}; -static constexpr std::initializer_list _savegame_date{"long", "short", "iso"}; -static constexpr std::initializer_list _savegame_overwrite_confirm{"no", "different", "not same", "yes"}; -static constexpr std::initializer_list _osk_activation{"disabled", "double", "single", "immediately"}; static constexpr std::initializer_list _settings_profiles{"easy", "medium", "hard"}; -static constexpr std::initializer_list _news_display{ "off", "summarized", "full"}; -static constexpr std::initializer_list _right_click_close{"no", "yes", "except sticky"}; static const SettingTable _gameopt_settings{ /* In version 4 a new difficulty setting has been added to the difficulty settings, diff --git a/src/table/settings/gui_settings.ini b/src/table/settings/gui_settings.ini new file mode 100644 index 0000000000..b5e065f5fc --- /dev/null +++ b/src/table/settings/gui_settings.ini @@ -0,0 +1,1841 @@ +; 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 . +; + +; GUI settings as stored in the main configuration file ("openttd.cfg"). + +[pre-amble] +static void v_PositionMainToolbar(int32_t new_value); +static void v_PositionStatusbar(int32_t new_value); +static void RedrawSmallmap(int32_t new_value); +static void UpdateLinkgraphColours(int32_t new_value); +static void InvalidateCompanyLiveryWindow(int32_t new_value); +static void InvalidateNewGRFChangeWindows(int32_t new_value); +static void ZoomMinMaxChanged(int32_t new_value); +static void SpriteZoomMinChanged(int32_t new_value); +static void AutosaveModeChanged(int32 new_value); +static void ViewportMapShowTunnelModeChanged(int32 new_value); +static void ViewportMapLandscapeModeChanged(int32 new_value); +static void ChangeTimetableInTicksMode(int32 new_value); +static void InvalidateVehTimetableWindow(int32 new_value); +static void ChangeTimeOverrideMode(int32 new_value); +static void ProgrammableSignalsShownChanged(int32 new_value); +static void VehListCargoFilterShownChanged(int32 new_value); +static void EnableSingleVehSharedOrderGuiChanged(int32 new_value); +static void ChangeTrackTypeSortMode(int32 new_value); +static void DeveloperModeChanged(int32 new_value); + +/* Begin - GUI callbacks */ + +static bool ZoomMaxCfgName(SettingOnGuiCtrlData &data); + +/* End - GUI callbacks */ + +static constexpr std::initializer_list _osk_activation{"disabled", "double", "single", "immediately"}; +static constexpr std::initializer_list _savegame_date{"long", "short", "iso"}; +static constexpr std::initializer_list _right_click_close{"no", "yes", "except sticky"}; +static constexpr std::initializer_list _savegame_overwrite_confirm{"no", "different", "not same", "yes"}; + +static const SettingDescEnumEntry _viewport_map_modes[] = { +{ VPMT_VEGETATION, STR_SMALLMAP_TYPE_VEGETATION }, +{ VPMT_OWNER, STR_SMALLMAP_TYPE_OWNERS }, +{ VPMT_ROUTES, STR_SMALLMAP_TYPE_ROUTES }, +{ VPMT_INDUSTRY, STR_SMALLMAP_TYPE_INDUSTRIES }, +{ 0, STR_NULL } +}; + +static const SettingDescEnumEntry _disable_water_animation[] = { +{ 255, STR_CONFIG_SETTING_OFF }, +{ 3, STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_8X }, +{ 4, STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_16X }, +{ 5, STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_32X }, +{ 0, STR_NULL } +}; + +static const SettingDescEnumEntry _no_depot_order_warn[] = { +{ 0, STR_CONFIG_SETTING_OFF }, +{ 2, STR_CONFIG_SETTING_WARN_NO_DEPOT_ORDER_IF_BREAKDOWNS_ON }, +{ 1, STR_CONFIG_SETTING_ON }, +{ 0, STR_NULL } +}; + +const SettingTable _gui_settings{ +[post-amble] +}; +[templates] +SDTC_BOOL = SDTC_BOOL( $var, $flags, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_LIST = SDTC_LIST( $var, $type, $flags, $def, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_OMANY = SDTC_OMANY( $var, $type, $flags, $def, $max, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_SSTR = SDTC_SSTR( $var, $type, $flags, $def, $length, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_VAR = SDTC_VAR( $var, $type, $flags, $def, $min, $max, $interval, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_ENUM = SDTC_ENUM( $var, $type, $flags, $def, $str, $strhelp, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname, $enumlist), + +[validation] +SDTC_OMANY = static_assert($max <= MAX_$type, "Maximum value for $var exceeds storage size"); +SDTC_VAR = static_assert($max <= MAX_$type, "Maximum value for $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 +guiproc = nullptr +load = nullptr +from = SL_MIN_VERSION +to = SL_MAX_VERSION +cat = SC_ADVANCED +patchcat = SC_NONE +startup = false +extver = SlXvFeatureTest() +patxname = nullptr +enumlist = + + +[SDTC_VAR] +var = gui.autosave_interval +type = SLE_UINT32 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL +def = 10 +min = 0 +max = 1440 +interval = 5 +str = STR_CONFIG_SETTING_AUTOSAVE +strhelp = STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT +strval = STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_MINUTES_CUSTOM +post_cb = AutosaveModeChanged +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.autosave_realtime +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_AUTOSAVE_REALTIME +strhelp = STR_CONFIG_SETTING_AUTOSAVE_REALTIME_HELPTEXT +post_cb = AutosaveModeChanged +patchcat = SC_PATCH +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.threaded_saves +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +cat = SC_EXPERT + +[SDTC_OMANY] +var = gui.date_format_in_default_names +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _savegame_date +str = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES +strhelp = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT +strval = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG + +[SDTC_BOOL] +var = gui.show_finances +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOWFINANCES +strhelp = STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.auto_scrolling +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 3 +str = STR_CONFIG_SETTING_AUTOSCROLL +strhelp = STR_CONFIG_SETTING_AUTOSCROLL_HELPTEXT +strval = STR_CONFIG_SETTING_AUTOSCROLL_DISABLED +cat = SC_BASIC + +[SDTC_VAR] +ifdef = UNIX +var = gui.scroll_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +min = 0 +max = 3 +str = STR_CONFIG_SETTING_SCROLLMODE +strhelp = STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT +strval = STR_CONFIG_SETTING_SCROLLMODE_DEFAULT +cat = SC_BASIC + +[SDTC_VAR] +ifndef = UNIX +var = gui.scroll_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 3 +str = STR_CONFIG_SETTING_SCROLLMODE +strhelp = STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT +strval = STR_CONFIG_SETTING_SCROLLMODE_DEFAULT +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.smooth_scroll +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SMOOTH_SCROLLING +strhelp = STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT + +[SDTC_OMANY] +var = gui.right_click_wnd_close +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = RCC_NO +min = RCC_NO +max = RCC_YES_EXCEPT_STICKY +full = _right_click_close +str = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE +strhelp = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE_HELPTEXT +strval = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE_NO +cat = SC_BASIC + +; We might need to emulate a right mouse button on mac +[SDTC_VAR] +ifdef = __APPLE__ +var = gui.right_mouse_btn_emulation +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU +strhelp = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT +strval = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.measure_tooltip +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_MEASURE_TOOLTIP +strhelp = STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.errmsg_duration +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 5 +min = 0 +max = 20 +str = STR_CONFIG_SETTING_ERRMSG_DURATION +strhelp = STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT +strval = STR_CONFIG_SETTING_SECONDS_VALUE + +[SDTC_VAR] +var = gui.hover_delay_ms +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL +def = 250 +min = 50 +max = 6000 +interval = 50 +str = STR_CONFIG_SETTING_HOVER_DELAY +strhelp = STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT +strval = STR_CONFIG_SETTING_HOVER_DELAY_VALUE +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); } + +[SDTC_BOOL] +var = gui.instant_tile_tooltip +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_INSTANT_TILE_TOOLTIP +strhelp = STR_CONFIG_SETTING_INSTANT_TILE_TOOLTIP_HELPTEXT +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.town_name_tooltip_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_TOWN_NAME_TOOLTIP_MODE +strhelp = STR_CONFIG_SETTING_TOWN_NAME_TOOLTIP_MODE_HELPTEXT +strval = STR_CONFIG_SETTING_TOWN_NAME_TOOLTIP_MODE_OFF +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.industry_tooltip_show +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_SHOW +strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_SHOW_HELPTEXT +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); } +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.industry_tooltip_show_name +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_NAME +strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_NAME_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.industry_tooltip_show_required +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_REQUIRED +strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_REQUIRED_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.industry_tooltip_show_stockpiled +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_STOCKPILED +strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_STOCKPILED_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.industry_tooltip_show_produced +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_PRODUCED +strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_PRODUCED_HELPTEXT +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.depot_tooltip_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_DEPOT_TOOLTIP_MODE +strhelp = STR_CONFIG_SETTING_DEPOT_TOOLTIP_MODE_HELPTEXT +strval = STR_CONFIG_SETTING_DEPOT_TOOLTIP_MODE_OFF +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.waypoint_viewport_tooltip_name +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_WAYPOINT_VIEWPORT_TOOLTIP_NAME +strhelp = STR_CONFIG_SETTING_WAYPOINT_VIEWPORT_TOOLTIP_NAME_HELPTEXT +strval = STR_CONFIG_SETTING_WAYPOINT_VIEWPORT_TOOLTIP_NAME_OFF +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.station_viewport_tooltip_name +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_NAME +strhelp = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_NAME_HELPTEXT +strval = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_NAME_OFF +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.station_viewport_tooltip_cargo +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_CARGO +strhelp = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_CARGO_HELPTEXT +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.station_rating_tooltip_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_STATION_RATING_TOOLTIP_MODE +strhelp = STR_CONFIG_SETTING_STATION_RATING_TOOLTIP_MODE_HELPTEXT +strval = STR_CONFIG_SETTING_STATION_RATING_TOOLTIP_MODE_OFF +patchcat = SC_PATCH + +[SDTC_OMANY] +var = gui.osk_activation +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +str = STR_CONFIG_SETTING_OSK_ACTIVATION +strhelp = STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT +strval = STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED +full = _osk_activation +def = 1 +min = 0 +max = 3 +cat = SC_BASIC + +[SDTC_VAR] +var = gui.toolbar_pos +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_TOOLBAR_POS +strhelp = STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT +strval = STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT +post_cb = v_PositionMainToolbar +cat = SC_BASIC + +[SDTC_VAR] +var = gui.statusbar_pos +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_STATUSBAR_POS +strhelp = STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT +strval = STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT +post_cb = v_PositionStatusbar +cat = SC_BASIC + +[SDTC_VAR] +var = gui.window_snap_radius +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL +def = 10 +min = 1 +max = 32 +str = STR_CONFIG_SETTING_SNAP_RADIUS +strhelp = STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT +strval = STR_CONFIG_SETTING_SNAP_RADIUS_VALUE +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.window_soft_limit +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL +def = 20 +min = 5 +max = 255 +interval = 1 +str = STR_CONFIG_SETTING_SOFT_LIMIT +strhelp = STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT +strval = STR_CONFIG_SETTING_SOFT_LIMIT_VALUE +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.zoom_min +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = ZOOM_LVL_MIN +min = ZOOM_LVL_MIN +max = ZOOM_LVL_OUT_4X +str = STR_CONFIG_SETTING_ZOOM_MIN +strhelp = STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT +strval = STR_CONFIG_SETTING_ZOOM_LVL_MIN +post_cb = ZoomMinMaxChanged +startup = true + +[SDTC_VAR] +var = gui.zoom_max +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = ZOOM_LVL_MAX +min = ZOOM_LVL_OUT_8X +max = ZOOM_LVL_MAX +str = STR_CONFIG_SETTING_ZOOM_MAX +strhelp = STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT +strval = STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X +post_cb = ZoomMinMaxChanged +guiproc = ZoomMaxCfgName +startup = true + +[SDTC_VAR] +var = gui.sprite_zoom_min +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = ZOOM_LVL_MIN +min = ZOOM_LVL_MIN +max = ZOOM_LVL_OUT_4X +str = STR_CONFIG_SETTING_SPRITE_ZOOM_MIN +strhelp = STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT +strval = STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN +post_cb = SpriteZoomMinChanged + +[SDTC_BOOL] +var = gui.population_in_label +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_POPULATION_IN_LABEL +strhelp = STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT +post_cb = [](auto) { UpdateAllTownVirtCoords(); } + +[SDTC_BOOL] +var = gui.city_in_label +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_CITY_IN_LABEL +strhelp = STR_CONFIG_SETTING_CITY_IN_LABEL_HELPTEXT +post_cb = [](auto) { UpdateAllTownVirtCoords(); } +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.link_terraform_toolbar +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR +strhelp = STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT + +[SDTC_VAR] +var = gui.smallmap_land_colour +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR +strhelp = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT +strval = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN +post_cb = RedrawSmallmap + +[SDTC_VAR] +var = gui.linkgraph_colours +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 3 +str = STR_CONFIG_SETTING_LINKGRAPH_COLOURS +strhelp = STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT +strval = STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_RED +post_cb = UpdateLinkgraphColours +cat = SC_BASIC + +[SDTC_VAR] +var = gui.liveries +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_LIVERIES +strhelp = STR_CONFIG_SETTING_LIVERIES_HELPTEXT +strval = STR_CONFIG_SETTING_LIVERIES_NONE +post_cb = InvalidateCompanyLiveryWindow + +[SDTC_VAR] +var = gui.starting_colour +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = COLOUR_END +min = 0 +max = COLOUR_END +str = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR +strhelp = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT +strval = STR_COLOUR_DARK_BLUE + +[SDTC_VAR] +var = gui.starting_colour_secondary +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = COLOUR_END +min = 0 +max = COLOUR_END +str = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY +strhelp = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT +strval = STR_COLOUR_SECONDARY_DARK_BLUE + +[SDTC_BOOL] +var = gui.auto_remove_signals +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS +strhelp = STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT +cat = SC_ADVANCED + +[SDTC_BOOL] +var = gui.prefer_teamchat +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_PREFER_TEAMCHAT +strhelp = STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.scrollwheel_scrolling +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING +strhelp = STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT +strval = STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM +cat = SC_BASIC + +[SDTC_VAR] +var = gui.scrollwheel_multiplier +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 5 +min = 1 +max = 15 +interval = 1 +str = STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER +strhelp = STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT +strval = STR_JUST_COMMA +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.show_slopes_on_viewport_map +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SLOPES +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SLOPES_HELPTEXT +patchcat = SC_PATCH +post_cb = ViewportMapLandscapeModeChanged + +[SDTC_BOOL] +var = gui.show_height_on_viewport_map +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_HEIGHT +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_HEIGHT_HELPTEXT +patchcat = SC_PATCH +post_cb = ViewportMapLandscapeModeChanged + +[SDTC_BOOL] +var = gui.show_bridges_on_map +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_BRIDGES +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_BRIDGES_HELPTEXT +patchcat = SC_PATCH +post_cb = ViewportMapLandscapeModeChanged + +[SDTC_BOOL] +var = gui.show_tunnels_on_map +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_TUNNELS +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_TUNNELS_HELPTEXT +patchcat = SC_PATCH +post_cb = ViewportMapShowTunnelModeChanged + +[SDTC_VAR] +var = gui.show_vehicle_route_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +interval = 1 +str = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_MODE +strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_MODE_HELPTEXT +strval = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_MODE_OFF +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } + +[SDTC_BOOL] +var = gui.show_vehicle_route_steps +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_STEPS +strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_STEPS_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } + +[SDTC_BOOL] +var = gui.show_vehicle_route +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_VEHICLE_ROUTE +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_VEHICLE_ROUTE_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } + +[SDTC_VAR] +var = gui.dash_level_of_route_lines +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL +def = 0 +min = 0 +max = 10 +interval = 1 +str = STR_CONFIG_SETTING_VIEWPORT_MAP_DRAW_ROUTE_DASH +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_DRAW_ROUTE_DASH_HELPTEXT +strval = STR_CONFIG_SETTING_VIEWPORT_MAP_DRAW_ROUTE_DASH_VALUE +patchcat = SC_PATCH +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.use_owner_colour_for_tunnelbridge +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_VIEWPORT_MAP_USE_OWNER_COLOUR_BRIDGE_TUNNEL +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_USE_OWNER_COLOUR_BRIDGE_TUNNEL_HELPTEXT +patchcat = SC_PATCH +post_cb = ViewportMapLandscapeModeChanged + +[SDTC_VAR] +var = gui.show_scrolling_viewport_on_map +type = SLE_UINT32 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 3 +min = 0 +max = 3 +interval = 1 +str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SCROLLING_VP +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SCROLLING_VP_HELPTEXT +strval = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SCROLLING_VP_NOTHING +patchcat = SC_PATCH + +[SDTC_ENUM] +var = gui.default_viewport_map_mode +type = SLE_UINT32 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 0 +enumlist = _viewport_map_modes +str = STR_CONFIG_SETTING_VIEWPORT_MAP_DEFAULT_MODE +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_DEFAULT_MODE_HELPTEXT +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.action_when_viewport_map_is_dblclicked +type = SLE_UINT32 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +interval = 1 +str = STR_CONFIG_SETTING_VIEWPORT_MAP_ACTION_DBLCLICK +strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_ACTION_DBLCLICK_HELPTEXT +strval = STR_CONFIG_SETTING_VIEWPORT_MAP_ACTION_DBLCLICK_DO_NOTHING +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.pause_on_newgame +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME +strhelp = STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.advanced_vehicle_list +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS +strhelp = STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT +strval = STR_CONFIG_SETTING_COMPANIES_OFF + +[SDTC_BOOL] +var = gui.timetable_in_ticks +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_TIMETABLE_IN_TICKS +strhelp = STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT +post_cb = ChangeTimetableInTicksMode +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.timetable_leftover_ticks +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_TIMETABLE_LEFTOVER_TICKS +strhelp = STR_CONFIG_SETTING_TIMETABLE_LEFTOVER_TICKS_HELPTEXT +post_cb = InvalidateVehTimetableWindow +patchcat = SC_PATCH +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.override_time_settings +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_OVERRIDE_TIME_SETTINGS +strhelp = STR_CONFIG_SETTING_OVERRIDE_TIME_SETTINGS_HELPTEXT +patchcat = SC_PATCH +post_cb = ChangeTimeOverrideMode + +[SDTC_BOOL] +var = gui.time_in_minutes +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_TIME_IN_MINUTES +strhelp = STR_CONFIG_SETTING_TIME_IN_MINUTES_HELPTEXT +patchcat = SC_PATCH +post_cb = UpdateTimeSettings + +[SDTC_VAR] +var = gui.ticks_per_minute +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +strval = STR_JUST_INT +def = 74 +min = 1 +max = 8192 +interval = 10 +str = STR_CONFIG_SETTING_TICKS_PER_MINUTE +strhelp = STR_CONFIG_SETTING_TICKS_PER_MINUTE_HELPTEXT +patchcat = SC_PATCH +post_cb = UpdateTimeSettings + +[SDTC_VAR] +var = gui.clock_offset +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +strval = STR_JUST_INT +def = 0 +min = 0 +max = 1439 +interval = 60 +str = STR_CONFIG_SETTING_CLOCK_OFFSET +strhelp = STR_CONFIG_SETTING_CLOCK_OFFSET_HELPTEXT +patchcat = SC_PATCH +post_cb = UpdateTimeSettings + +[SDTC_VAR] +var = gui.date_with_time +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 3 +str = STR_CONFIG_SETTING_DATE_WITH_TIME +strval = STR_CONFIG_SETTING_DATE_WITH_TIME_NONE +strhelp = STR_CONFIG_SETTING_DATE_WITH_TIME_HELPTEXT +patchcat = SC_PATCH +post_cb = UpdateTimeSettings + +[SDTC_BOOL] +var = gui.timetable_start_text_entry +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_TIMETABLE_START_TEXT_ENTRY +strhelp = STR_CONFIG_SETTING_TIMETABLE_START_TEXT_ENTRY_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.timetable_arrival_departure +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE +strhelp = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT +post_cb = InvalidateVehTimetableWindow + +[SDTC_VAR] +var = gui.max_departures +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +strval = STR_JUST_INT +def = 10 +min = 1 +max = 30 +interval = 1 +str = STR_CONFIG_MAX_DEPARTURES +strhelp = STR_CONFIG_MAX_DEPARTURES_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_VAR] +var = gui.max_departure_time +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +strval = STR_JUST_COMMA +def = 120 +min = 30 +max = 365 +interval = 1 +str = STR_CONFIG_MAX_DEPARTURE_TIME +strhelp = STR_CONFIG_MAX_DEPARTURE_TIME_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_VAR] +var = gui.max_departure_time_minutes +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +strval = STR_JUST_COMMA +def = 1440 +min = 30 +max = 5000 +interval = 30 +str = STR_CONFIG_MAX_DEPARTURE_TIME_MINUTES +strhelp = STR_CONFIG_MAX_DEPARTURE_TIME_MINUTES_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_VAR] +var = gui.departure_calc_frequency +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +strval = STR_JUST_INT +def = 10 +min = 1 +max = 120 +interval = 1 +str = STR_CONFIG_DEPARTURE_CALC_FREQUENCY +strhelp = STR_CONFIG_DEPARTURE_CALC_FREQUENCY_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.departure_show_vehicle +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_VEHICLE_NAME +strhelp = STR_CONFIG_DEPARTURE_VEHICLE_NAME_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_show_group +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_GROUP_NAME +strhelp = STR_CONFIG_DEPARTURE_GROUP_NAME_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_show_company +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_COMPANY_NAME +strhelp = STR_CONFIG_DEPARTURE_COMPANY_NAME_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_show_vehicle_type +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_VEHICLE_TYPE +strhelp = STR_CONFIG_DEPARTURE_VEHICLE_TYPE_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_show_vehicle_color +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_VEHICLE_COLOR +strhelp = STR_CONFIG_DEPARTURE_VEHICLE_COLOR_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_larger_font +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_LARGER_FONT +strhelp = STR_CONFIG_DEPARTURE_LARGER_FONT_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_destination_type +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_DESTINATION_TYPE +strhelp = STR_CONFIG_DEPARTURE_DESTINATION_TYPE_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_show_both +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_SHOW_BOTH +strhelp = STR_CONFIG_DEPARTURE_SHOW_BOTH_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_only_passengers +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_ONLY_PASSENGERS +strhelp = STR_CONFIG_DEPARTURE_ONLY_PASSENGERS_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_smart_terminus +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_SMART_TERMINUS +strhelp = STR_CONFIG_DEPARTURE_SMART_TERMINUS_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_show_all_stops +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_SHOW_ALL_STOPS +strhelp = STR_CONFIG_DEPARTURE_SHOW_ALL_STOPS_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.departure_merge_identical +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_DEPARTURE_MERGE_IDENTICAL +strhelp = STR_CONFIG_DEPARTURE_MERGE_IDENTICAL_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_VAR] +var = gui.departure_conditionals +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 2 +str = STR_CONFIG_DEPARTURE_CONDITIONALS +strval = STR_CONFIG_DEPARTURE_CONDITIONALS_1 +strhelp = STR_CONFIG_DEPARTURE_CONDITIONALS_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } + +[SDTC_BOOL] +var = gui.quick_goto +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_QUICKGOTO +strhelp = STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.loading_indicators +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_LOADING_INDICATORS +strhelp = STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT +strval = STR_CONFIG_SETTING_COMPANIES_OFF +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC + +[SDTC_VAR] +var = gui.default_rail_type +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE +strhelp = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT +strval = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST +cat = SC_BASIC + +[SDTC_VAR] +var = gui.default_road_type +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 3 +str = STR_CONFIG_SETTING_DEFAULT_ROAD_TYPE +strhelp = STR_CONFIG_SETTING_DEFAULT_ROAD_TYPE_HELPTEXT +strval = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.signal_gui_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 1 +str = STR_CONFIG_SETTING_SIGNAL_GUI_MODE +strhelp = STR_CONFIG_SETTING_SIGNAL_GUI_MODE_HELPTEXT +strval = STR_CONFIG_SETTING_SIGNAL_GUI_MODE_PATH +post_cb = ProgrammableSignalsShownChanged +cat = SC_ADVANCED + +[SDTC_VAR] +var = gui.default_signal_type +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 5 +min = 0 +max = 5 + +[SDTC_VAR] +var = gui.coloured_news_year +type = SLE_INT32 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 2000 +min = MIN_YEAR +max = MAX_YEAR +interval = 1 +str = STR_CONFIG_SETTING_COLOURED_NEWS_YEAR +strhelp = STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT +strval = STR_JUST_INT +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.cycle_signal_types +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 1 +interval = 1 +str = STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES +strhelp = STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT +strval = STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS +cat = SC_ADVANCED + +[SDTC_VAR] +var = gui.drag_signals_density +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 4 +min = 1 +max = 20 +str = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY +strhelp = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT +strval = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE +post_cb = [](auto) { InvalidateWindowData(WC_BUILD_SIGNAL, 0); } +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.drag_signals_fixed_distance +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE +strhelp = STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.semaphore_build_before +type = SLE_INT32 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 1950 +min = MIN_YEAR +max = MAX_YEAR +interval = 1 +str = STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE +strhelp = STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT +strval = STR_JUST_INT +post_cb = ResetSignalVariant + +[SDTC_BOOL] +var = gui.vehicle_income_warn +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_WARN_INCOME_LESS +strhelp = STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.order_review_system +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_ORDER_REVIEW +strhelp = STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT +strval = STR_CONFIG_SETTING_ORDER_REVIEW_OFF +cat = SC_BASIC + +[SDTC_ENUM] +var = gui.no_depot_order_warn +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_CONVERT_BOOL_TO_INT +def = 0 +enumlist = _no_depot_order_warn +str = STR_CONFIG_SETTING_WARN_NO_DEPOT_ORDER +strhelp = STR_CONFIG_SETTING_WARN_NO_DEPOT_ORDER_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.lost_vehicle_warn +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_WARN_LOST_VEHICLE +strhelp = STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.restriction_wait_vehicle_warn +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_WARN_RESTRICTION_WAIT_VEHICLE +strhelp = STR_CONFIG_SETTING_WARN_RESTRICTION_WAIT_VEHICLE_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.new_nonstop +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT +strhelp = STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.stop_location +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +min = 0 +max = 2 +interval = 1 +str = STR_CONFIG_SETTING_STOP_LOCATION +strhelp = STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT +strval = STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END +post_cb = [](auto) { SetWindowClassesDirty(WC_VEHICLE_ORDERS); } +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.keep_all_autosave +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false + +[SDTC_BOOL] +var = gui.autosave_on_exit +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.autosave_on_network_disconnect +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_AUTOSAVE_ON_NETWORK_DISCONNECT +strhelp = STR_CONFIG_SETTING_AUTOSAVE_ON_NETWORK_DISCONNECT_HELPTEXT +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.max_num_autosaves +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 16 +min = 0 +max = 255 + +[SDTC_VAR] +var = gui.max_num_lt_autosaves +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 8 +min = 0 +max = 255 +patchcat = SC_PATCH + +[SDTC_OMANY] +var = gui.savegame_overwrite_confirm +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +str = STR_CONFIG_SETTING_SAVEGAME_OVERWRITE_CONFIRM +strhelp = STR_CONFIG_SETTING_SAVEGAME_OVERWRITE_CONFIRM_HELPTEXT +strval = STR_CONFIG_SETTING_SAVEGAME_OVERWRITE_CONFIRM_DISABLED +full = _savegame_overwrite_confirm +def = 3 +min = 0 +max = 3 +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.auto_euro +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true + +[SDTC_VAR] +var = gui.news_message_timeout +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 2 +min = 1 +max = 255 + +[SDTC_BOOL] +var = gui.show_track_reservation +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION +strhelp = STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC + +[SDTC_VAR] +var = gui.station_numtracks +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 1 +min = 1 +max = 7 + +[SDTC_VAR] +var = gui.station_platlength +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 5 +min = 1 +max = 7 +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.station_dragdrop +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.station_show_coverage +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +cat = SC_BASIC + +[SDTC_BOOL] +var = gui.persistent_buildingtools +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS +strhelp = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT +cat = SC_BASIC + +[SDTC_VAR] +var = gui.station_gui_group_order +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 3 +min = 0 +max = 5 +interval = 1 + +[SDTC_VAR] +var = gui.station_gui_sort_by +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 0 +min = 0 +max = 3 +interval = 1 + +[SDTC_VAR] +var = gui.station_gui_sort_order +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 0 +min = 0 +max = 1 +interval = 1 + +[SDTC_VAR] +var = gui.missing_strings_threshold +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 25 +min = 1 +max = UINT8_MAX +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.graph_line_thickness +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 3 +min = 1 +max = 5 +str = STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS +strhelp = STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT +strval = STR_JUST_COMMA +post_cb = [](auto) { MarkWholeScreenDirty(); } + +[SDTC_BOOL] +var = gui.show_train_length_in_details +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOW_TRAIN_LENGTH_IN_DETAILS +strhelp = STR_CONFIG_SETTING_SHOW_TRAIN_LENGTH_IN_DETAILS_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_train_weight_ratios_in_details +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_TRAIN_WEIGHT_RATIOS_IN_DETAILS +strhelp = STR_CONFIG_SETTING_SHOW_TRAIN_WEIGHT_RATIOS_IN_DETAILS_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_vehicle_group_in_details +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_IN_DETAILS +strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_IN_DETAILS_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_vehicle_list_company_colour +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOW_VEHICLE_LIST_COMPANY_COLOUR +strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_LIST_COMPANY_COLOUR_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_restricted_signal_default +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_RESTRICTED_SIG_DEF +strhelp = STR_CONFIG_SETTING_SHOW_RESTRICTED_SIG_DEF_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { MarkWholeScreenDirty(); } + +[SDTC_BOOL] +var = gui.show_all_signal_default +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_ALL_SIG_DEF +strhelp = STR_CONFIG_SETTING_SHOW_ALL_SIG_DEF_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { UpdateRailGuiSprites(); MarkWholeScreenDirty(); } + +[SDTC_BOOL] +var = gui.show_adv_tracerestrict_features +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_ADV_TRACE_RESTRICT_FEATURES +strhelp = STR_CONFIG_SETTING_SHOW_ADV_TRACE_RESTRICT_FEATURES_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_progsig_ui +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_PROGSIG_FEATURES +strhelp = STR_CONFIG_SETTING_SHOW_PROGSIG_FEATURES_HELPTEXT +post_cb = ProgrammableSignalsShownChanged +cat = SC_ADVANCED +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_noentrysig_ui +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_NOENTRYSIG_FEATURES +strhelp = STR_CONFIG_SETTING_SHOW_NOENTRYSIG_FEATURES_HELPTEXT +post_cb = ProgrammableSignalsShownChanged +cat = SC_ADVANCED +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_veh_list_cargo_filter +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHOW_VEH_LIST_CARGO_FILTER +strhelp = STR_CONFIG_SETTING_SHOW_VEH_LIST_CARGO_FILTER_HELPTEXT +patchcat = SC_PATCH +post_cb = VehListCargoFilterShownChanged + +[SDTC_BOOL] +var = gui.enable_single_veh_shared_order_gui +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_ENABLE_SINGLE_VEH_SHARED_ORDER_GUI +strhelp = STR_CONFIG_SETTING_ENABLE_SINGLE_VEH_SHARED_ORDER_GUI_HELPTEXT +post_cb = EnableSingleVehSharedOrderGuiChanged +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_adv_load_mode_features +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_ADV_LOADING_MODE_FEATURES +strhelp = STR_CONFIG_SETTING_SHOW_ADV_LOADING_MODE_FEATURES_HELPTEXT +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.disable_top_veh_list_mass_actions +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_DISABLE_TOP_VEH_LIST_MASS_ACTIONS +strhelp = STR_CONFIG_SETTING_DISABLE_TOP_VEH_LIST_MASS_ACTIONS_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.adv_sig_bridge_tun_modes +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_ADV_SIG_BRIDGE_TUN_MODES +strhelp = STR_CONFIG_SETTING_ADV_SIG_BRIDGE_TUN_MODES_HELPTEXT +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.sort_track_types_by_speed +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SORT_TRACK_TYPES_BY_SPEED +strhelp = STR_CONFIG_SETTING_SORT_TRACK_TYPES_BY_SPEED_HELPTEXT +post_cb = ChangeTrackTypeSortMode +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_depot_sell_gui +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_DEPOT_SELL_GUI +strhelp = STR_CONFIG_SETTING_SHOW_DEPOT_SELL_GUI_HELPTEXT +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.open_vehicle_gui_clone_share +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_OPEN_VEHICLE_GUI_CLONE_SHARE +strhelp = STR_CONFIG_SETTING_OPEN_VEHICLE_GUI_CLONE_SHARE_HELPTEXT +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_newgrf_name +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_NEWGRF_NAME +strhelp = STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_ADVANCED + +[SDTC_BOOL] +var = gui.show_cargo_in_vehicle_lists +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS +strhelp = STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_ADVANCED + +[SDTC_BOOL] +var = gui.bigger_main_toolbar +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +post_cb = [](auto) { ReInitAllWindows(true); } +cat = SC_BASIC +patchcat = SC_PATCH +startup = true + +[SDTC_BOOL] +var = gui.show_wagon_intro_year +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_WAGON_INTRO_YEAR +strhelp = STR_CONFIG_SETTING_SHOW_WAGON_INTRO_YEAR_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_ADVANCED +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.vehicle_names +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_VEHICLE_NAMES +strhelp = STR_CONFIG_SETTING_VEHICLE_NAMES_HELPTEXT +strval = STR_CONFIG_SETTING_VEHICLE_NAMES_TRADITIONAL +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.shade_trees_on_slopes +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SHADED_TREES_ON_SLOPES +strhelp = STR_CONFIG_SETTING_SHADED_TREES_ON_SLOPES_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.demolish_confirm_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +min = 0 +max = 2 +str = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE +strhelp = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_HELPTEXT +strval = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_OFF +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.dual_pane_train_purchase_window +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW +strhelp = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); } + +[SDTC_BOOL] +var = gui.dual_pane_train_purchase_window_dual_buttons +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_DUAL_BUTTONS +strhelp = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_DUAL_BUTTONS_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { InvalidateWindowClassesData(WC_BUILD_VEHICLE); InvalidateWindowClassesData(WC_BUILD_VIRTUAL_TRAIN); } + +[SDTC_BOOL] +var = gui.allow_hiding_waypoint_labels +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_ALLOW_HIDE_WAYPOINT_LABEL +strhelp = STR_CONFIG_SETTING_ALLOW_HIDE_WAYPOINT_LABEL_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { MarkWholeScreenDirty(); InvalidateWindowClassesData(WC_WAYPOINT_VIEW, 0); } + +[SDTC_ENUM] +var = gui.disable_water_animation +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 255 +enumlist = _disable_water_animation +str = STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION +strhelp = STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_HELPTEXT +patchcat = SC_PATCH +post_cb = SpriteZoomMinChanged + +[SDTC_BOOL] +var = gui.show_order_occupancy_by_default +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_ORDER_OCCUPANCY_BY_DEFAULT +strhelp = STR_CONFIG_SETTING_SHOW_ORDER_OCCUPANCY_BY_DEFAULT_HELPTEXT +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_group_hierarchy_name +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_GROUP_HIERARCHY_NAME +strhelp = STR_CONFIG_SETTING_SHOW_GROUP_HIERARCHY_NAME_HELPTEXT +post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } +cat = SC_BASIC +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_vehicle_group_hierarchy_name +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_HIERARCHY_NAME +strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_HIERARCHY_NAME_HELPTEXT +post_cb = [](auto) { MarkWholeScreenDirty(); } +cat = SC_ADVANCED +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.show_order_number_vehicle_view +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SHOW_ORDER_NUMBER_IN_VEHICLE_VIEW +strhelp = STR_CONFIG_SETTING_SHOW_ORDER_NUMBER_IN_VEHICLE_VIEW_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { SetWindowClassesDirty(WC_VEHICLE_VIEW); } + +[SDTC_BOOL] +var = gui.hide_default_stop_location +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_HIDE_DEFAULT_STOP_LOCATION +strhelp = STR_CONFIG_SETTING_HIDE_DEFAULT_STOP_LOCATION_HELPTEXT +patchcat = SC_PATCH +post_cb = [](auto) { SetWindowClassesDirty(WC_VEHICLE_ORDERS); } + +; For the dedicated build we'll enable dates in logs by default. +[SDTC_BOOL] +ifdef = DEDICATED +var = gui.show_date_in_logs +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true + +[SDTC_BOOL] +ifndef = DEDICATED +var = gui.show_date_in_logs +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false + +[SDTC_VAR] +var = gui.settings_restriction_mode +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 0 +min = 0 +max = 2 + +[SDTC_VAR] +var = gui.developer +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 1 +min = 0 +max = 2 +post_cb = DeveloperModeChanged +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.newgrf_developer_tools +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +post_cb = InvalidateNewGRFChangeWindows +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.ai_developer_tools +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +post_cb = [](auto) { InvalidateWindowClassesData(WC_SCRIPT_SETTINGS); } +cat = SC_EXPERT +startup = true + +[SDTC_BOOL] +var = gui.scenario_developer +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +post_cb = InvalidateNewGRFChangeWindows + +[SDTC_BOOL] +var = gui.newgrf_show_old_versions +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.newgrf_default_palette +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +min = 0 +max = 1 +post_cb = UpdateNewGRFConfigPalette +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.console_show_unlisted +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = gui.newgrf_disable_big_gui +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +cat = SC_EXPERT +patchcat = SC_PATCH + +[SDTC_VAR] +var = gui.console_backlog_timeout +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 100 +min = 10 +max = 65500 + +[SDTC_VAR] +var = gui.console_backlog_length +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 100 +min = 10 +max = 65500 + +[SDTC_VAR] +var = gui.refresh_rate +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 60 +min = 10 +max = 1000 +cat = SC_EXPERT +startup = true + +[SDTC_VAR] +var = gui.fast_forward_speed_limit +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL | SF_NO_NETWORK +def = 2500 +min = 0 +max = 50000 +interval = 10 +str = STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT +strhelp = STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT +strval = STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL +cat = SC_BASIC + +[SDTC_VAR] +var = gui.network_chat_box_width_pct +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 40 +min = 10 +max = 100 +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.network_chat_box_height +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 25 +min = 5 +max = 255 +cat = SC_EXPERT + +[SDTC_VAR] +var = gui.network_chat_timeout +type = SLE_UINT16 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 20 +min = 1 +max = 65535 +cat = SC_EXPERT + +[SDTC_BOOL] +var = gui.scale_bevels +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +post_cb = [](auto) { SetupWidgetDimensions(); ReInitAllWindows(true); } +cat = SC_BASIC +startup = true + diff --git a/src/table/settings/multimedia_settings.ini b/src/table/settings/multimedia_settings.ini new file mode 100644 index 0000000000..962cdfbbc9 --- /dev/null +++ b/src/table/settings/multimedia_settings.ini @@ -0,0 +1,151 @@ +; 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 . +; + +; Multimedia (sound / music) settings as stored in the main configuration file ("openttd.cfg"). + +[pre-amble] + +const SettingTable _multimedia_settings = { +[post-amble] +}; +[templates] +SDTC_BOOL = SDTC_BOOL( $var, $flags, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_LIST = SDTC_LIST( $var, $type, $flags, $def, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_VAR = SDTC_VAR( $var, $type, $flags, $def, $min, $max, $interval, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), + +[validation] +SDTC_VAR = static_assert($max <= MAX_$type, "Maximum value for $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 +guiproc = nullptr +load = nullptr +from = SL_MIN_VERSION +to = SL_MAX_VERSION +cat = SC_ADVANCED +patchcat = SC_NONE +startup = false +extver = SlXvFeatureTest() +patxname = nullptr + + +[SDTC_BOOL] +var = sound.news_ticker +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_TICKER +strhelp = STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT + +[SDTC_BOOL] +var = sound.news_full +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_NEWS +strhelp = STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT + +[SDTC_BOOL] +var = sound.new_year +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_NEW_YEAR +strhelp = STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT + +[SDTC_BOOL] +var = sound.confirm +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_CONFIRM +strhelp = STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT + +[SDTC_BOOL] +var = sound.click_beep +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_CLICK +strhelp = STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT + +[SDTC_BOOL] +var = sound.disaster +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_DISASTER +strhelp = STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT + +[SDTC_BOOL] +var = sound.vehicle +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_VEHICLE +strhelp = STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT + +[SDTC_BOOL] +var = sound.ambient +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +str = STR_CONFIG_SETTING_SOUND_AMBIENT +strhelp = STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT + +[SDTC_VAR] +var = music.playlist +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 0 +min = 0 +max = 5 +interval = 1 +cat = SC_BASIC + +[SDTC_VAR] +var = music.music_vol +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 50 +min = 0 +max = 127 +interval = 1 +cat = SC_BASIC + +[SDTC_VAR] +var = music.effect_vol +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = 100 +min = 0 +max = 127 +interval = 1 +cat = SC_BASIC + +[SDTC_LIST] +var = music.custom_1 +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = nullptr +cat = SC_BASIC + +[SDTC_LIST] +var = music.custom_2 +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = nullptr +cat = SC_BASIC + +[SDTC_BOOL] +var = music.playing +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = true +cat = SC_BASIC + +[SDTC_BOOL] +var = music.shuffle +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +cat = SC_BASIC diff --git a/src/table/settings/news_display_settings.ini b/src/table/settings/news_display_settings.ini new file mode 100644 index 0000000000..d2b0aa7688 --- /dev/null +++ b/src/table/settings/news_display_settings.ini @@ -0,0 +1,215 @@ +; 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 . +; + +; News display settings as stored in the main configuration file ("openttd.cfg"). + +[pre-amble] +static constexpr std::initializer_list _news_display{ "off", "summarized", "full"}; + +const SettingTable _news_display_settings = { +[post-amble] +}; +[templates] +SDTC_OMANY = SDTC_OMANY( $var, $type, $flags, $def, $max, $full, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), + +[validation] +SDTC_OMANY = static_assert($max <= MAX_$type, "Maximum value for $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 +guiproc = nullptr +load = nullptr +from = SL_MIN_VERSION +to = SL_MAX_VERSION +cat = SC_ADVANCED +patchcat = SC_NONE +startup = false +extver = SlXvFeatureTest() +patxname = nullptr + + +[SDTC_OMANY] +var = news_display.arrival_player +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN +strhelp = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.arrival_other +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER +strhelp = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.accident +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS +strhelp = STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.accident_other +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_ACCIDENT_OTHER +strhelp = STR_CONFIG_SETTING_NEWS_ACCIDENT_OTHER_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.company_info +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION +strhelp = STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.open +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN +strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.close +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE +strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.economy +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES +strhelp = STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.production_player +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY +strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.production_other +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER +strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.production_nobody +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED +strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.advice +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_ADVICE +strhelp = STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.new_vehicles +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_NEW_VEHICLES +strhelp = STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.acceptance +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE +strhelp = STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.subsidies +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 1 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_SUBSIDIES +strhelp = STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + +[SDTC_OMANY] +var = news_display.general +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 2 +max = 2 +full = _news_display +str = STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION +strhelp = STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT +strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF + diff --git a/src/table/settings/scenario_settings.ini b/src/table/settings/scenario_settings.ini new file mode 100644 index 0000000000..74dedfdd4c --- /dev/null +++ b/src/table/settings/scenario_settings.ini @@ -0,0 +1,76 @@ +; 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 . +; + +; Scenario settings as stored in the main configuration file ("openttd.cfg"). + +[pre-amble] + +const SettingTable _scenario_settings = { +[post-amble] +}; +[templates] +SDTC_BOOL = SDTC_BOOL( $var, $flags, $def, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_LIST = SDTC_LIST( $var, $type, $flags, $def, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), +SDTC_VAR = SDTC_VAR( $var, $type, $flags, $def, $min, $max, $interval, $str, $strhelp, $strval, $pre_cb, $post_cb, $from, $to, $extver, $cat | $patchcat, $guiproc, $startup, $patxname), + +[validation] +SDTC_VAR = static_assert($max <= MAX_$type, "Maximum value for $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 +guiproc = nullptr +load = nullptr +from = SL_MIN_VERSION +to = SL_MAX_VERSION +cat = SC_ADVANCED +patchcat = SC_NONE +startup = false +extver = SlXvFeatureTest() +patxname = nullptr + + +[SDTC_BOOL] +var = scenario.multiple_buildings +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SCENARIO_MULTIPLE_BUILDINGS +strhelp = STR_CONFIG_SETTING_SCENARIO_MULTIPLE_BUILDINGS_HELPTEXT +patchcat = SC_PATCH + +[SDTC_BOOL] +var = scenario.house_ignore_dates +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_DATES +strhelp = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_DATES_HELPTEXT +patchcat = SC_PATCH + +[SDTC_VAR] +var = scenario.house_ignore_zones +type = SLE_UINT8 +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN +def = 0 +min = 0 +max = 2 +interval = 1 +str = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES +strhelp = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES_HELPTEXT +strval = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES_OFF +patchcat = SC_PATCH + +[SDTC_BOOL] +var = scenario.house_ignore_grf +flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC +def = false +str = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_GRF +strhelp = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_GRF_HELPTEXT +patchcat = SC_PATCH diff --git a/src/table/settings/settings.ini b/src/table/settings/settings.ini index cf46f93a85..5d28250dca 100644 --- a/src/table/settings/settings.ini +++ b/src/table/settings/settings.ini @@ -9,9 +9,6 @@ [pre-amble] /* Begin - Callback Functions for the various settings */ -static void v_PositionMainToolbar(int32 new_value); -static void v_PositionStatusbar(int32 new_value); -static void RedrawSmallmap(int32 new_value); static void StationSpreadChanged(int32 new_value); static void UpdateConsists(int32 new_value); static void TrainAccelerationModelChanged(int32 new_value); @@ -20,8 +17,6 @@ static void TrainBrakingModelChanged(int32 new_value); static void RoadVehAccelerationModelChanged(int32 new_value); static void TrainSlopeSteepnessChanged(int32 new_value); static void RoadVehSlopeSteepnessChanged(int32 new_value); -static void ProgrammableSignalsShownChanged(int32 new_value); -static void VehListCargoFilterShownChanged(int32 new_value); static void TownFoundingChanged(int32 new_value); static bool TownCouncilToleranceAdjust(int32 &new_value); static void DifficultyNoiseChange(int32 new_value); @@ -36,35 +31,20 @@ static bool CheckFreeformEdges(int32 &new_value); static void UpdateFreeformEdges(int32 new_value); static bool CheckDynamicEngines(int32 &new_value); static void StationCatchmentChanged(int32 new_value); -static void InvalidateVehTimetableWindow(int32 new_value); -static void ChangeTimetableInTicksMode(int32 new_value); -static void UpdateTimeSettings(int32 new_value); -static void ChangeTimeOverrideMode(int32 new_value); -static void DeveloperModeChanged(int32 new_value); static void ScriptMaxOpsChange(int32 new_value); static bool CheckScriptMaxMemoryChange(int32 &new_value); static void ScriptMaxMemoryChange(int32 new_value); static void InvalidateCompanyWindow(int32 new_value); -static void InvalidateCompanyLiveryWindow(int32 new_value); -static void InvalidateNewGRFChangeWindows(int32 new_value); -static void ZoomMinMaxChanged(int32 new_value); -static void SpriteZoomMinChanged(int32 new_value); static void MaxVehiclesChanged(int32 new_value); static void InvalidateShipPathCache(int32 new_value); static void ImprovedBreakdownsSettingChanged(int32 new_value); static bool DayLengthPreChange(int32 &new_value); static void DayLengthChanged(int32 new_value); -static void EnableSingleVehSharedOrderGuiChanged(int32 new_value); static void CheckYapfRailSignalPenalties(int32 new_value); -static void ViewportMapShowTunnelModeChanged(int32 new_value); -static void ViewportMapLandscapeModeChanged(int32 new_value); -static void UpdateLinkgraphColours(int32 new_value); static void ClimateThresholdModeChanged(int32 new_value); static void VelocityUnitsChanged(int32 new_value); -static void ChangeTrackTypeSortMode(int32 new_value); static void PublicRoadsSettingChange(int32 new_value); static void TrainSpeedAdaptationChanged(int32 new_value); -static void AutosaveModeChanged(int32 new_value); static bool CheckSharingRail(int32 &new_value); static void SharingRailChanged(int32 new_value); static bool CheckSharingRoad(int32 &new_value); @@ -87,7 +67,6 @@ static int64 LinkGraphDistModeXrefChillPP(int64 val); static bool LinkGraphDistributionSettingGUI(SettingOnGuiCtrlData &data); static bool OrderTownGrowthRate(SettingOnGuiCtrlData &data); static bool AllowRoadStopsUnderBridgesSettingGUI(SettingOnGuiCtrlData &data); -static bool ZoomMaxCfgName(SettingOnGuiCtrlData &data); static bool TreePlacerSettingGUI(SettingOnGuiCtrlData &data); /* End - GUI callbacks */ @@ -142,29 +121,6 @@ static const SettingDescEnumEntry _station_delivery_mode[] = { { 0, STR_NULL } }; -static const SettingDescEnumEntry _disable_water_animation[] = { -{ 255, STR_CONFIG_SETTING_OFF }, -{ 3, STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_8X }, -{ 4, STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_16X }, -{ 5, STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_32X }, -{ 0, STR_NULL } -}; - -static const SettingDescEnumEntry _no_depot_order_warn[] = { -{ 0, STR_CONFIG_SETTING_OFF }, -{ 2, STR_CONFIG_SETTING_WARN_NO_DEPOT_ORDER_IF_BREAKDOWNS_ON }, -{ 1, STR_CONFIG_SETTING_ON }, -{ 0, STR_NULL } -}; - -static const SettingDescEnumEntry _viewport_map_modes[] = { -{ VPMT_VEGETATION, STR_SMALLMAP_TYPE_VEGETATION }, -{ VPMT_OWNER, STR_SMALLMAP_TYPE_OWNERS }, -{ VPMT_ROUTES, STR_SMALLMAP_TYPE_ROUTES }, -{ VPMT_INDUSTRY, STR_SMALLMAP_TYPE_INDUSTRIES }, -{ 0, STR_NULL } -}; - static const SettingDescEnumEntry _vehicle_breakdown_modes[] = { { 0, STR_DISASTER_NONE }, { 64, STR_VERY_REDUCED }, @@ -4507,712 +4463,11 @@ cat = SC_BASIC patchcat = SC_PATCH patxname = ""safer_crossings.vehicle.safer_crossings"" - -;*************************************************************************** -; Unsaved setting variables. - -[SDTC_VAR] -var = gui.autosave_interval -type = SLE_UINT32 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL -def = 10 -min = 0 -max = 1440 -interval = 5 -str = STR_CONFIG_SETTING_AUTOSAVE -strhelp = STR_CONFIG_SETTING_AUTOSAVE_HELPTEXT -strval = STR_GAME_OPTIONS_AUTOSAVE_DROPDOWN_EVERY_MINUTES_CUSTOM -post_cb = AutosaveModeChanged -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.autosave_realtime -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_AUTOSAVE_REALTIME -strhelp = STR_CONFIG_SETTING_AUTOSAVE_REALTIME_HELPTEXT -post_cb = AutosaveModeChanged -patchcat = SC_PATCH -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.threaded_saves -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -cat = SC_EXPERT - -[SDTC_OMANY] -var = gui.date_format_in_default_names -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _savegame_date -str = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES -strhelp = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_HELPTEXT -strval = STR_CONFIG_SETTING_DATE_FORMAT_IN_SAVE_NAMES_LONG - -[SDTC_BOOL] -var = gui.show_finances -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOWFINANCES -strhelp = STR_CONFIG_SETTING_SHOWFINANCES_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.auto_scrolling -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 3 -str = STR_CONFIG_SETTING_AUTOSCROLL -strhelp = STR_CONFIG_SETTING_AUTOSCROLL_HELPTEXT -strval = STR_CONFIG_SETTING_AUTOSCROLL_DISABLED -cat = SC_BASIC - -[SDTC_VAR] -ifdef = UNIX -var = gui.scroll_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -min = 0 -max = 3 -str = STR_CONFIG_SETTING_SCROLLMODE -strhelp = STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT -strval = STR_CONFIG_SETTING_SCROLLMODE_DEFAULT -cat = SC_BASIC - -[SDTC_VAR] -ifndef = UNIX -var = gui.scroll_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 3 -str = STR_CONFIG_SETTING_SCROLLMODE -strhelp = STR_CONFIG_SETTING_SCROLLMODE_HELPTEXT -strval = STR_CONFIG_SETTING_SCROLLMODE_DEFAULT -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.smooth_scroll -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SMOOTH_SCROLLING -strhelp = STR_CONFIG_SETTING_SMOOTH_SCROLLING_HELPTEXT - -[SDTC_OMANY] -var = gui.right_click_wnd_close -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = RCC_NO -min = RCC_NO -max = RCC_YES_EXCEPT_STICKY -full = _right_click_close -str = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE -strhelp = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE_HELPTEXT -strval = STR_CONFIG_SETTING_RIGHT_MOUSE_WND_CLOSE_NO -cat = SC_BASIC - -; We might need to emulate a right mouse button on mac -[SDTC_VAR] -ifdef = __APPLE__ -var = gui.right_mouse_btn_emulation -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU -strhelp = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_HELPTEXT -strval = STR_CONFIG_SETTING_RIGHT_MOUSE_BTN_EMU_COMMAND -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.measure_tooltip -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_MEASURE_TOOLTIP -strhelp = STR_CONFIG_SETTING_MEASURE_TOOLTIP_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.errmsg_duration -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 5 -min = 0 -max = 20 -str = STR_CONFIG_SETTING_ERRMSG_DURATION -strhelp = STR_CONFIG_SETTING_ERRMSG_DURATION_HELPTEXT -strval = STR_CONFIG_SETTING_SECONDS_VALUE - -[SDTC_VAR] -var = gui.hover_delay_ms -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL -def = 250 -min = 50 -max = 6000 -interval = 50 -str = STR_CONFIG_SETTING_HOVER_DELAY -strhelp = STR_CONFIG_SETTING_HOVER_DELAY_HELPTEXT -strval = STR_CONFIG_SETTING_HOVER_DELAY_VALUE -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); } - -[SDTC_BOOL] -var = gui.instant_tile_tooltip -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_INSTANT_TILE_TOOLTIP -strhelp = STR_CONFIG_SETTING_INSTANT_TILE_TOOLTIP_HELPTEXT -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.town_name_tooltip_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_TOWN_NAME_TOOLTIP_MODE -strhelp = STR_CONFIG_SETTING_TOWN_NAME_TOOLTIP_MODE_HELPTEXT -strval = STR_CONFIG_SETTING_TOWN_NAME_TOOLTIP_MODE_OFF -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.industry_tooltip_show -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_SHOW -strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_SHOW_HELPTEXT -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); } -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.industry_tooltip_show_name -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_NAME -strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_NAME_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.industry_tooltip_show_required -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_REQUIRED -strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_REQUIRED_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.industry_tooltip_show_stockpiled -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_STOCKPILED -strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_STOCKPILED_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.industry_tooltip_show_produced -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_PRODUCED -strhelp = STR_CONFIG_SETTING_INDUSTRY_TOOLTIP_PRODUCED_HELPTEXT -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.depot_tooltip_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_DEPOT_TOOLTIP_MODE -strhelp = STR_CONFIG_SETTING_DEPOT_TOOLTIP_MODE_HELPTEXT -strval = STR_CONFIG_SETTING_DEPOT_TOOLTIP_MODE_OFF -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.waypoint_viewport_tooltip_name -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_WAYPOINT_VIEWPORT_TOOLTIP_NAME -strhelp = STR_CONFIG_SETTING_WAYPOINT_VIEWPORT_TOOLTIP_NAME_HELPTEXT -strval = STR_CONFIG_SETTING_WAYPOINT_VIEWPORT_TOOLTIP_NAME_OFF -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.station_viewport_tooltip_name -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_NAME -strhelp = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_NAME_HELPTEXT -strval = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_NAME_OFF -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.station_viewport_tooltip_cargo -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_CARGO -strhelp = STR_CONFIG_SETTING_STATION_VIEWPORT_TOOLTIP_CARGO_HELPTEXT -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.station_rating_tooltip_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_STATION_RATING_TOOLTIP_MODE -strhelp = STR_CONFIG_SETTING_STATION_RATING_TOOLTIP_MODE_HELPTEXT -strval = STR_CONFIG_SETTING_STATION_RATING_TOOLTIP_MODE_OFF -patchcat = SC_PATCH - -[SDTC_OMANY] -var = gui.osk_activation -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -str = STR_CONFIG_SETTING_OSK_ACTIVATION -strhelp = STR_CONFIG_SETTING_OSK_ACTIVATION_HELPTEXT -strval = STR_CONFIG_SETTING_OSK_ACTIVATION_DISABLED -full = _osk_activation -def = 1 -min = 0 -max = 3 -cat = SC_BASIC - -[SDTC_VAR] -var = gui.toolbar_pos -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_TOOLBAR_POS -strhelp = STR_CONFIG_SETTING_TOOLBAR_POS_HELPTEXT -strval = STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT -post_cb = v_PositionMainToolbar -cat = SC_BASIC - -[SDTC_VAR] -var = gui.statusbar_pos -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_STATUSBAR_POS -strhelp = STR_CONFIG_SETTING_STATUSBAR_POS_HELPTEXT -strval = STR_CONFIG_SETTING_HORIZONTAL_POS_LEFT -post_cb = v_PositionStatusbar -cat = SC_BASIC - -[SDTC_VAR] -var = gui.window_snap_radius -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL -def = 10 -min = 1 -max = 32 -str = STR_CONFIG_SETTING_SNAP_RADIUS -strhelp = STR_CONFIG_SETTING_SNAP_RADIUS_HELPTEXT -strval = STR_CONFIG_SETTING_SNAP_RADIUS_VALUE -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.window_soft_limit -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL -def = 20 -min = 5 -max = 255 -interval = 1 -str = STR_CONFIG_SETTING_SOFT_LIMIT -strhelp = STR_CONFIG_SETTING_SOFT_LIMIT_HELPTEXT -strval = STR_CONFIG_SETTING_SOFT_LIMIT_VALUE -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.zoom_min -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = ZOOM_LVL_MIN -min = ZOOM_LVL_MIN -max = ZOOM_LVL_OUT_4X -str = STR_CONFIG_SETTING_ZOOM_MIN -strhelp = STR_CONFIG_SETTING_ZOOM_MIN_HELPTEXT -strval = STR_CONFIG_SETTING_ZOOM_LVL_MIN -post_cb = ZoomMinMaxChanged -startup = true - -[SDTC_VAR] -var = gui.zoom_max -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = ZOOM_LVL_MAX -min = ZOOM_LVL_OUT_8X -max = ZOOM_LVL_MAX -str = STR_CONFIG_SETTING_ZOOM_MAX -strhelp = STR_CONFIG_SETTING_ZOOM_MAX_HELPTEXT -strval = STR_CONFIG_SETTING_ZOOM_LVL_OUT_2X -post_cb = ZoomMinMaxChanged -guiproc = ZoomMaxCfgName -startup = true - -[SDTC_VAR] -var = gui.sprite_zoom_min -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = ZOOM_LVL_MIN -min = ZOOM_LVL_MIN -max = ZOOM_LVL_OUT_4X -str = STR_CONFIG_SETTING_SPRITE_ZOOM_MIN -strhelp = STR_CONFIG_SETTING_SPRITE_ZOOM_MIN_HELPTEXT -strval = STR_CONFIG_SETTING_SPRITE_ZOOM_LVL_MIN -post_cb = SpriteZoomMinChanged -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.population_in_label -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_POPULATION_IN_LABEL -strhelp = STR_CONFIG_SETTING_POPULATION_IN_LABEL_HELPTEXT -post_cb = [](auto) { UpdateAllTownVirtCoords(); } - -[SDTC_BOOL] -var = gui.city_in_label -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_CITY_IN_LABEL -strhelp = STR_CONFIG_SETTING_CITY_IN_LABEL_HELPTEXT -post_cb = [](auto) { UpdateAllTownVirtCoords(); } -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.link_terraform_toolbar -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR -strhelp = STR_CONFIG_SETTING_LINK_TERRAFORM_TOOLBAR_HELPTEXT - -[SDTC_VAR] -var = gui.smallmap_land_colour -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR -strhelp = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_HELPTEXT -strval = STR_CONFIG_SETTING_SMALLMAP_LAND_COLOUR_GREEN -post_cb = RedrawSmallmap - -[SDTC_VAR] -var = gui.liveries -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_LIVERIES -strhelp = STR_CONFIG_SETTING_LIVERIES_HELPTEXT -strval = STR_CONFIG_SETTING_LIVERIES_NONE -post_cb = InvalidateCompanyLiveryWindow - -[SDTC_VAR] -var = gui.starting_colour -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = COLOUR_END -min = 0 -max = COLOUR_END -str = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR -strhelp = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_HELPTEXT -strval = STR_COLOUR_DARK_BLUE - -[SDTC_VAR] -var = gui.starting_colour_secondary -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = COLOUR_END -min = 0 -max = COLOUR_END -str = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY -strhelp = STR_CONFIG_SETTING_COMPANY_STARTING_COLOUR_SECONDARY_HELPTEXT -strval = STR_COLOUR_SECONDARY_DARK_BLUE - -[SDTC_BOOL] -var = gui.auto_remove_signals -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS -strhelp = STR_CONFIG_SETTING_AUTO_REMOVE_SIGNALS_HELPTEXT -cat = SC_ADVANCED - -[SDTC_BOOL] -var = gui.prefer_teamchat -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_PREFER_TEAMCHAT -strhelp = STR_CONFIG_SETTING_PREFER_TEAMCHAT_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.scrollwheel_scrolling -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING -strhelp = STR_CONFIG_SETTING_SCROLLWHEEL_SCROLLING_HELPTEXT -strval = STR_CONFIG_SETTING_SCROLLWHEEL_ZOOM -cat = SC_BASIC - -[SDTC_VAR] -var = gui.scrollwheel_multiplier -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 5 -min = 1 -max = 15 -interval = 1 -str = STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER -strhelp = STR_CONFIG_SETTING_SCROLLWHEEL_MULTIPLIER_HELPTEXT -strval = STR_JUST_COMMA -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.show_slopes_on_viewport_map -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SLOPES -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SLOPES_HELPTEXT -patchcat = SC_PATCH -post_cb = ViewportMapLandscapeModeChanged - -[SDTC_BOOL] -var = gui.show_height_on_viewport_map -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_HEIGHT -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_HEIGHT_HELPTEXT -patchcat = SC_PATCH -post_cb = ViewportMapLandscapeModeChanged - -[SDTC_BOOL] -var = gui.show_bridges_on_map -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_BRIDGES -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_BRIDGES_HELPTEXT -patchcat = SC_PATCH -post_cb = ViewportMapLandscapeModeChanged - -[SDTC_BOOL] -var = gui.show_tunnels_on_map -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_TUNNELS -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_TUNNELS_HELPTEXT -patchcat = SC_PATCH -post_cb = ViewportMapShowTunnelModeChanged - -[SDTC_VAR] -var = gui.show_vehicle_route_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -interval = 1 -str = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_MODE -strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_MODE_HELPTEXT -strval = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_MODE_OFF -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } - -[SDTC_BOOL] -var = gui.show_vehicle_route_steps -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_STEPS -strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_ROUTE_STEPS_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } - -[SDTC_BOOL] -var = gui.show_vehicle_route -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_VEHICLE_ROUTE -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_VEHICLE_ROUTE_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } - -[SDTC_VAR] -var = gui.dash_level_of_route_lines -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL -def = 0 -min = 0 -max = 10 -interval = 1 -str = STR_CONFIG_SETTING_VIEWPORT_MAP_DRAW_ROUTE_DASH -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_DRAW_ROUTE_DASH_HELPTEXT -strval = STR_CONFIG_SETTING_VIEWPORT_MAP_DRAW_ROUTE_DASH_VALUE -patchcat = SC_PATCH -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.use_owner_colour_for_tunnelbridge -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_VIEWPORT_MAP_USE_OWNER_COLOUR_BRIDGE_TUNNEL -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_USE_OWNER_COLOUR_BRIDGE_TUNNEL_HELPTEXT -patchcat = SC_PATCH -post_cb = ViewportMapLandscapeModeChanged - -[SDTC_VAR] -var = gui.show_scrolling_viewport_on_map -type = SLE_UINT32 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 3 -min = 0 -max = 3 -interval = 1 -str = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SCROLLING_VP -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SCROLLING_VP_HELPTEXT -strval = STR_CONFIG_SETTING_VIEWPORT_MAP_SHOW_SCROLLING_VP_NOTHING -patchcat = SC_PATCH - -[SDTC_ENUM] -var = gui.default_viewport_map_mode -type = SLE_UINT32 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 0 -enumlist = _viewport_map_modes -str = STR_CONFIG_SETTING_VIEWPORT_MAP_DEFAULT_MODE -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_DEFAULT_MODE_HELPTEXT -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.action_when_viewport_map_is_dblclicked -type = SLE_UINT32 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -interval = 1 -str = STR_CONFIG_SETTING_VIEWPORT_MAP_ACTION_DBLCLICK -strhelp = STR_CONFIG_SETTING_VIEWPORT_MAP_ACTION_DBLCLICK_HELPTEXT -strval = STR_CONFIG_SETTING_VIEWPORT_MAP_ACTION_DBLCLICK_DO_NOTHING -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.pause_on_newgame -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME -strhelp = STR_CONFIG_SETTING_PAUSE_ON_NEW_GAME_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.advanced_vehicle_list -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS -strhelp = STR_CONFIG_SETTING_ADVANCED_VEHICLE_LISTS_HELPTEXT -strval = STR_CONFIG_SETTING_COMPANIES_OFF - -[SDTC_BOOL] -var = gui.timetable_in_ticks -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_TIMETABLE_IN_TICKS -strhelp = STR_CONFIG_SETTING_TIMETABLE_IN_TICKS_HELPTEXT -post_cb = ChangeTimetableInTicksMode -cat = SC_EXPERT - ;; gui.time_in_minutes [SDT_NULL] length = 1 extver = SlXvFeatureTest(XSLFTO_AND, XSLFI_SPRINGPP, 7) -[SDTC_BOOL] -var = gui.timetable_leftover_ticks -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_TIMETABLE_LEFTOVER_TICKS -strhelp = STR_CONFIG_SETTING_TIMETABLE_LEFTOVER_TICKS_HELPTEXT -post_cb = InvalidateVehTimetableWindow -patchcat = SC_PATCH -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.override_time_settings -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_OVERRIDE_TIME_SETTINGS -strhelp = STR_CONFIG_SETTING_OVERRIDE_TIME_SETTINGS_HELPTEXT -patchcat = SC_PATCH -post_cb = ChangeTimeOverrideMode - -[SDTC_BOOL] -var = gui.time_in_minutes -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_TIME_IN_MINUTES -strhelp = STR_CONFIG_SETTING_TIME_IN_MINUTES_HELPTEXT -patchcat = SC_PATCH -post_cb = UpdateTimeSettings - -[SDTC_VAR] -var = gui.ticks_per_minute -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -strval = STR_JUST_INT -def = 74 -min = 1 -max = 8192 -interval = 10 -str = STR_CONFIG_SETTING_TICKS_PER_MINUTE -strhelp = STR_CONFIG_SETTING_TICKS_PER_MINUTE_HELPTEXT -patchcat = SC_PATCH -post_cb = UpdateTimeSettings - -[SDTC_VAR] -var = gui.clock_offset -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -strval = STR_JUST_INT -def = 0 -min = 0 -max = 1439 -interval = 60 -str = STR_CONFIG_SETTING_CLOCK_OFFSET -strhelp = STR_CONFIG_SETTING_CLOCK_OFFSET_HELPTEXT -patchcat = SC_PATCH -post_cb = UpdateTimeSettings - [SDT_BOOL] var = game_time.time_in_minutes def = false @@ -5255,1379 +4510,6 @@ patxname = ""game_time.clock_offset"" length = 1 extver = SlXvFeatureTest(XSLFTO_AND, XSLFI_SPRINGPP, 7) -[SDTC_VAR] -var = gui.date_with_time -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 3 -str = STR_CONFIG_SETTING_DATE_WITH_TIME -strval = STR_CONFIG_SETTING_DATE_WITH_TIME_NONE -strhelp = STR_CONFIG_SETTING_DATE_WITH_TIME_HELPTEXT -patchcat = SC_PATCH -post_cb = UpdateTimeSettings - -[SDTC_BOOL] -var = gui.timetable_start_text_entry -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_TIMETABLE_START_TEXT_ENTRY -strhelp = STR_CONFIG_SETTING_TIMETABLE_START_TEXT_ENTRY_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.timetable_arrival_departure -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE -strhelp = STR_CONFIG_SETTING_TIMETABLE_SHOW_ARRIVAL_DEPARTURE_HELPTEXT -post_cb = InvalidateVehTimetableWindow - -[SDTC_VAR] -var = gui.max_departures -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -strval = STR_JUST_INT -def = 10 -min = 1 -max = 30 -interval = 1 -str = STR_CONFIG_MAX_DEPARTURES -strhelp = STR_CONFIG_MAX_DEPARTURES_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_VAR] -var = gui.max_departure_time -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -strval = STR_JUST_COMMA -def = 120 -min = 30 -max = 365 -interval = 1 -str = STR_CONFIG_MAX_DEPARTURE_TIME -strhelp = STR_CONFIG_MAX_DEPARTURE_TIME_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_VAR] -var = gui.max_departure_time_minutes -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -strval = STR_JUST_COMMA -def = 1440 -min = 30 -max = 5000 -interval = 30 -str = STR_CONFIG_MAX_DEPARTURE_TIME_MINUTES -strhelp = STR_CONFIG_MAX_DEPARTURE_TIME_MINUTES_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_VAR] -var = gui.departure_calc_frequency -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -strval = STR_JUST_INT -def = 10 -min = 1 -max = 120 -interval = 1 -str = STR_CONFIG_DEPARTURE_CALC_FREQUENCY -strhelp = STR_CONFIG_DEPARTURE_CALC_FREQUENCY_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.departure_show_vehicle -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_VEHICLE_NAME -strhelp = STR_CONFIG_DEPARTURE_VEHICLE_NAME_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_show_group -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_GROUP_NAME -strhelp = STR_CONFIG_DEPARTURE_GROUP_NAME_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_show_company -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_COMPANY_NAME -strhelp = STR_CONFIG_DEPARTURE_COMPANY_NAME_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_show_vehicle_type -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_VEHICLE_TYPE -strhelp = STR_CONFIG_DEPARTURE_VEHICLE_TYPE_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_show_vehicle_color -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_VEHICLE_COLOR -strhelp = STR_CONFIG_DEPARTURE_VEHICLE_COLOR_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_larger_font -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_LARGER_FONT -strhelp = STR_CONFIG_DEPARTURE_LARGER_FONT_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_destination_type -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_DESTINATION_TYPE -strhelp = STR_CONFIG_DEPARTURE_DESTINATION_TYPE_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_show_both -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_SHOW_BOTH -strhelp = STR_CONFIG_DEPARTURE_SHOW_BOTH_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_only_passengers -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_ONLY_PASSENGERS -strhelp = STR_CONFIG_DEPARTURE_ONLY_PASSENGERS_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_smart_terminus -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_SMART_TERMINUS -strhelp = STR_CONFIG_DEPARTURE_SMART_TERMINUS_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_show_all_stops -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_SHOW_ALL_STOPS -strhelp = STR_CONFIG_DEPARTURE_SHOW_ALL_STOPS_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.departure_merge_identical -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_DEPARTURE_MERGE_IDENTICAL -strhelp = STR_CONFIG_DEPARTURE_MERGE_IDENTICAL_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_VAR] -var = gui.departure_conditionals -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 2 -str = STR_CONFIG_DEPARTURE_CONDITIONALS -strval = STR_CONFIG_DEPARTURE_CONDITIONALS_1 -strhelp = STR_CONFIG_DEPARTURE_CONDITIONALS_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_DEPARTURES_BOARD, 1); } - -[SDTC_BOOL] -var = gui.quick_goto -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_QUICKGOTO -strhelp = STR_CONFIG_SETTING_QUICKGOTO_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.loading_indicators -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_LOADING_INDICATORS -strhelp = STR_CONFIG_SETTING_LOADING_INDICATORS_HELPTEXT -strval = STR_CONFIG_SETTING_COMPANIES_OFF -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC - -[SDTC_VAR] -var = gui.default_rail_type -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE -strhelp = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_HELPTEXT -strval = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST -cat = SC_BASIC - -[SDTC_VAR] -var = gui.default_road_type -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 3 -str = STR_CONFIG_SETTING_DEFAULT_ROAD_TYPE -strhelp = STR_CONFIG_SETTING_DEFAULT_ROAD_TYPE_HELPTEXT -strval = STR_CONFIG_SETTING_DEFAULT_RAIL_TYPE_FIRST -cat = SC_BASIC - -[SDTC_VAR] -var = gui.signal_gui_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 1 -str = STR_CONFIG_SETTING_SIGNAL_GUI_MODE -strhelp = STR_CONFIG_SETTING_SIGNAL_GUI_MODE_HELPTEXT -strval = STR_CONFIG_SETTING_SIGNAL_GUI_MODE_PATH -post_cb = ProgrammableSignalsShownChanged -cat = SC_ADVANCED - -[SDTC_VAR] -var = gui.coloured_news_year -type = SLE_INT32 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 2000 -min = MIN_YEAR -max = MAX_YEAR -interval = 1 -str = STR_CONFIG_SETTING_COLOURED_NEWS_YEAR -strhelp = STR_CONFIG_SETTING_COLOURED_NEWS_YEAR_HELPTEXT -strval = STR_JUST_INT -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.cycle_signal_types -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 1 -interval = 1 -str = STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES -strhelp = STR_CONFIG_SETTING_CYCLE_SIGNAL_TYPES_HELPTEXT -strval = STR_CONFIG_SETTING_CYCLE_SIGNAL_PBS -cat = SC_ADVANCED - -[SDTC_VAR] -var = gui.default_signal_type -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 5 -min = 0 -max = 5 - -[SDTC_VAR] -var = gui.drag_signals_density -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 4 -min = 1 -max = 20 -str = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY -strhelp = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_HELPTEXT -strval = STR_CONFIG_SETTING_DRAG_SIGNALS_DENSITY_VALUE -post_cb = [](auto) { InvalidateWindowData(WC_BUILD_SIGNAL, 0); } -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.drag_signals_fixed_distance -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE -strhelp = STR_CONFIG_SETTING_DRAG_SIGNALS_FIXED_DISTANCE_HELPTEXT -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.semaphore_build_before -type = SLE_INT32 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 1950 -min = MIN_YEAR -max = MAX_YEAR -interval = 1 -str = STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE -strhelp = STR_CONFIG_SETTING_SEMAPHORE_BUILD_BEFORE_DATE_HELPTEXT -strval = STR_JUST_INT -post_cb = ResetSignalVariant - -[SDTC_BOOL] -var = gui.vehicle_income_warn -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_WARN_INCOME_LESS -strhelp = STR_CONFIG_SETTING_WARN_INCOME_LESS_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.order_review_system -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_ORDER_REVIEW -strhelp = STR_CONFIG_SETTING_ORDER_REVIEW_HELPTEXT -strval = STR_CONFIG_SETTING_ORDER_REVIEW_OFF -cat = SC_BASIC - -[SDTC_ENUM] -var = gui.no_depot_order_warn -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_CONVERT_BOOL_TO_INT -def = 0 -enumlist = _no_depot_order_warn -str = STR_CONFIG_SETTING_WARN_NO_DEPOT_ORDER -strhelp = STR_CONFIG_SETTING_WARN_NO_DEPOT_ORDER_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.lost_vehicle_warn -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_WARN_LOST_VEHICLE -strhelp = STR_CONFIG_SETTING_WARN_LOST_VEHICLE_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.restriction_wait_vehicle_warn -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_WARN_RESTRICTION_WAIT_VEHICLE -strhelp = STR_CONFIG_SETTING_WARN_RESTRICTION_WAIT_VEHICLE_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.new_nonstop -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT -strhelp = STR_CONFIG_SETTING_NONSTOP_BY_DEFAULT_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.stop_location -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -min = 0 -max = 2 -interval = 1 -str = STR_CONFIG_SETTING_STOP_LOCATION -strhelp = STR_CONFIG_SETTING_STOP_LOCATION_HELPTEXT -strval = STR_CONFIG_SETTING_STOP_LOCATION_NEAR_END -post_cb = [](auto) { SetWindowClassesDirty(WC_VEHICLE_ORDERS); } -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.keep_all_autosave -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false - -[SDTC_BOOL] -var = gui.autosave_on_exit -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.autosave_on_network_disconnect -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_AUTOSAVE_ON_NETWORK_DISCONNECT -strhelp = STR_CONFIG_SETTING_AUTOSAVE_ON_NETWORK_DISCONNECT_HELPTEXT -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.max_num_autosaves -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 16 -min = 0 -max = 255 - -[SDTC_VAR] -var = gui.max_num_lt_autosaves -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 8 -min = 0 -max = 255 -patchcat = SC_PATCH - -[SDTC_OMANY] -var = gui.savegame_overwrite_confirm -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -str = STR_CONFIG_SETTING_SAVEGAME_OVERWRITE_CONFIRM -strhelp = STR_CONFIG_SETTING_SAVEGAME_OVERWRITE_CONFIRM_HELPTEXT -strval = STR_CONFIG_SETTING_SAVEGAME_OVERWRITE_CONFIRM_DISABLED -full = _savegame_overwrite_confirm -def = 3 -min = 0 -max = 3 -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.auto_euro -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true - -[SDTC_VAR] -var = gui.news_message_timeout -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 2 -min = 1 -max = 255 - -[SDTC_BOOL] -var = gui.show_track_reservation -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION -strhelp = STR_CONFIG_SETTING_SHOW_TRACK_RESERVATION_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC - -[SDTC_VAR] -var = gui.station_numtracks -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 1 -min = 1 -max = 7 - -[SDTC_VAR] -var = gui.station_platlength -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 5 -min = 1 -max = 7 -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.station_dragdrop -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.station_show_coverage -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -cat = SC_BASIC - -[SDTC_BOOL] -var = gui.persistent_buildingtools -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS -strhelp = STR_CONFIG_SETTING_PERSISTENT_BUILDINGTOOLS_HELPTEXT -cat = SC_BASIC - -[SDTC_VAR] -var = gui.station_gui_group_order -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 3 -min = 0 -max = 5 -interval = 1 - -[SDTC_VAR] -var = gui.station_gui_sort_by -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 0 -min = 0 -max = 3 -interval = 1 - -[SDTC_VAR] -var = gui.station_gui_sort_order -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 0 -min = 0 -max = 1 -interval = 1 - -[SDTC_VAR] -var = gui.missing_strings_threshold -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 25 -min = 1 -max = UINT8_MAX -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.graph_line_thickness -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 3 -min = 1 -max = 5 -str = STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS -strhelp = STR_CONFIG_SETTING_GRAPH_LINE_THICKNESS_HELPTEXT -strval = STR_JUST_COMMA -post_cb = [](auto) { MarkWholeScreenDirty(); } - -[SDTC_BOOL] -var = gui.show_train_length_in_details -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOW_TRAIN_LENGTH_IN_DETAILS -strhelp = STR_CONFIG_SETTING_SHOW_TRAIN_LENGTH_IN_DETAILS_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_train_weight_ratios_in_details -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_TRAIN_WEIGHT_RATIOS_IN_DETAILS -strhelp = STR_CONFIG_SETTING_SHOW_TRAIN_WEIGHT_RATIOS_IN_DETAILS_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_vehicle_group_in_details -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_IN_DETAILS -strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_IN_DETAILS_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_vehicle_list_company_colour -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOW_VEHICLE_LIST_COMPANY_COLOUR -strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_LIST_COMPANY_COLOUR_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_restricted_signal_default -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_RESTRICTED_SIG_DEF -strhelp = STR_CONFIG_SETTING_SHOW_RESTRICTED_SIG_DEF_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { MarkWholeScreenDirty(); } - -[SDTC_BOOL] -var = gui.show_all_signal_default -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_ALL_SIG_DEF -strhelp = STR_CONFIG_SETTING_SHOW_ALL_SIG_DEF_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { UpdateRailGuiSprites(); MarkWholeScreenDirty(); } - -[SDTC_BOOL] -var = gui.show_adv_tracerestrict_features -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_ADV_TRACE_RESTRICT_FEATURES -strhelp = STR_CONFIG_SETTING_SHOW_ADV_TRACE_RESTRICT_FEATURES_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_progsig_ui -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_PROGSIG_FEATURES -strhelp = STR_CONFIG_SETTING_SHOW_PROGSIG_FEATURES_HELPTEXT -post_cb = ProgrammableSignalsShownChanged -cat = SC_ADVANCED -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_noentrysig_ui -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_NOENTRYSIG_FEATURES -strhelp = STR_CONFIG_SETTING_SHOW_NOENTRYSIG_FEATURES_HELPTEXT -post_cb = ProgrammableSignalsShownChanged -cat = SC_ADVANCED -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_veh_list_cargo_filter -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHOW_VEH_LIST_CARGO_FILTER -strhelp = STR_CONFIG_SETTING_SHOW_VEH_LIST_CARGO_FILTER_HELPTEXT -patchcat = SC_PATCH -post_cb = VehListCargoFilterShownChanged - -[SDTC_BOOL] -var = gui.enable_single_veh_shared_order_gui -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_ENABLE_SINGLE_VEH_SHARED_ORDER_GUI -strhelp = STR_CONFIG_SETTING_ENABLE_SINGLE_VEH_SHARED_ORDER_GUI_HELPTEXT -post_cb = EnableSingleVehSharedOrderGuiChanged -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_adv_load_mode_features -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_ADV_LOADING_MODE_FEATURES -strhelp = STR_CONFIG_SETTING_SHOW_ADV_LOADING_MODE_FEATURES_HELPTEXT -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.disable_top_veh_list_mass_actions -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_DISABLE_TOP_VEH_LIST_MASS_ACTIONS -strhelp = STR_CONFIG_SETTING_DISABLE_TOP_VEH_LIST_MASS_ACTIONS_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.adv_sig_bridge_tun_modes -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_ADV_SIG_BRIDGE_TUN_MODES -strhelp = STR_CONFIG_SETTING_ADV_SIG_BRIDGE_TUN_MODES_HELPTEXT -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.sort_track_types_by_speed -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SORT_TRACK_TYPES_BY_SPEED -strhelp = STR_CONFIG_SETTING_SORT_TRACK_TYPES_BY_SPEED_HELPTEXT -post_cb = ChangeTrackTypeSortMode -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_depot_sell_gui -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_DEPOT_SELL_GUI -strhelp = STR_CONFIG_SETTING_SHOW_DEPOT_SELL_GUI_HELPTEXT -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.open_vehicle_gui_clone_share -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_OPEN_VEHICLE_GUI_CLONE_SHARE -strhelp = STR_CONFIG_SETTING_OPEN_VEHICLE_GUI_CLONE_SHARE_HELPTEXT -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_newgrf_name -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_NEWGRF_NAME -strhelp = STR_CONFIG_SETTING_SHOW_NEWGRF_NAME_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_ADVANCED -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_cargo_in_vehicle_lists -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS -strhelp = STR_CONFIG_SETTING_SHOW_CARGO_IN_LISTS_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_ADVANCED -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.scale_bevels -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -post_cb = [](auto) { SetupWidgetDimensions(); ReInitAllWindows(true); } -cat = SC_BASIC -startup = true - -[SDTC_BOOL] -var = gui.bigger_main_toolbar -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -post_cb = [](auto) { ReInitAllWindows(true); } -cat = SC_BASIC -patchcat = SC_PATCH -startup = true - -[SDTC_BOOL] -var = gui.show_wagon_intro_year -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_WAGON_INTRO_YEAR -strhelp = STR_CONFIG_SETTING_SHOW_WAGON_INTRO_YEAR_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_ADVANCED -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.linkgraph_colours -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 3 -str = STR_CONFIG_SETTING_LINKGRAPH_COLOURS -strhelp = STR_CONFIG_SETTING_LINKGRAPH_COLOURS_HELPTEXT -strval = STR_CONFIG_SETTING_LINKGRAPH_COLOURS_GREEN_TO_RED -post_cb = UpdateLinkgraphColours -cat = SC_BASIC - -[SDTC_VAR] -var = gui.vehicle_names -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_VEHICLE_NAMES -strhelp = STR_CONFIG_SETTING_VEHICLE_NAMES_HELPTEXT -strval = STR_CONFIG_SETTING_VEHICLE_NAMES_TRADITIONAL -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.shade_trees_on_slopes -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SHADED_TREES_ON_SLOPES -strhelp = STR_CONFIG_SETTING_SHADED_TREES_ON_SLOPES_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.demolish_confirm_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -min = 0 -max = 2 -str = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE -strhelp = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_HELPTEXT -strval = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_OFF -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.dual_pane_train_purchase_window -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW -strhelp = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); } - -[SDTC_BOOL] -var = gui.dual_pane_train_purchase_window_dual_buttons -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_DUAL_BUTTONS -strhelp = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_DUAL_BUTTONS_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { InvalidateWindowClassesData(WC_BUILD_VEHICLE); InvalidateWindowClassesData(WC_BUILD_VIRTUAL_TRAIN); } - -[SDTC_BOOL] -var = gui.allow_hiding_waypoint_labels -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_ALLOW_HIDE_WAYPOINT_LABEL -strhelp = STR_CONFIG_SETTING_ALLOW_HIDE_WAYPOINT_LABEL_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { MarkWholeScreenDirty(); InvalidateWindowClassesData(WC_WAYPOINT_VIEW, 0); } - -[SDTC_ENUM] -var = gui.disable_water_animation -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 255 -enumlist = _disable_water_animation -str = STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION -strhelp = STR_CONFIG_SETTING_DISABLE_WATER_ANIMATION_HELPTEXT -patchcat = SC_PATCH -post_cb = SpriteZoomMinChanged - -[SDTC_BOOL] -var = gui.show_order_occupancy_by_default -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_ORDER_OCCUPANCY_BY_DEFAULT -strhelp = STR_CONFIG_SETTING_SHOW_ORDER_OCCUPANCY_BY_DEFAULT_HELPTEXT -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_group_hierarchy_name -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_GROUP_HIERARCHY_NAME -strhelp = STR_CONFIG_SETTING_SHOW_GROUP_HIERARCHY_NAME_HELPTEXT -post_cb = [](auto) { InvalidateWindowClassesData(WC_GAME_OPTIONS); MarkWholeScreenDirty(); } -cat = SC_BASIC -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_vehicle_group_hierarchy_name -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_HIERARCHY_NAME -strhelp = STR_CONFIG_SETTING_SHOW_VEHICLE_GROUP_HIERARCHY_NAME_HELPTEXT -post_cb = [](auto) { MarkWholeScreenDirty(); } -cat = SC_ADVANCED -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.show_order_number_vehicle_view -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SHOW_ORDER_NUMBER_IN_VEHICLE_VIEW -strhelp = STR_CONFIG_SETTING_SHOW_ORDER_NUMBER_IN_VEHICLE_VIEW_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { SetWindowClassesDirty(WC_VEHICLE_VIEW); } - -[SDTC_BOOL] -var = gui.hide_default_stop_location -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_HIDE_DEFAULT_STOP_LOCATION -strhelp = STR_CONFIG_SETTING_HIDE_DEFAULT_STOP_LOCATION_HELPTEXT -patchcat = SC_PATCH -post_cb = [](auto) { SetWindowClassesDirty(WC_VEHICLE_ORDERS); } - -; For the dedicated build we'll enable dates in logs by default. -[SDTC_BOOL] -ifdef = DEDICATED -var = gui.show_date_in_logs -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true - -[SDTC_BOOL] -ifndef = DEDICATED -var = gui.show_date_in_logs -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false - -[SDTC_VAR] -var = gui.settings_restriction_mode -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 0 -min = 0 -max = 2 - -[SDTC_VAR] -var = gui.developer -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 1 -min = 0 -max = 2 -post_cb = DeveloperModeChanged -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.newgrf_developer_tools -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -post_cb = InvalidateNewGRFChangeWindows -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.ai_developer_tools -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -post_cb = [](auto) { InvalidateWindowClassesData(WC_SCRIPT_SETTINGS); } -cat = SC_EXPERT -startup = true - -[SDTC_BOOL] -var = gui.scenario_developer -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -post_cb = InvalidateNewGRFChangeWindows - -[SDTC_BOOL] -var = gui.newgrf_show_old_versions -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.newgrf_default_palette -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -min = 0 -max = 1 -post_cb = UpdateNewGRFConfigPalette -cat = SC_EXPERT - -[SDTC_BOOL] -var = gui.console_show_unlisted -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = gui.newgrf_disable_big_gui -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -cat = SC_EXPERT -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.console_backlog_timeout -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 100 -min = 10 -max = 65500 - -[SDTC_VAR] -var = gui.console_backlog_length -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 100 -min = 10 -max = 65500 - -[SDTC_VAR] -var = gui.refresh_rate -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 60 -min = 10 -max = 1000 -cat = SC_EXPERT -startup = true - -[SDTC_VAR] -var = gui.fast_forward_speed_limit -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_0_IS_SPECIAL | SF_NO_NETWORK -def = 2500 -min = 0 -max = 50000 -interval = 10 -str = STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT -strhelp = STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_HELPTEXT -strval = STR_CONFIG_SETTING_FAST_FORWARD_SPEED_LIMIT_VAL -cat = SC_BASIC - -[SDTC_BOOL] -var = sound.news_ticker -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_TICKER -strhelp = STR_CONFIG_SETTING_SOUND_TICKER_HELPTEXT - -[SDTC_BOOL] -var = sound.news_full -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_NEWS -strhelp = STR_CONFIG_SETTING_SOUND_NEWS_HELPTEXT - -[SDTC_BOOL] -var = sound.new_year -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_NEW_YEAR -strhelp = STR_CONFIG_SETTING_SOUND_NEW_YEAR_HELPTEXT - -[SDTC_BOOL] -var = sound.confirm -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_CONFIRM -strhelp = STR_CONFIG_SETTING_SOUND_CONFIRM_HELPTEXT - -[SDTC_BOOL] -var = sound.click_beep -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_CLICK -strhelp = STR_CONFIG_SETTING_SOUND_CLICK_HELPTEXT - -[SDTC_BOOL] -var = sound.disaster -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_DISASTER -strhelp = STR_CONFIG_SETTING_SOUND_DISASTER_HELPTEXT - -[SDTC_BOOL] -var = sound.vehicle -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_VEHICLE -strhelp = STR_CONFIG_SETTING_SOUND_VEHICLE_HELPTEXT - -[SDTC_BOOL] -var = sound.ambient -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -str = STR_CONFIG_SETTING_SOUND_AMBIENT -strhelp = STR_CONFIG_SETTING_SOUND_AMBIENT_HELPTEXT - -[SDTC_VAR] -var = music.playlist -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 0 -min = 0 -max = 5 -interval = 1 -cat = SC_BASIC - -[SDTC_VAR] -var = music.music_vol -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 50 -min = 0 -max = 127 -interval = 1 -cat = SC_BASIC - -[SDTC_VAR] -var = music.effect_vol -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 100 -min = 0 -max = 127 -interval = 1 -cat = SC_BASIC - -[SDTC_LIST] -var = music.custom_1 -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = nullptr -cat = SC_BASIC - -[SDTC_LIST] -var = music.custom_2 -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = nullptr -cat = SC_BASIC - -[SDTC_BOOL] -var = music.playing -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = true -cat = SC_BASIC - -[SDTC_BOOL] -var = music.shuffle -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -cat = SC_BASIC - -[SDTC_OMANY] -var = news_display.arrival_player -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN -strhelp = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OWN_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.arrival_other -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER -strhelp = STR_CONFIG_SETTING_NEWS_ARRIVAL_FIRST_VEHICLE_OTHER_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.accident -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS -strhelp = STR_CONFIG_SETTING_NEWS_ACCIDENTS_DISASTERS_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.accident_other -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_ACCIDENT_OTHER -strhelp = STR_CONFIG_SETTING_NEWS_ACCIDENT_OTHER_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.company_info -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION -strhelp = STR_CONFIG_SETTING_NEWS_COMPANY_INFORMATION_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.open -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN -strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_OPEN_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.close -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE -strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CLOSE_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.economy -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES -strhelp = STR_CONFIG_SETTING_NEWS_ECONOMY_CHANGES_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.production_player -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY -strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_COMPANY_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.production_other -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER -strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_OTHER_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.production_nobody -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED -strhelp = STR_CONFIG_SETTING_NEWS_INDUSTRY_CHANGES_UNSERVED_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.advice -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_ADVICE -strhelp = STR_CONFIG_SETTING_NEWS_ADVICE_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.new_vehicles -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_NEW_VEHICLES -strhelp = STR_CONFIG_SETTING_NEWS_NEW_VEHICLES_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.acceptance -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE -strhelp = STR_CONFIG_SETTING_NEWS_CHANGES_ACCEPTANCE_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.subsidies -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 1 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_SUBSIDIES -strhelp = STR_CONFIG_SETTING_NEWS_SUBSIDIES_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_OMANY] -var = news_display.general -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 2 -max = 2 -full = _news_display -str = STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION -strhelp = STR_CONFIG_SETTING_NEWS_GENERAL_INFORMATION_HELPTEXT -strval = STR_CONFIG_SETTING_NEWS_MESSAGES_OFF - -[SDTC_BOOL] -var = scenario.multiple_buildings -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SCENARIO_MULTIPLE_BUILDINGS -strhelp = STR_CONFIG_SETTING_SCENARIO_MULTIPLE_BUILDINGS_HELPTEXT -patchcat = SC_PATCH - -[SDTC_BOOL] -var = scenario.house_ignore_dates -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_DATES -strhelp = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_DATES_HELPTEXT -patchcat = SC_PATCH - -[SDTC_VAR] -var = scenario.house_ignore_zones -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC | SF_GUI_DROPDOWN -def = 0 -min = 0 -max = 2 -interval = 1 -str = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES -strhelp = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES_HELPTEXT -strval = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_ZONES_OFF -patchcat = SC_PATCH - -[SDTC_BOOL] -var = scenario.house_ignore_grf -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = false -str = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_GRF -strhelp = STR_CONFIG_SETTING_SCENARIO_HOUSE_IGNORE_GRF_HELPTEXT -patchcat = SC_PATCH - -[SDTC_VAR] -var = gui.network_chat_box_width_pct -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 40 -min = 10 -max = 100 -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.network_chat_box_height -type = SLE_UINT8 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 25 -min = 5 -max = 255 -cat = SC_EXPERT - -[SDTC_VAR] -var = gui.network_chat_timeout -type = SLE_UINT16 -flags = SF_NOT_IN_SAVE | SF_NO_NETWORK_SYNC -def = 20 -min = 1 -max = 65535 -cat = SC_EXPERT - [SDT_BOOL] var = vehicle.pay_for_repair def = true