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:
@@ -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.
|
||||
};
|
||||
|
||||
|
||||
@@ -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;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user