diff options
author | bjarni <bjarni@openttd.org> | 2006-10-10 08:14:30 +0000 |
---|---|---|
committer | bjarni <bjarni@openttd.org> | 2006-10-10 08:14:30 +0000 |
commit | 238b34e000b158ee8bf8e1c4dc07b290e937ff72 (patch) | |
tree | 64aaeebbbaf19230f218f88798dbb3ec0de726b7 | |
parent | 13a0eb3ca6a4eacee4be5032e4c0d4ede2800c1a (diff) | |
download | openttd-238b34e000b158ee8bf8e1c4dc07b290e937ff72.tar.xz |
(svn r6714) -Codechange: replaced a direct manipulation of windows with InvalidateWindowData() in rail_cmd.c
Moved the actual modification of railtype to WE_INVALIDATE_DATA in the train depot handler
-Codechange: added SetWindowDirty() to WE_INVALIDATE_DATA as it made no sense to update the list without making the window dirty
-rw-r--r-- | aircraft_gui.c | 1 | ||||
-rw-r--r-- | engine.c | 2 | ||||
-rw-r--r-- | rail_cmd.c | 7 | ||||
-rw-r--r-- | train_gui.c | 2 |
4 files changed, 4 insertions, 8 deletions
diff --git a/aircraft_gui.c b/aircraft_gui.c index 6f358e1af..e17387120 100644 --- a/aircraft_gui.c +++ b/aircraft_gui.c @@ -548,6 +548,7 @@ static void NewAircraftWndProc(Window *w, WindowEvent *e) case WE_INVALIDATE_DATA: WP(w,buildvehicle_d).data_invalidated = true; + SetWindowDirty(w); break; case WE_DESTROY: @@ -214,7 +214,6 @@ static void AcceptEnginePreview(Engine *e, PlayerID player) e->preview_player = 0xFF; if (player == _local_player) { InvalidateWindowClassesData(WC_BUILD_VEHICLE); - InvalidateWindowClasses(WC_BUILD_VEHICLE); InvalidateWindowClasses(WC_REPLACE_VEHICLE); } } @@ -339,7 +338,6 @@ static void NewVehicleAvailable(Engine *e) e->flags = (e->flags & ~ENGINE_INTRODUCING) | ENGINE_AVAILABLE; InvalidateWindowClassesData(WC_BUILD_VEHICLE); - InvalidateWindowClasses(WC_BUILD_VEHICLE); InvalidateWindowClasses(WC_REPLACE_VEHICLE); // Now available for all players diff --git a/rail_cmd.c b/rail_cmd.c index 877dec669..ac1c0ec49 100644 --- a/rail_cmd.c +++ b/rail_cmd.c @@ -888,14 +888,9 @@ static int32 DoConvertRail(TileIndex tile, RailType totype, bool exec) if (IsTileDepotType(tile, TRANSPORT_RAIL)) { Vehicle *v; - Window *w; /* Update build vehicle window related to this depot */ - w = FindWindowById(WC_BUILD_VEHICLE, tile); - if (w != NULL) { - WP(w,buildvehicle_d).railtype = totype; - SetWindowDirty(w); - } + InvalidateWindowData(WC_BUILD_VEHICLE, tile); /* update power of trains in this depot */ FOR_ALL_VEHICLES(v) { diff --git a/train_gui.c b/train_gui.c index 9e948fb9e..cd9eff36f 100644 --- a/train_gui.c +++ b/train_gui.c @@ -546,7 +546,9 @@ static void NewRailVehicleWndProc(Window *w, WindowEvent *e) break; case WE_INVALIDATE_DATA: + if (w->window_number != 0) WP(w,buildvehicle_d).railtype = GetRailType(w->window_number); WP(w,buildvehicle_d).data_invalidated = true; + SetWindowDirty(w); break; case WE_DESTROY: |