OpenTTD Source 20250222-master-g9a8d9e4e48
DropDownBadges< TBase, TEnd, TFs > Class Template Reference

Drop down element that draws a list of badges. More...

Inheritance diagram for DropDownBadges< TBase, TEnd, TFs >:

Public Member Functions

template<typename... Args>
 DropDownBadges (const std::shared_ptr< GUIBadgeClasses > &badge_classes, std::span< const BadgeID > badges, GrfSpecFeature feature, std::optional< TimerGameCalendar::Date > introduction_date, Args &&... args)
 
uint Height () const override
 
uint Width () const override
 
void Draw (const Rect &full, const Rect &r, bool sel, Colours bg_colour) const override
 

Private Attributes

std::shared_ptr< GUIBadgeClassesbadge_classes
 
const std::span< const BadgeIDbadges
 
const GrfSpecFeature feature
 
const std::optional< TimerGameCalendar::Dateintroduction_date
 
Dimension dim {}
 

Detailed Description

template<class TBase, bool TEnd = true, FontSize TFs = FS_NORMAL>
class DropDownBadges< TBase, TEnd, TFs >

Drop down element that draws a list of badges.

Definition at line 507 of file newgrf_badge.cpp.

Constructor & Destructor Documentation

◆ DropDownBadges()

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
template<typename... Args>
DropDownBadges< TBase, TEnd, TFs >::DropDownBadges ( const std::shared_ptr< GUIBadgeClasses > &  badge_classes,
std::span< const BadgeID badges,
GrfSpecFeature  feature,
std::optional< TimerGameCalendar::Date introduction_date,
Args &&...  args 
)
inlineexplicit

Definition at line 510 of file newgrf_badge.cpp.

Member Function Documentation

◆ Draw()

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
void DropDownBadges< TBase, TEnd, TFs >::Draw ( const Rect full,
const Rect r,
bool  sel,
Colours  bg_colour 
) const
inlineoverride

Definition at line 523 of file newgrf_badge.cpp.

◆ Height()

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
uint DropDownBadges< TBase, TEnd, TFs >::Height ( ) const
inlineoverride

Definition at line 520 of file newgrf_badge.cpp.

◆ Width()

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
uint DropDownBadges< TBase, TEnd, TFs >::Width ( ) const
inlineoverride

Definition at line 521 of file newgrf_badge.cpp.

Field Documentation

◆ badge_classes

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
std::shared_ptr<GUIBadgeClasses> DropDownBadges< TBase, TEnd, TFs >::badge_classes
private

Definition at line 533 of file newgrf_badge.cpp.

◆ badges

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
const std::span<const BadgeID> DropDownBadges< TBase, TEnd, TFs >::badges
private

Definition at line 535 of file newgrf_badge.cpp.

◆ dim

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
Dimension DropDownBadges< TBase, TEnd, TFs >::dim {}
private

Definition at line 539 of file newgrf_badge.cpp.

◆ feature

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
const GrfSpecFeature DropDownBadges< TBase, TEnd, TFs >::feature
private

Definition at line 536 of file newgrf_badge.cpp.

◆ introduction_date

template<class TBase , bool TEnd = true, FontSize TFs = FS_NORMAL>
const std::optional<TimerGameCalendar::Date> DropDownBadges< TBase, TEnd, TFs >::introduction_date
private

Definition at line 537 of file newgrf_badge.cpp.


The documentation for this class was generated from the following file: