Viewport: Refactor handling of vehicle route overlays

This commit is contained in:
Jonathan G Rennison
2023-05-06 19:14:39 +01:00
parent 31f476220d
commit 4c2244cc21
6 changed files with 126 additions and 101 deletions

View File

@@ -182,7 +182,7 @@ public:
~CargoTypeOrdersWindow()
{
if (!FocusWindowById(WC_VEHICLE_ORDERS, this->window_number)) {
MarkAllRouteStepsDirty(this->vehicle);
MarkDirtyFocusedRoutePaths(this->vehicle);
}
}
@@ -297,16 +297,14 @@ public:
virtual void OnFocus(Window *previously_focused_window) override
{
if (HasFocusedVehicleChanged(this->window_number, previously_focused_window)) {
MarkAllRoutePathsDirty(this->vehicle);
MarkAllRouteStepsDirty(this->vehicle);
MarkDirtyFocusedRoutePaths(this->vehicle);
}
}
virtual void OnFocusLost(Window *newly_focused_window) override
{
if (HasFocusedVehicleChanged(this->window_number, newly_focused_window)) {
MarkAllRoutePathsDirty(this->vehicle);
MarkAllRouteStepsDirty(this->vehicle);
MarkDirtyFocusedRoutePaths(this->vehicle);
}
}
@@ -1859,7 +1857,7 @@ public:
DeleteWindowById(WC_VEHICLE_CARGO_TYPE_LOAD_ORDERS, this->window_number, false);
DeleteWindowById(WC_VEHICLE_CARGO_TYPE_UNLOAD_ORDERS, this->window_number, false);
if (!FocusWindowById(WC_VEHICLE_VIEW, this->window_number)) {
MarkAllRouteStepsDirty(this->vehicle);
MarkDirtyFocusedRoutePaths(this->vehicle);
}
}
@@ -3486,16 +3484,14 @@ public:
virtual void OnFocus(Window *previously_focused_window) override
{
if (HasFocusedVehicleChanged(this->window_number, previously_focused_window)) {
MarkAllRoutePathsDirty(this->vehicle);
MarkAllRouteStepsDirty(this->vehicle);
MarkDirtyFocusedRoutePaths(this->vehicle);
}
}
virtual void OnFocusLost(Window *newly_focused_window) override
{
if (HasFocusedVehicleChanged(this->window_number, newly_focused_window)) {
MarkAllRoutePathsDirty(this->vehicle);
MarkAllRouteStepsDirty(this->vehicle);
MarkDirtyFocusedRoutePaths(this->vehicle);
}
}