Stop using operator delete for window removal
commit22a7b8c1cf3431519082ec43b35f8dda46ec1c98
authorcirdan <cirdansw@gmail.com>
Thu, 14 Jan 2016 19:03:21 +0000 (14 20:03 +0100)
committercirdan <cirdansw@gmail.com>
Thu, 14 Jan 2016 19:03:21 +0000 (14 20:03 +0100)
treea586500caeccc4d81fea65475226135950a65993
parente2f29084ed7ddcbbee90357069e8b1af6dac193a
Stop using operator delete for window removal

Add a method Window::Delete to remove a window from the window
stack, and use it instead of overriding operator delete, which
has some nasty side effects. This also adds a virtual method
Window::OnDelete so that derived classes can add their own custom
handling, such as triggering removal of other windows.
34 files changed:
src/ai/ai_gui.cpp
src/airport_gui.cpp
src/bootstrap_gui.cpp
src/bridge_gui.cpp
src/company_gui.cpp
src/console_gui.cpp
src/date_gui.cpp
src/depot_gui.cpp
src/dock_gui.cpp
src/engine_gui.cpp
src/error_gui.cpp
src/fios_gui.cpp
src/goal_gui.cpp
src/group_gui.cpp
src/highscore_gui.cpp
src/industry_gui.cpp
src/misc_gui.cpp
src/network/network_chat_gui.cpp
src/network/network_content_gui.cpp
src/network/network_gui.cpp
src/newgrf_gui.cpp
src/news_gui.cpp
src/osk_gui.cpp
src/rail_gui.cpp
src/road_gui.cpp
src/settings_gui.cpp
src/signs_gui.cpp
src/station_gui.cpp
src/town_gui.cpp
src/vehicle_gui.cpp
src/waypoint_gui.cpp
src/widgets/dropdown.cpp
src/window.cpp
src/window_gui.h