OpenTTD Source: NWidgetBadgeFilter Class Reference

OpenTTD Source 15.3

Public Member Functions | Private Attributes
NWidgetBadgeFilter Class Reference
Inheritance diagram for NWidgetBadgeFilter:

## Public Member Functions
| NWidgetBadgeFilter (Colours colour, WidgetID index, GrfSpecFeature feature, BadgeClassID badge_class)
BadgeClassID | GetBadgeClassID () const
std::string | GetStringParameter (const BadgeFilterChoices &choices) const
DropDownList | GetDropDownList (PaletteID palette=PAL_NONE) const
| Get the drop down list of badges for this filter.
Public Member Functions inherited from NWidgetLeaf
| NWidgetLeaf (WidgetType tp, Colours colour, WidgetID index, const WidgetData &data, StringID tip)
| Nested leaf widget.
void | SetupSmallestSize (Window *w) override
| Compute smallest size needed by the widget.
void | Draw (const Window *w) override
| Draw the widgets of the tree.
bool | ButtonHit (const Point &pt)
| For a NWID_BUTTON_DROPDOWN, test whether pt refers to the button or to the drop-down.
Public Member Functions inherited from NWidgetCore
| NWidgetCore (WidgetType tp, Colours colour, WidgetID index, uint fill_x, uint fill_y, const WidgetData &widget_data, StringID tool_tip)
| Initialization of a 'real' widget.
void | SetString (StringID string)
| Set string of the nested widget.
void | SetStringTip (StringID string, StringID tool_tip)
| Set string and tool tip of the nested widget.
void | SetSprite (SpriteID sprite)
| Set sprite of the nested widget.
void | SetSpriteTip (SpriteID sprite, StringID tool_tip)
| Set sprite and tool tip of the nested widget.
void | SetMatrixDimension (uint32_t columns, uint32_t rows)
| Set the matrix dimension.
void | SetResizeWidgetType (ResizeWidgetValues type)
| Set the resize widget type of the nested widget.
void | SetToolTip (StringID tool_tip)
| Set the tool tip of the nested widget.
StringID | GetToolTip () const
| Get the tool tip of the nested widget.
void | SetTextStyle (TextColour colour, FontSize size)
| Set the text style of the nested widget.
void | SetAlignment (StringAlignment align)
| Set the text/image alignment of the nested widget.
StringID | GetString () const
| Get the string that has been set for this nested widget.
WidgetID | GetScrollbarIndex () const
| Get the `WidgetID` of this nested widget's scrollbar.
void | SetLowered (bool lowered)
| Lower or raise the widget.
bool | IsLowered () const
| Return whether the widget is lowered.
void | SetDisabled (bool disabled)
| Disable (grey-out) or enable the widget.
bool | IsDisabled () const
| Return whether the widget is disabled.
TextColour | GetTextColour () const
FontSize | GetFontSize () const
NWidgetCore * | GetWidgetFromPos (int x, int y) override
| Retrieve a widget by its position.
bool | IsHighlighted () const override
| Return whether the widget is highlighted.
TextColour | GetHighlightColour () const override
| Return the colour of the highlight.
void | SetHighlighted (TextColour highlight_colour) override
| Highlight the widget or not.
Public Member Functions inherited from NWidgetResizeBase
| NWidgetResizeBase (WidgetType tp, WidgetID index, uint fill_x, uint fill_y)
| Constructor for resizable nested widgets.
void | AdjustPaddingForZoom () override
void | SetMinimalSize (uint min_x, uint min_y)
| Set minimal size of the widget.
void | SetMinimalSizeAbsolute (uint min_x, uint min_y)
| Set absolute (post-scaling) minimal size of the widget.
void | SetMinimalTextLines (uint8_t min_lines, uint8_t spacing, FontSize size)
| Set minimal text lines for the widget.
void | SetToolbarMinimalSize (uint8_t toolbar_size)
| Set minimal size of the widget in toolbar-icon-relative width.
void | SetFill (uint fill_x, uint fill_y)
| Set the filling of the widget from initial size.
void | SetResize (uint resize_x, uint resize_y)
| Set resize step of the widget.
void | SetAspect (float ratio, AspectFlags flags=AspectFlag::ResizeX)
| Set desired aspect ratio of this widget.
void | SetAspect (int x_ratio, int y_ratio, AspectFlags flags=AspectFlag::ResizeX)
| Set desired aspect ratio of this widget, in terms of horizontal and vertical dimensions.
bool | UpdateMultilineWidgetSize (const std::string &str, int max_lines)
| Try to set optimum widget size for a multiline text widget.
bool | UpdateSize (uint min_x, uint min_y)
| Set absolute (post-scaling) minimal size of the widget.
bool | UpdateVerticalSize (uint min_y)
| Set absolute (post-scaling) minimal size of the widget.
void | AssignSizePosition (SizingType sizing, int x, int y, uint given_width, uint given_height, bool rtl) override
| Assign size and position to the widget.
Public Member Functions inherited from NWidgetBase
| NWidgetBase (WidgetType tp, WidgetID index=INVALID_WIDGET)
void | ApplyAspectRatio ()
virtual void | FillWidgetLookup (WidgetLookup &widget_lookup)
| Fill the Window::widget_lookup with pointers to nested widgets in the tree.
virtual NWidgetBase * | GetWidgetOfType (WidgetType tp)
| Retrieve a widget by its type.
template<class NWID >
NWID * | GetParentWidget ()
| Get parent widget of type NWID.
template<class NWID >
const NWID * | GetParentWidget () const
| Get parent widget of type NWID.
WidgetID | GetIndex () const
void | SetPadding (uint8_t top, uint8_t right, uint8_t bottom, uint8_t left)
| Set additional space (padding) around the widget.
void | SetPadding (const RectPadding &padding)
| Set additional space (padding) around the widget.
uint | GetHorizontalStepSize (SizingType sizing) const
| Get the horizontal sizing step.
uint | GetVerticalStepSize (SizingType sizing) const
| Get the vertical sizing step.
virtual void | SetDirty (const Window *w) const
| Mark the widget as 'dirty' (in need of repaint).
Rect | GetCurrentRect () const

