summaryrefslogtreecommitdiff
path: root/src/rail_gui.cpp
diff options
context:
space:
mode:
authorglx22 <glx@openttd.org>2021-05-15 23:12:25 +0200
committerLoïc Guilloux <glx22@users.noreply.github.com>2021-05-29 21:08:25 +0200
commit994bf19aef3dde6c9482434bdc51688f76a937ea (patch)
tree9b45b82d460cb00733144ba0dd64ebc6fde478c2 /src/rail_gui.cpp
parentef991b1772f5f8b4874f76ea715a9a95811ad979 (diff)
downloadopenttd-994bf19aef3dde6c9482434bdc51688f76a937ea.tar.xz
Fix f6d5c01: Delay deletion when closing windows
Diffstat (limited to 'src/rail_gui.cpp')
-rw-r--r--src/rail_gui.cpp9
1 files changed, 6 insertions, 3 deletions
diff --git a/src/rail_gui.cpp b/src/rail_gui.cpp
index 86f718984..bb5244ae7 100644
--- a/src/rail_gui.cpp
+++ b/src/rail_gui.cpp
@@ -434,10 +434,11 @@ struct BuildRailToolbarWindow : Window {
if (_settings_client.gui.link_terraform_toolbar) ShowTerraformToolbar(this);
}
- ~BuildRailToolbarWindow()
+ void Close() override
{
if (this->IsWidgetLowered(WID_RAT_BUILD_STATION)) SetViewportCatchmentStation(nullptr, true);
if (_settings_client.gui.link_terraform_toolbar) DeleteWindowById(WC_SCEN_LAND_GEN, 0, false);
+ this->Window::Close();
}
/**
@@ -1028,9 +1029,10 @@ public:
this->InvalidateData();
}
- virtual ~BuildRailStationWindow()
+ void Close() override
{
DeleteWindowById(WC_SELECT_STATION, 0);
+ this->PickerWindowBase::Close();
}
/** Sort station classes by StationClassID. */
@@ -1695,9 +1697,10 @@ public:
this->OnInvalidateData();
}
- ~BuildSignalWindow()
+ void Close() override
{
_convert_signal_button = false;
+ this->PickerWindowBase::Close();
}
void OnInit() override