mirror of https://github.com/OpenTTD/OpenTTD
(svn r18576) -Codechange: use the function to determine the width of digits for determining the width of the unitnumber in vehicle lists.
parent
90b7f0f3cb
commit
1ea8cb4fc4
|
@ -110,11 +110,11 @@ void BaseVehicleListWindow::BuildVehicleList(Owner owner, uint16 index, uint16 w
|
||||||
* wider numbers to determine the width instead of just
|
* wider numbers to determine the width instead of just
|
||||||
* the random number that it seems to be. */
|
* the random number that it seems to be. */
|
||||||
if (unitnumber >= 1000) {
|
if (unitnumber >= 1000) {
|
||||||
this->max_unitnumber = 9999;
|
this->unitnumber_digits = 4;
|
||||||
} else if (unitnumber >= 100) {
|
} else if (unitnumber >= 100) {
|
||||||
this->max_unitnumber = 999;
|
this->unitnumber_digits = 3;
|
||||||
} else {
|
} else {
|
||||||
this->max_unitnumber = 99;
|
this->unitnumber_digits = 2;
|
||||||
}
|
}
|
||||||
|
|
||||||
this->vehicles.RebuildDone();
|
this->vehicles.RebuildDone();
|
||||||
|
@ -908,8 +908,7 @@ void BaseVehicleListWindow::DrawVehicleListItems(VehicleID selected_vehicle, int
|
||||||
int width = right - left;
|
int width = right - left;
|
||||||
bool rtl = _dynlang.text_dir == TD_RTL;
|
bool rtl = _dynlang.text_dir == TD_RTL;
|
||||||
|
|
||||||
SetDParam(0, this->max_unitnumber);
|
int text_offset = GetDigitWidth() * this->unitnumber_digits + WD_FRAMERECT_RIGHT;
|
||||||
int text_offset = GetStringBoundingBox(STR_JUST_INT).width + WD_FRAMERECT_RIGHT;
|
|
||||||
int text_left = left + (rtl ? 0 : text_offset);
|
int text_left = left + (rtl ? 0 : text_offset);
|
||||||
int text_right = right - (rtl ? text_offset : 0);
|
int text_right = right - (rtl ? text_offset : 0);
|
||||||
|
|
||||||
|
|
|
@ -20,7 +20,7 @@ struct BaseVehicleListWindow : public Window {
|
||||||
GUIVehicleList vehicles; ///< The list of vehicles
|
GUIVehicleList vehicles; ///< The list of vehicles
|
||||||
Listing *sorting; ///< Pointer to the vehicle type related sorting.
|
Listing *sorting; ///< Pointer to the vehicle type related sorting.
|
||||||
VehicleType vehicle_type; ///< The vehicle type that is sorted
|
VehicleType vehicle_type; ///< The vehicle type that is sorted
|
||||||
UnitID max_unitnumber; ///< The maximum UnitID
|
byte unitnumber_digits; ///< The number of digits of the highest unit number
|
||||||
|
|
||||||
static const StringID vehicle_sorter_names[];
|
static const StringID vehicle_sorter_names[];
|
||||||
static GUIVehicleList::SortFunction * const vehicle_sorter_funcs[];
|
static GUIVehicleList::SortFunction * const vehicle_sorter_funcs[];
|
||||||
|
|
Loading…
Reference in New Issue