From f0e616ea2bb0f1a4f15feb8cb4d065de254dc905 Mon Sep 17 00:00:00 2001 From: celestar Date: Thu, 20 Jan 2005 08:36:15 +0000 Subject: [PATCH] (svn r1573) -Fix: Station and depot building mode is now terminated if the corresponding windows are closed [ 1104277 ] --- airport_gui.c | 4 ++++ dock_gui.c | 8 ++++++++ rail_gui.c | 9 +++++++++ road_gui.c | 8 ++++++++ 4 files changed, 29 insertions(+) diff --git a/airport_gui.c b/airport_gui.c index 54a0e3649d..f5537ecc7c 100644 --- a/airport_gui.c +++ b/airport_gui.c @@ -203,6 +203,10 @@ static void BuildAirportPickerWndProc(Window *w, WindowEvent *e) CheckRedrawStationCoverage(w); } break; + + case WE_DESTROY: + ResetObjectToPlace(); + break; } } diff --git a/dock_gui.c b/dock_gui.c index 70fd73510e..aa9d01e254 100644 --- a/dock_gui.c +++ b/dock_gui.c @@ -254,6 +254,10 @@ static void BuildDockStationWndProc(Window *w, WindowEvent *e) CheckRedrawStationCoverage(w); break; } + + case WE_DESTROY: + ResetObjectToPlace(); + break; } } @@ -320,6 +324,10 @@ static void BuildDocksDepotWndProc(Window *w, WindowEvent *e) if (WP(w,def_d).close) DeleteWindow(w); break; + + case WE_DESTROY: + ResetObjectToPlace(); + break; } } diff --git a/rail_gui.c b/rail_gui.c index 2e86c535b1..de7b62b41d 100644 --- a/rail_gui.c +++ b/rail_gui.c @@ -819,7 +819,12 @@ static void StationBuildWndProc(Window *w, WindowEvent *e) { } CheckRedrawStationCoverage(w); } break; + + case WE_DESTROY: + ResetObjectToPlace(); + break; } + } static const Widget _station_builder_widgets[] = { @@ -902,6 +907,10 @@ static void BuildTrainDepotWndProc(Window *w, WindowEvent *e) if (WP(w,def_d).close) DeleteWindow(w); return; + + case WE_DESTROY: + ResetObjectToPlace(); + break; } } diff --git a/road_gui.c b/road_gui.c index dcd59d5b61..5d23b3f04e 100644 --- a/road_gui.c +++ b/road_gui.c @@ -372,6 +372,10 @@ static void BuildRoadDepotWndProc(Window *w, WindowEvent *e) { if (WP(w,def_d).close) DeleteWindow(w); break; + + case WE_DESTROY: + ResetObjectToPlace(); + break; } } @@ -461,6 +465,10 @@ static void RoadStationPickerWndProc(Window *w, WindowEvent *e) CheckRedrawStationCoverage(w); } break; + + case WE_DESTROY: + ResetObjectToPlace(); + break; } }