mirror of https://github.com/OpenTTD/OpenTTD
(svn r19955) -Fix: close list of vehicles with given buoy/oil rig in orders when switching company
parent
de50d914c8
commit
830e40af19
|
@ -1183,34 +1183,13 @@ struct StationViewWindow : public Window {
|
||||||
this, CS_ALPHANUMERAL, QSF_ENABLE_DEFAULT);
|
this, CS_ALPHANUMERAL, QSF_ENABLE_DEFAULT);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case SVW_TRAINS: { // Show a list of scheduled trains to this station
|
case SVW_TRAINS: // Show list of scheduled trains to this station
|
||||||
const Station *st = Station::Get(this->window_number);
|
case SVW_ROADVEHS: // Show list of scheduled road-vehicles to this station
|
||||||
ShowVehicleListWindow(st->owner, VEH_TRAIN, (StationID)this->window_number);
|
case SVW_PLANES: // Show list of scheduled aircraft to this station
|
||||||
|
case SVW_SHIPS: // Show list of scheduled ships to this station
|
||||||
|
ShowVehicleListWindow(this->owner, (VehicleType)(widget - SVW_TRAINS), (StationID)this->window_number);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
case SVW_ROADVEHS: { // Show a list of scheduled road-vehicles to this station
|
|
||||||
const Station *st = Station::Get(this->window_number);
|
|
||||||
ShowVehicleListWindow(st->owner, VEH_ROAD, (StationID)this->window_number);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case SVW_PLANES: { // Show a list of scheduled aircraft to this station
|
|
||||||
const Station *st = Station::Get(this->window_number);
|
|
||||||
/* Since oilrigs have no owners, show the scheduled aircraft of local company */
|
|
||||||
Owner owner = (st->owner == OWNER_NONE) ? _local_company : st->owner;
|
|
||||||
ShowVehicleListWindow(owner, VEH_AIRCRAFT, (StationID)this->window_number);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
|
|
||||||
case SVW_SHIPS: { // Show a list of scheduled ships to this station
|
|
||||||
const Station *st = Station::Get(this->window_number);
|
|
||||||
/* Since oilrigs/bouys have no owners, show the scheduled ships of local company */
|
|
||||||
Owner owner = (st->owner == OWNER_NONE) ? _local_company : st->owner;
|
|
||||||
ShowVehicleListWindow(owner, VEH_SHIP, (StationID)this->window_number);
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
virtual void OnQueryTextFinished(char *str)
|
virtual void OnQueryTextFinished(char *str)
|
||||||
|
|
|
@ -1277,7 +1277,12 @@ static WindowDesc _vehicle_list_desc(
|
||||||
|
|
||||||
static void ShowVehicleListWindowLocal(CompanyID company, uint16 VLW_flag, VehicleType vehicle_type, uint16 unique_number)
|
static void ShowVehicleListWindowLocal(CompanyID company, uint16 VLW_flag, VehicleType vehicle_type, uint16 unique_number)
|
||||||
{
|
{
|
||||||
if (!Company::IsValidID(company)) return;
|
if (!Company::IsValidID(company)) {
|
||||||
|
_vehicle_list_desc.flags |= WDF_CONSTRUCTION;
|
||||||
|
company = _local_company;
|
||||||
|
} else {
|
||||||
|
_vehicle_list_desc.flags &= ~WDF_CONSTRUCTION;
|
||||||
|
}
|
||||||
|
|
||||||
_vehicle_list_desc.cls = GetWindowClassForVehicleType(vehicle_type);
|
_vehicle_list_desc.cls = GetWindowClassForVehicleType(vehicle_type);
|
||||||
WindowNumber num = (unique_number << 16) | (vehicle_type << 11) | VLW_flag | company;
|
WindowNumber num = (unique_number << 16) | (vehicle_type << 11) | VLW_flag | company;
|
||||||
|
|
|
@ -87,7 +87,7 @@ public:
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case WAYPVW_SHOW_VEHICLES: // show list of vehicles having this waypoint in their orders
|
case WAYPVW_SHOW_VEHICLES: // show list of vehicles having this waypoint in their orders
|
||||||
ShowVehicleListWindow((this->wp->owner == OWNER_NONE) ? _local_company : this->wp->owner, this->vt, this->wp);
|
ShowVehicleListWindow(this->owner, this->vt, this->wp);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue