Add setting for whether to use dual pane train purchase window

pull/287/head
Jonathan G Rennison 3 years ago
parent 70f7509126
commit 5e418128da

@ -2876,7 +2876,7 @@ static WindowDesc _build_template_vehicle_desc(
WDP_AUTO, "build_vehicle", 240, 268,
WC_BUILD_VIRTUAL_TRAIN, WC_CREATE_TEMPLATE,
WDF_CONSTRUCTION,
_nested_build_vehicle_widgets_train_advanced, lengthof(_nested_build_vehicle_widgets_train_advanced)
_nested_build_vehicle_widgets, lengthof(_nested_build_vehicle_widgets)
);
static WindowDesc _build_vehicle_desc_train_advanced(
@ -2886,6 +2886,13 @@ static WindowDesc _build_vehicle_desc_train_advanced(
_nested_build_vehicle_widgets_train_advanced, lengthof(_nested_build_vehicle_widgets_train_advanced)
);
static WindowDesc _build_template_vehicle_desc_advanced(
WDP_AUTO, "build_vehicle", 480, 268,
WC_BUILD_VIRTUAL_TRAIN, WC_CREATE_TEMPLATE,
WDF_CONSTRUCTION,
_nested_build_vehicle_widgets_train_advanced, lengthof(_nested_build_vehicle_widgets_train_advanced)
);
void ShowBuildVehicleWindow(const TileIndex tile, const VehicleType type)
{
@ -2899,7 +2906,7 @@ void ShowBuildVehicleWindow(const TileIndex tile, const VehicleType type)
DeleteWindowById(WC_BUILD_VEHICLE, num);
if(type == VEH_TRAIN) {
if (type == VEH_TRAIN && _settings_client.gui.dual_pane_train_purchase_window) {
new BuildVehicleWindowTrainAdvanced(&_build_vehicle_desc_train_advanced, tile, nullptr);
} else {
new BuildVehicleWindow(&_build_vehicle_desc, tile, type, nullptr);
@ -2912,5 +2919,9 @@ void ShowTemplateTrainBuildVehicleWindow(Train **virtual_train)
DeleteWindowById(WC_BUILD_VIRTUAL_TRAIN, 0);
new BuildVehicleWindowTrainAdvanced(&_build_template_vehicle_desc, INVALID_TILE, virtual_train);
if (_settings_client.gui.dual_pane_train_purchase_window) {
new BuildVehicleWindowTrainAdvanced(&_build_template_vehicle_desc_advanced, INVALID_TILE, virtual_train);
} else {
new BuildVehicleWindow(&_build_template_vehicle_desc, INVALID_TILE, VEH_TRAIN, virtual_train);
}
}

@ -1476,6 +1476,9 @@ STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_OFF :Off
STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_INDUSTRY :Industries
STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_ALL :Industries and rail stations
STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW :Separate locomotives and wagons in train purchase window: {STRING2}
STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_HELPTEXT :When enabled, the train purchase window shows locomotives and wagons in separate side-by-side lists.
STR_CONFIG_SETTING_ADV_SIG_BRIDGE_TUN_MODES :Enable signals on bridges/tunnels advanced modes: {STRING2}
STR_CONFIG_SETTING_ADV_SIG_BRIDGE_TUN_MODES_HELPTEXT :Enables use of advanced modes of signal simulation on bridges and tunnels. When disabled, bridges/tunnels which are not already in an advanced mode cannot be changed to an advanced mode, however other players may choose to enable this setting and use an advanced mode.

@ -1842,6 +1842,7 @@ static SettingsContainer &GetSettingsTree()
interface->Add(new SettingEntry("gui.open_vehicle_gui_clone_share"));
interface->Add(new SettingEntry("gui.vehicle_names"));
interface->Add(new SettingEntry("gui.station_rating_tooltip_mode"));
interface->Add(new SettingEntry("gui.dual_pane_train_purchase_window"));
}
SettingsPage *advisors = main->Add(new SettingsPage(STR_CONFIG_SETTING_ADVISORS));

@ -223,6 +223,7 @@ struct GUISettings : public TimeSettings {
bool shade_trees_on_slopes; ///< Shade trees on slopes
uint8 station_rating_tooltip_mode; ///< Station rating tooltip mode
uint8 demolish_confirm_mode; ///< Demolition confirmation mode
bool dual_pane_train_purchase_window; ///< Dual pane train purchase window
uint16 console_backlog_timeout; ///< the minimum amount of time items should be in the console backlog before they will be removed in ~3 seconds granularity.
uint16 console_backlog_length; ///< the minimum amount of items in the console backlog before items will be removed.

@ -5539,6 +5539,13 @@ strhelp = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_HELPTEXT
strval = STR_CONFIG_SETTING_DEMOLISH_CONFIRM_MODE_OFF
cat = SC_BASIC
[SDTC_BOOL]
var = gui.dual_pane_train_purchase_window
flags = SLF_NOT_IN_SAVE | SLF_NO_NETWORK_SYNC
def = true
str = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW
strhelp = STR_CONFIG_SETTING_DUAL_PANE_TRAIN_PURCHASE_WINDOW_HELPTEXT
; For the dedicated build we'll enable dates in logs by default.
[SDTC_BOOL]
ifdef = DEDICATED

Loading…
Cancel
Save