Changeset - r27110:a28b840432e6
[Not reviewed]
master
0 2 0
Andy - 17 months ago 2023-04-16 22:02:32
1780327+andythenorth@users.noreply.github.com
Change: extend callback 161 (engine name) with bit 0x22 for context 'Autoreplace - Vehicles in use' (#10666)
2 files changed with 11 insertions and 5 deletions:
0 comments (0 inline, 0 general)
src/build_vehicle_gui.cpp
Show inline comments
 
@@ -1038,7 +1038,12 @@ void DrawEngineList(VehicleType type, co
 
		StringID str = hidden ? STR_HIDDEN_ENGINE_NAME : STR_ENGINE_NAME;
 
		TextColour tc = (item.engine_id == selected_id) ? TC_WHITE : (TC_NO_SHADE | ((hidden | shaded) ? TC_GREY : TC_BLACK));
 

	
 
		SetDParam(0, PackEngineNameDParam(item.engine_id, EngineNameContext::PurchaseList, item.indent));
 
		if (show_count) {
 
			/* relies on show_count to find 'Vehicle in use' panel of autoreplace window */
 
			SetDParam(0, PackEngineNameDParam(item.engine_id, EngineNameContext::AutoreplaceVehicleInUse, item.indent));
 
		} else {
 
			SetDParam(0, PackEngineNameDParam(item.engine_id, EngineNameContext::PurchaseList, item.indent));
 
		}
 
		Rect itr = tr.Indent(indent, rtl);
 
		DrawString(itr.left, itr.right, y + normal_text_y_offset, str, tc);
 
		int sprite_x = ir.Indent(indent + circle_width + WidgetDimensions::scaled.hsep_normal, rtl).WithWidth(sprite_width, rtl).left + sprite_left;
src/engine_type.h
Show inline comments
 
@@ -186,10 +186,11 @@ enum EngineFlags {
 
 * Contexts an engine name can be shown in.
 
 */
 
enum EngineNameContext : uint8 {
 
	Generic        = 0x00, ///< No specific context available.
 
	VehicleDetails = 0x11, ///< Name is shown in the vehicle details GUI.
 
	PurchaseList   = 0x20, ///< Name is shown in the purchase list (including autoreplace window).
 
	PreviewNews    = 0x21, ///< Name is shown in exclusive preview or newspaper.
 
	Generic                 = 0x00, ///< No specific context available.
 
	VehicleDetails          = 0x11, ///< Name is shown in the vehicle details GUI.
 
	PurchaseList            = 0x20, ///< Name is shown in the purchase list (including autoreplace window 'Available vehicles' panel).
 
	PreviewNews             = 0x21, ///< Name is shown in exclusive preview or newspaper.
 
	AutoreplaceVehicleInUse = 0x22, ///< Name is show in the autoreplace window 'Vehicles in use' panel.
 
};
 

	
 
/** Combine an engine ID and a name context to an engine name dparam. */
0 comments (0 inline, 0 general)