From de8a325d6e44a27c291b198e3f02cac1203c9381 Mon Sep 17 00:00:00 2001 From: frosch Date: Sun, 30 Jun 2013 14:38:45 +0000 Subject: [PATCH] (svn r25542) -Fix: Do not just add 65 pixels to the width of the train vehicle list whenever it is opened, but remember the width of the train list separately from other vehicle types. --- src/vehicle_gui.cpp | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index cfff954804..ff8719c071 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -1456,8 +1456,6 @@ public: this->FinishInitNested(window_number); if (this->vli.company != OWNER_NONE) this->owner = this->vli.company; - - if (this->vli.vtype == VEH_TRAIN) ResizeWindow(this, 65, 0); } ~VehicleListWindow() @@ -1696,19 +1694,31 @@ public: } }; -static WindowDesc _vehicle_list_desc( +static WindowDesc _vehicle_list_other_desc( WDP_AUTO, "list_vehicles", 260, 246, WC_INVALID, WC_NONE, 0, _nested_vehicle_list, lengthof(_nested_vehicle_list) ); +static WindowDesc _vehicle_list_train_desc( + WDP_AUTO, "list_vehicles_train", 325, 246, + WC_TRAINS_LIST, WC_NONE, + 0, + _nested_vehicle_list, lengthof(_nested_vehicle_list) +); + static void ShowVehicleListWindowLocal(CompanyID company, VehicleListType vlt, VehicleType vehicle_type, uint16 unique_number) { if (!Company::IsValidID(company) && company != OWNER_NONE) return; - _vehicle_list_desc.cls = GetWindowClassForVehicleType(vehicle_type); - AllocateWindowDescFront(&_vehicle_list_desc, VehicleListIdentifier(vlt, vehicle_type, company, unique_number).Pack()); + WindowNumber num = VehicleListIdentifier(vlt, vehicle_type, company, unique_number).Pack(); + if (vehicle_type == VEH_TRAIN) { + AllocateWindowDescFront(&_vehicle_list_train_desc, num); + } else { + _vehicle_list_other_desc.cls = GetWindowClassForVehicleType(vehicle_type); + AllocateWindowDescFront(&_vehicle_list_other_desc, num); + } } void ShowVehicleListWindow(CompanyID company, VehicleType vehicle_type)