Changeset - r14023:0dbab10e82db
[Not reviewed]
master
0 2 0
rubidium - 14 years ago 2009-12-20 16:44:41
rubidium@openttd.org
(svn r18576) -Codechange: use the function to determine the width of digits for determining the width of the unitnumber in vehicle lists.
2 files changed with 5 insertions and 6 deletions:
0 comments (0 inline, 0 general)
src/vehicle_gui.cpp
Show inline comments
 
@@ -110,11 +110,11 @@ void BaseVehicleListWindow::BuildVehicle
 
	 * wider numbers to determine the width instead of just
 
	 * the random number that it seems to be. */
 
	if (unitnumber >= 1000) {
 
		this->max_unitnumber = 9999;
 
		this->unitnumber_digits = 4;
 
	} else if (unitnumber >= 100) {
 
		this->max_unitnumber = 999;
 
		this->unitnumber_digits = 3;
 
	} else {
 
		this->max_unitnumber = 99;
 
		this->unitnumber_digits = 2;
 
	}
 

	
 
	this->vehicles.RebuildDone();
 
@@ -908,8 +908,7 @@ void BaseVehicleListWindow::DrawVehicleL
 
	int width = right - left;
 
	bool rtl = _dynlang.text_dir == TD_RTL;
 

	
 
	SetDParam(0, this->max_unitnumber);
 
	int text_offset = GetStringBoundingBox(STR_JUST_INT).width + WD_FRAMERECT_RIGHT;
 
	int text_offset = GetDigitWidth() * this->unitnumber_digits + WD_FRAMERECT_RIGHT;
 
	int text_left  = left  + (rtl ?           0 : text_offset);
 
	int text_right = right - (rtl ? text_offset :           0);
 

	
src/vehicle_gui_base.h
Show inline comments
 
@@ -20,7 +20,7 @@ struct BaseVehicleListWindow : public Wi
 
	GUIVehicleList vehicles;  ///< The list of vehicles
 
	Listing *sorting;         ///< Pointer to the vehicle type related sorting.
 
	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 GUIVehicleList::SortFunction * const vehicle_sorter_funcs[];
0 comments (0 inline, 0 general)