src/station_cmd.cpp
changeset 10621 3edd349d9c14
parent 10556 ec733f5899fa
child 10662 f455941692a3
--- a/src/station_cmd.cpp	Sun May 18 14:12:16 2008 +0000
+++ b/src/station_cmd.cpp	Sun May 18 16:51:44 2008 +0000
@@ -650,8 +650,7 @@
 {
 	if (st->facilities == 0) {
 		st->delete_ctr = 0;
-		RebuildStationLists();
-		InvalidateWindow(WC_STATION_LIST, st->owner);
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 0);
 	}
 	/* station remains but it probably lost some parts - station sign should stay in the station boundaries */
 	UpdateStationSignCoord(st);
@@ -1051,8 +1050,7 @@
 		st->MarkTilesDirty(false);
 		UpdateStationVirtCoordDirty(st);
 		UpdateStationAcceptance(st, false);
-		RebuildStationLists();
-		InvalidateWindow(WC_STATION_LIST, st->owner);
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 0);
 		InvalidateWindowWidget(WC_STATION_VIEW, st->index, SVW_TRAINS);
 	}
 
@@ -1410,8 +1408,7 @@
 
 		UpdateStationVirtCoordDirty(st);
 		UpdateStationAcceptance(st, false);
-		RebuildStationLists();
-		InvalidateWindow(WC_STATION_LIST, st->owner);
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 0);
 		InvalidateWindowWidget(WC_STATION_VIEW, st->index, SVW_ROADVEHS);
 	}
 	return cost;
@@ -1723,8 +1720,7 @@
 
 		UpdateStationVirtCoordDirty(st);
 		UpdateStationAcceptance(st, false);
-		RebuildStationLists();
-		InvalidateWindow(WC_STATION_LIST, st->owner);
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 0);
 		InvalidateWindowWidget(WC_STATION_VIEW, st->index, SVW_PLANES);
 	}
 
@@ -1820,8 +1816,7 @@
 
 		UpdateStationVirtCoordDirty(st);
 		UpdateStationAcceptance(st, false);
-		RebuildStationLists();
-		InvalidateWindow(WC_STATION_LIST, st->owner);
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 0);
 		InvalidateWindowWidget(WC_STATION_VIEW, st->index, SVW_SHIPS);
 	}
 
@@ -1979,8 +1974,7 @@
 
 		UpdateStationVirtCoordDirty(st);
 		UpdateStationAcceptance(st, false);
-		RebuildStationLists();
-		InvalidateWindow(WC_STATION_LIST, st->owner);
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 0);
 		InvalidateWindowWidget(WC_STATION_VIEW, st->index, SVW_SHIPS);
 	}
 
@@ -2637,7 +2631,7 @@
 		st->name = strdup(_cmd_text);
 
 		UpdateStationVirtCoord(st);
-		ResortStationLists();
+		InvalidateWindowData(WC_STATION_LIST, st->owner, 1);
 		MarkWholeScreenDirty();
 	}
 
@@ -2858,8 +2852,7 @@
 
 		SetTileOwner(tile, new_player);
 		if (!IsBuoy(tile)) st->owner = new_player; // do not set st->owner for buoys
-		RebuildStationLists();
-		InvalidateWindowClasses(WC_STATION_LIST);
+		InvalidateWindowClassesData(WC_STATION_LIST, 0);
 	} else {
 		if (IsDriveThroughStopTile(tile)) {
 			/* Remove the drive-through road stop */