(svn r7313) -Codechange: Calling invalidate data on a window will surely warrant a redraw, so call
that after the WE_INVALIDATE_DATA event and remove (some of) the superflouous calls.
--- a/aircraft_cmd.c Thu Nov 30 22:23:11 2006 +0000
+++ b/aircraft_cmd.c Fri Dec 01 00:09:13 2006 +0000
@@ -402,7 +402,6 @@
GetPlayer(_current_player)->num_engines[p1]++;
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
RebuildVehicleLists();
InvalidateWindow(WC_COMPANY, v->owner);
if (IsLocalPlayer())
@@ -1435,7 +1434,6 @@
VehicleServiceInDepot(v);
SetAircraftPosition(v, v->x_pos, v->y_pos, v->z_pos);
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
InvalidateWindowClasses(WC_AIRCRAFT_LIST);
}
--- a/build_vehicle_gui.c Thu Nov 30 22:23:11 2006 +0000
+++ b/build_vehicle_gui.c Fri Dec 01 00:09:13 2006 +0000
@@ -428,7 +428,6 @@
switch (e->event) {
case WE_INVALIDATE_DATA:
GenerateBuildList(w);
- SetWindowDirty(w);
break;
case WE_DESTROY:
--- a/rail_cmd.c Thu Nov 30 22:23:11 2006 +0000
+++ b/rail_cmd.c Fri Dec 01 00:09:13 2006 +0000
@@ -2010,11 +2010,10 @@
v->u.rail.track = 0x80,
v->vehstatus |= VS_HIDDEN; /* hide it */
v->direction = ReverseDir(v->direction);
+ if (v->next == NULL) VehicleEnterDepot(v);
+ v->tile = tile;
+
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- if (v->next == NULL)
- VehicleEnterDepot(v);
- v->tile = tile;
- InvalidateWindow(WC_VEHICLE_DEPOT, tile);
return 4;
}
} else if (fract_coord_leave == fract_coord) {
--- a/roadveh_cmd.c Thu Nov 30 22:23:11 2006 +0000
+++ b/roadveh_cmd.c Fri Dec 01 00:09:13 2006 +0000
@@ -195,7 +195,6 @@
GetPlayer(_current_player)->num_engines[p1]++;
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
RebuildVehicleLists();
InvalidateWindow(WC_COMPANY, v->owner);
if (IsLocalPlayer())
@@ -1307,7 +1306,6 @@
SetRoadVehPosition(v,x,y);
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
return;
}
--- a/roadveh_gui.c Thu Nov 30 22:23:11 2006 +0000
+++ b/roadveh_gui.c Fri Dec 01 00:09:13 2006 +0000
@@ -455,10 +455,6 @@
static void NewRoadVehWndProc(Window *w, WindowEvent *e)
{
switch (e->event) {
- case WE_INVALIDATE_DATA:
- SetWindowDirty(w);
- break;
-
case WE_PAINT:
DrawNewRoadVehWindow(w);
break;
--- a/ship_cmd.c Thu Nov 30 22:23:11 2006 +0000
+++ b/ship_cmd.c Fri Dec 01 00:09:13 2006 +0000
@@ -884,7 +884,6 @@
GetPlayer(_current_player)->num_engines[p1]++;
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
RebuildVehicleLists();
InvalidateWindow(WC_COMPANY, v->owner);
if (IsLocalPlayer())
--- a/ship_gui.c Thu Nov 30 22:23:11 2006 +0000
+++ b/ship_gui.c Fri Dec 01 00:09:13 2006 +0000
@@ -242,10 +242,6 @@
static void NewShipWndProc(Window *w, WindowEvent *e)
{
switch (e->event) {
- case WE_INVALIDATE_DATA:
- SetWindowDirty(w);
- break;
-
case WE_PAINT: {
EngineID selected_id;
EngineID eid;
--- a/train_cmd.c Thu Nov 30 22:23:11 2006 +0000
+++ b/train_cmd.c Fri Dec 01 00:09:13 2006 +0000
@@ -851,7 +851,6 @@
GetPlayer(_current_player)->num_engines[p1]++;
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, tile);
RebuildVehicleLists();
InvalidateWindow(WC_COMPANY, v->owner);
if (IsLocalPlayer()) {
@@ -1682,7 +1681,6 @@
if (IsTileDepotType(v->tile, TRANSPORT_RAIL)) {
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
}
/* Check if we were approaching a rail/road-crossing */
@@ -1716,7 +1714,6 @@
if (IsTileDepotType(v->tile, TRANSPORT_RAIL)) {
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
}
CLRBIT(v->u.rail.flags, VRF_REVERSING);
@@ -2213,7 +2210,6 @@
UpdateSignalsOnSegment(v->tile, DirToDiagDir(v->direction));
UpdateTrainAcceleration(v);
InvalidateWindowData(WC_VEHICLE_DEPOT, v->tile);
- InvalidateWindow(WC_VEHICLE_DEPOT, v->tile);
return false;
}
--- a/train_gui.c Thu Nov 30 22:23:11 2006 +0000
+++ b/train_gui.c Fri Dec 01 00:09:13 2006 +0000
@@ -473,7 +473,6 @@
case WE_INVALIDATE_DATA:
GenerateBuildList(w);
- SetWindowDirty(w);
break;
case WE_DESTROY:
--- a/window.c Thu Nov 30 22:23:11 2006 +0000
+++ b/window.c Fri Dec 01 00:09:13 2006 +0000
@@ -1767,6 +1767,7 @@
void InvalidateThisWindowData(Window *w)
{
CallWindowEventNP(w, WE_INVALIDATE_DATA);
+ SetWindowDirty(w);
}
void InvalidateWindowData(WindowClass cls, WindowNumber number)