1
0
mirror of https://github.com/OpenTTD/OpenTTD synced 2026-01-16 08:52:40 +01:00

Fix c2d4098afa: Unconfigured badge classes should be visible in column 0 by default. (#14766)

This commit is contained in:
Peter Nelson
2025-11-10 21:41:02 +00:00
committed by GitHub
parent 744543e469
commit aa6c694c67
2 changed files with 4 additions and 4 deletions

View File

@@ -16,8 +16,8 @@
class BadgeClassConfigItem {
public:
std::string label; ///< Class label.
int column = -1; ///< UI column, feature-dependent.
bool show_icon = false; ///< Set if the badge icons should be displayed for this class.
uint column = 0; ///< UI column, feature-dependent.
bool show_icon = true; ///< Set if the badge icons should be displayed for this class.
bool show_filter = false; ///< Set if a drop down filter should be added for this class.
};

View File

@@ -81,7 +81,7 @@ GUIBadgeClasses::GUIBadgeClasses(GrfSpecFeature feature) : UsedBadgeClasses(feat
const auto [config, sort_order] = GetBadgeClassConfigItem(feature, class_badge->label);
this->gui_classes.emplace_back(class_index, config.column, config.show_icon, sort_order, size, class_badge->label);
if (size.width != 0 && config.show_icon) max_column = std::max<uint>(max_column, config.column);
if (size.width != 0 && config.show_icon) max_column = std::max(max_column, config.column);
}
std::sort(std::begin(this->gui_classes), std::end(this->gui_classes));
@@ -436,7 +436,7 @@ static void BadgeClassMoveNext(GrfSpecFeature feature, Badge &class_badge, uint
auto pos_cur = std::ranges::find(gui_classes.GetClasses(), class_badge.class_index, &GUIBadgeClasses::Element::class_index);
if (std::next(pos_cur) == std::end(gui_classes.GetClasses())) {
if (it->column < static_cast<int>(columns - 1)) ++it->column;
if (it->column < columns - 1) ++it->column;
return;
}