Changeset - r28220:9acb5dae1bc3
[Not reviewed]
master
0 3 0
Peter Nelson - 10 months ago 2023-11-15 01:33:50
peter1138@openttd.org
Feature: Place cargo icon on cargo filter dropdowns.

Reveal the pixel art.
3 files changed with 8 insertions and 4 deletions:
0 comments (0 inline, 0 general)
src/build_vehicle_gui.cpp
Show inline comments
 
@@ -1579,8 +1579,9 @@ struct BuildVehicleWindow : Window {
 
		}
 

	
 
		/* Add cargos */
 
		Dimension d = GetLargestCargoIconSize();
 
		for (const CargoSpec *cs : _sorted_standard_cargo_specs) {
 
			list.push_back(std::make_unique<DropDownListStringItem>(cs->name, cs->Index(), false));
 
			list.push_back(std::make_unique<DropDownListIconItem>(d, cs->GetCargoIcon(), PAL_NONE, cs->name, cs->Index(), false));
 
		}
 

	
 
		return list;
src/industry_gui.cpp
Show inline comments
 
@@ -1753,8 +1753,9 @@ public:
 
		list.push_back(std::make_unique<DropDownListStringItem>(this->GetCargoFilterLabel(CF_NONE), CF_NONE, false));
 

	
 
		/* Add cargos */
 
		Dimension d = GetLargestCargoIconSize();
 
		for (const CargoSpec *cs : _sorted_standard_cargo_specs) {
 
			list.push_back(std::make_unique<DropDownListStringItem>(cs->name, cs->Index(), false));
 
			list.push_back(std::make_unique<DropDownListIconItem>(d, cs->GetCargoIcon(), PAL_NONE, cs->name, cs->Index(), false));
 
		}
 

	
 
		return list;
 
@@ -3088,8 +3089,9 @@ struct IndustryCargoesWindow : public Wi
 

	
 
			case WID_IC_CARGO_DROPDOWN: {
 
				DropDownList lst;
 
				Dimension d = GetLargestCargoIconSize();
 
				for (const CargoSpec *cs : _sorted_standard_cargo_specs) {
 
					lst.push_back(std::make_unique<DropDownListStringItem>(cs->name, cs->Index(), false));
 
					lst.push_back(std::make_unique<DropDownListIconItem>(d, cs->GetCargoIcon(), PAL_NONE, cs->name, cs->Index(), false));
 
				}
 
				if (!lst.empty()) {
 
					int selected = (this->ind_cargo >= NUM_INDUSTRYTYPES) ? (int)(this->ind_cargo - NUM_INDUSTRYTYPES) : -1;
src/vehicle_gui.cpp
Show inline comments
 
@@ -383,8 +383,9 @@ DropDownList BaseVehicleListWindow::Buil
 
	list.push_back(std::make_unique<DropDownListStringItem>(this->GetCargoFilterLabel(CF_NONE), CF_NONE, false));
 

	
 
	/* Add cargos */
 
	Dimension d = GetLargestCargoIconSize();
 
	for (const CargoSpec *cs : _sorted_cargo_specs) {
 
		list.push_back(std::make_unique<DropDownListStringItem>(cs->name, cs->Index(), false));
 
		list.push_back(std::make_unique<DropDownListIconItem>(d, cs->GetCargoIcon(), PAL_NONE, cs->name, cs->Index(), false));
 
	}
 

	
 
	return list;
0 comments (0 inline, 0 general)