From f03a941b502bafc111f32312419b3b83575347cb Mon Sep 17 00:00:00 2001 From: Jonathan G Rennison Date: Sat, 20 Jan 2024 22:29:36 +0000 Subject: [PATCH] Tracerestrict: Sort slots by name in vehicle window --- src/vehicle_gui.cpp | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/src/vehicle_gui.cpp b/src/vehicle_gui.cpp index e50b064d0c..0eefdbd3c5 100644 --- a/src/vehicle_gui.cpp +++ b/src/vehicle_gui.cpp @@ -3197,6 +3197,12 @@ struct VehicleDetailsWindow : Window { std::vector slots; TraceRestrictGetVehicleSlots(v->index, slots); + std::sort(slots.begin(), slots.end(), [&](TraceRestrictSlotID a, TraceRestrictSlotID b) -> bool { + int r = StrNaturalCompare(TraceRestrictSlot::Get(a)->name, TraceRestrictSlot::Get(b)->name); + if (r == 0) return a < b; + return r < 0; + }); + SetDParam(0, slots.size()); std::string buffer = GetString(STR_TRACE_RESTRICT_SLOT_LIST_HEADER);