## Private Attributes
GrfSpecFeature | feature
| Feature of this dropdown.
BadgeClassID | badge_class
| Badge class of this dropdown.

## Additional Inherited Members
Static Public Member Functions inherited from NWidgetLeaf
static void | InvalidateDimensionCache ()
| Reset the cached dimensions.
Data Fields inherited from NWidgetCore
NWidgetDisplayFlags | disp_flags
| Flags that affect display and interaction with the widget.
Colours | colour
| Colour of this widget.
Data Fields inherited from NWidgetResizeBase
uint | min_x = 0
| Minimal horizontal size of only this widget.
uint | min_y = 0
| Minimal vertical size of only this widget.
bool | absolute = false
| Set if minimum size is fixed and should not be resized.
uint | uz_min_x = 0
| Unscaled Minimal horizontal size of only this widget.
uint | uz_min_y = 0
| Unscaled Minimal vertical size of only this widget.
uint8_t | uz_text_lines = 0
| 'Unscaled' text lines, stored for resize calculation.
uint8_t | uz_text_spacing = 0
| 'Unscaled' text padding, stored for resize calculation.
FontSize | uz_text_size {}
| 'Unscaled' font size, stored for resize calculation.
uint8_t | toolbar_size = 0
| Minimal size in terms of toolbar images.
Data Fields inherited from NWidgetBase
WidgetType | type {}
| Type of the widget / nested widget.
uint | fill_x = 0
| Horizontal fill stepsize (from initial size, `0` means not resizable).
uint | fill_y = 0
| Vertical fill stepsize (from initial size, `0` means not resizable).
uint | resize_x = 0
| Horizontal resize step (`0` means not resizable).
uint | resize_y = 0
| Vertical resize step (`0` means not resizable).
uint | smallest_x = 0
| Smallest horizontal size of the widget in a filled window.
uint | smallest_y = 0
| Smallest vertical size of the widget in a filled window.
uint | current_x = 0
| Current horizontal size (after resizing).
uint | current_y = 0
| Current vertical size (after resizing).
float | aspect_ratio = 0
| Desired aspect ratio of widget.
AspectFlags | aspect_flags = AspectFlag::ResizeX
| Which dimensions can be resized.
int | pos_x = 0
| Horizontal position of top-left corner of the widget in the window.
int | pos_y = 0
| Vertical position of top-left corner of the widget in the window.
RectPadding | padding {}
| Padding added to the widget. Managed by parent container widget. (parent container may swap left and right for RTL)
RectPadding | uz_padding {}
| Unscaled padding, for resize calculation.
NWidgetBase * | parent = nullptr
| Parent widget of this widget, automatically filled in when added to container.
Static Public Attributes inherited from NWidgetLeaf
static Dimension | dropdown_dimension = {0, 0}
| Cached size of a dropdown widget.
static Dimension | resizebox_dimension = {0, 0}
| Cached size of a resizebox widget.
static Dimension | closebox_dimension = {0, 0}
| Cached size of a closebox widget.
Protected Member Functions inherited from NWidgetBase
void | StoreSizePosition (SizingType sizing, int x, int y, uint given_width, uint given_height)
| Store size and position.
Protected Attributes inherited from NWidgetCore
WidgetData | widget_data {}
| Data of the widget.
StringID | tool_tip {}
| Tooltip of the widget.
WidgetID | scrollbar_index = INVALID_WIDGET
| Index of an attached scrollbar.
TextColour | highlight_colour {}
| Colour of highlight.
TextColour | text_colour {}
| Colour of text within widget.
FontSize | text_size = FS_NORMAL
| Size of text within widget.
StringAlignment | align = SA_CENTER
| Alignment of text/image within widget.
Protected Attributes inherited from NWidgetBase
const WidgetID | index = INVALID_WIDGET
| Index of the nested widget (`INVALID_WIDGET` means 'not used').

