mirror of https://github.com/OpenTTD/OpenTTD.git
Digit width was counted, but ignored the thousands separator.
This commit is contained in:
parent
dc7a0913d2
commit
7c529cfc4b
|
@ -1681,6 +1681,17 @@ uint GetVehicleListHeight(VehicleType type, uint divisor)
|
|||
return base + (rem == 0 ? 0 : divisor - rem);
|
||||
}
|
||||
|
||||
/**
|
||||
* Get width required for the formatted unit number display.
|
||||
* @param digits Number of digits required for unit number.
|
||||
* @return Required width in pixels.
|
||||
*/
|
||||
static int GetUnitNumberWidth(int digits)
|
||||
{
|
||||
SetDParamMaxDigits(0, digits);
|
||||
return GetStringBoundingBox(STR_JUST_COMMA).width;
|
||||
}
|
||||
|
||||
/**
|
||||
* Draw all the vehicle list items.
|
||||
* @param selected_vehicle The vehicle that is to be highlighted.
|
||||
|
@ -1693,7 +1704,7 @@ void BaseVehicleListWindow::DrawVehicleListItems(VehicleID selected_vehicle, int
|
|||
bool rtl = _current_text_dir == TD_RTL;
|
||||
|
||||
Dimension profit = GetSpriteSize(SPR_PROFIT_LOT);
|
||||
int text_offset = std::max<int>(profit.width, GetDigitWidth() * this->unitnumber_digits) + WidgetDimensions::scaled.hsep_normal;
|
||||
int text_offset = std::max<int>(profit.width, GetUnitNumberWidth(this->unitnumber_digits)) + WidgetDimensions::scaled.hsep_normal;
|
||||
Rect tr = ir.Indent(text_offset, rtl);
|
||||
|
||||
bool show_orderlist = this->vli.vtype >= VEH_SHIP;
|
||||
|
|
Loading…
Reference in New Issue