## Detailed Description

Definition at line 62 of file newgrf_badge_gui.h.

## Constructor & Destructor Documentation

## ◆ NWidgetBadgeFilter()

NWidgetBadgeFilter::NWidgetBadgeFilter | ( | Colours | colour,
|  | WidgetID | index,
|  | GrfSpecFeature | feature,
|  | BadgeClassID | badge_class
| ) |  |

Definition at line 493 of file newgrf_badge_gui.cpp.

## Member Function Documentation

## ◆ GetBadgeClassID()

BadgeClassID NWidgetBadgeFilter::GetBadgeClassID | ( |  | ) | const
| inline

Definition at line 66 of file newgrf_badge_gui.h.

## ◆ GetDropDownList()

DropDownList NWidgetBadgeFilter::GetDropDownList | ( | PaletteID | palette = `PAL_NONE` | ) | const

Get the drop down list of badges for this filter.

Parameters

  palette | Palette used to remap badge sprites.

Returns
  Drop down list for filter.

Definition at line 516 of file newgrf_badge_gui.cpp.

References badge_class, Badge::class_index, Badge::features, GetBadges(), GetBadgeSprite(), GetClassBadge(), NWidgetCore::GetString(), Badge::index, Badge::name, DropDownString< DropDownListItem >::NatSortFunc(), PalSpriteID::pal, ScaleGUITrad(), PalSpriteID::sprite, and BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test().

## ◆ GetStringParameter()

std::string NWidgetBadgeFilter::GetStringParameter | ( | const BadgeFilterChoices & | choices | ) | const

Definition at line 501 of file newgrf_badge_gui.cpp.

## Field Documentation

## ◆ badge_class

BadgeClassID NWidgetBadgeFilter::badge_class
| private

Badge class of this dropdown.

Definition at line 72 of file newgrf_badge_gui.h.

Referenced by GetDropDownList().

## ◆ feature

GrfSpecFeature NWidgetBadgeFilter::feature
| private

Feature of this dropdown.

Definition at line 71 of file newgrf_badge_gui.h.

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

- src/newgrf_badge_gui.h
- src/newgrf_badge_gui.cpp