OpenTTD Source: NWidgetBase Class Reference

OpenTTD Source 15.0-RC2

Public Member Functions | Data Fields | Protected Member Functions | Protected Attributes
NWidgetBase Class Referenceabstract
Hierarchical widgets

Baseclass for nested widgets. More...

`#include <widget_type.h>`

Inheritance diagram for NWidgetBase:

## Public Member Functions
| NWidgetBase (WidgetType tp, WidgetID index=INVALID_WIDGET)
void | ApplyAspectRatio ()
virtual void | AdjustPaddingForZoom ()
virtual void | SetupSmallestSize (Window *w)=0
| Compute smallest size needed by the widget.
virtual void | AssignSizePosition (SizingType sizing, int x, int y, uint given_width, uint given_height, bool rtl)=0
| Assign size and position to the widget.
virtual void | FillWidgetLookup (WidgetLookup &widget_lookup)
| Fill the Window::widget_lookup with pointers to nested widgets in the tree.
virtual NWidgetCore * | GetWidgetFromPos (int x, int y)=0
| Retrieve a widget by its position.
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
virtual bool | IsHighlighted () const
virtual TextColour | GetHighlightColour () const
virtual void | SetHighlighted (TextColour highlight_colour)
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 | Draw (const Window *w)=0
| Draw the widgets of the tree.
virtual void | SetDirty (const Window *w) const
| Mark the widget as 'dirty' (in need of repaint).
Rect | GetCurrentRect () const

## Data Fields
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.

## Protected Member Functions
void | StoreSizePosition (SizingType sizing, int x, int y, uint given_width, uint given_height)
| Store size and position.

## Protected Attributes
const WidgetID | index = INVALID_WIDGET
| Index of the nested widget (`INVALID_WIDGET` means 'not used').

## Detailed Description

Baseclass for nested widgets.

Invariant
  After initialization, .
  After initialization, .

Definition at line 136 of file widget_type.h.

## Constructor & Destructor Documentation

## ◆ NWidgetBase()

NWidgetBase::NWidgetBase | ( | WidgetType | tp,
|  | WidgetID | index = `INVALID_WIDGET`
| ) |  |
| inline

Definition at line 138 of file widget_type.h.

## Member Function Documentation

## ◆ AdjustPaddingForZoom()

void NWidgetBase::AdjustPaddingForZoom | ( |  | ) |
| virtual

Definition at line 970 of file widget.cpp.

## ◆ ApplyAspectRatio()

void NWidgetBase::ApplyAspectRatio | ( |  | ) |

Definition at line 956 of file widget.cpp.

## ◆ AssignSizePosition()

void NWidgetBase::AssignSizePosition | ( | SizingType | sizing,
|  | int | x,
|  | int | y,
|  | uint | given_width,
|  | uint | given_height,
|  | bool | rtl
| ) |  |
| pure virtual

Assign size and position to the widget.

Parameters

  sizing | Type of resizing to perform.
  x | Horizontal offset of the widget relative to the left edge of the window.
  y | Vertical offset of the widget relative to the top edge of the window.
  given_width | Width allocated to the widget.
  given_height | Height allocated to the widget.
  rtl | Adapt for right-to-left languages (position contents of horizontal containers backwards).

Afterwards, pos_x and pos_y contain the top-left position of the widget, smallest_x and smallest_y contain the smallest size such that all widgets of the window are consistent, and current_x and current_y contain the current size.

Implemented in NWidgetServerListHeader, NWidgetNewGRFDisplay, NWidgetSmallmapDisplay, NWidgetToolbarContainer, NWidgetLayer, NWidgetResizeBase, NWidgetStacked, NWidgetHorizontal, NWidgetHorizontalLTR, NWidgetVertical, NWidgetMatrix, and NWidgetBackground.

Referenced by NWidgetSmallmapDisplay::AssignSizePosition().

## ◆ Draw()

void NWidgetBase::Draw | ( | const Window * | w | ) |
| pure virtual

Draw the widgets of the tree.

The function calls Window::DrawWidget for each widget with a non-negative index, after the widget itself is painted.

Parameters

  w | Window that owns the tree.

Implemented in NWidgetNewGRFDisplay, NWidgetSocialPlugins, NWidgetToolbarContainer, NWidgetLayer, NWidgetContainer, NWidgetStacked, NWidgetMatrix, NWidgetSpacer, NWidgetBackground, NWidgetViewport, NWidgetScrollbar, and NWidgetLeaf.

Referenced by NWidgetMatrix::Draw().

## ◆ FillWidgetLookup()

void NWidgetBase::FillWidgetLookup | ( | WidgetLookup & | widget_lookup | ) |
| virtual

Fill the Window::widget_lookup with pointers to nested widgets in the tree.

Parameters

  widget_lookup | The WidgetLookup.

Reimplemented in NWidgetNewGRFDisplay, NWidgetContainer, NWidgetStacked, and NWidgetBackground.

Definition at line 915 of file widget.cpp.

References index.

Referenced by NWidgetNewGRFDisplay::FillWidgetLookup(), NWidgetContainer::FillWidgetLookup(), NWidgetBackground::FillWidgetLookup(), and NWidgetStacked::SetDisplayedPlane().

## ◆ GetCurrentRect()

Rect NWidgetBase::GetCurrentRect | ( |  | ) | const
| inline

Definition at line 216 of file widget_type.h.

## ◆ GetHighlightColour()

virtual TextColour NWidgetBase::GetHighlightColour | ( |  | ) | const
| inlinevirtual

Reimplemented in NWidgetCore.

Definition at line 181 of file widget_type.h.

## ◆ GetHorizontalStepSize()

uint NWidgetBase::GetHorizontalStepSize | ( | SizingType | sizing | ) | const
| inline

Get the horizontal sizing step.

Parameters

  sizing | Type of resize being performed.

Definition at line 260 of file widget_type.h.

References fill_x, resize_x, and ST_RESIZE.

## ◆ GetIndex()

WidgetID NWidgetBase::GetIndex | ( |  | ) | const
| inline

Definition at line 179 of file widget_type.h.

## ◆ GetParentWidget() [1/2]

template<class NWID >

NWID * NWidgetBase::GetParentWidget | ( |  | ) |
| inline

Get parent widget of type NWID.

Template Parameters

  NWID | Type of the nested widget.

Returns
  Parent widget, or nullptr if no widget of the specified type is found.

Definition at line 157 of file widget_type.h.

References parent.

Referenced by BuildObjectWindow::DrawWidget().

## ◆ GetParentWidget() [2/2]

template<class NWID >

const NWID * NWidgetBase::GetParentWidget | ( |  | ) | const
| inline

Get parent widget of type NWID.

Template Parameters

  NWID | Type of the nested widget.

Returns
  Parent widget, or nullptr if no widget of the specified type is found.

Definition at line 171 of file widget_type.h.

References parent.

## ◆ GetVerticalStepSize()

uint NWidgetBase::GetVerticalStepSize | ( | SizingType | sizing | ) | const
| inline

Get the vertical sizing step.

Parameters

  sizing | Type of resize being performed.

Definition at line 269 of file widget_type.h.

References fill_y, resize_y, and ST_RESIZE.

## ◆ GetWidgetFromPos()

NWidgetCore * NWidgetBase::GetWidgetFromPos | ( | int | x,
|  | int | y
| ) |  |
| pure virtual

Retrieve a widget by its position.

Parameters

  x | Horizontal position relative to the left edge of the window.
  y | Vertical position relative to the top edge of the window.

Returns
  Returns the deepest nested widget that covers the given position, or `nullptr` if no widget can be found.

Implemented in NWidgetNewGRFDisplay, NWidgetCore, NWidgetContainer, NWidgetStacked, NWidgetMatrix, NWidgetSpacer, and NWidgetBackground.

## ◆ GetWidgetOfType()

NWidgetBase * NWidgetBase::GetWidgetOfType | ( | WidgetType | tp | ) |
| virtual

Retrieve a widget by its type.

Parameters

  tp | Widget type to search for.

Returns
  Returns the first widget of the specified type, or `nullptr` if no widget can be found.

Reimplemented in NWidgetContainer, and NWidgetBackground.

Definition at line 951 of file widget.cpp.

References type.

Referenced by NWidgetContainer::GetWidgetOfType(), and NWidgetBackground::GetWidgetOfType().

## ◆ IsHighlighted()

virtual bool NWidgetBase::IsHighlighted | ( |  | ) | const
| inlinevirtual

Reimplemented in NWidgetCore.

Definition at line 180 of file widget_type.h.

## ◆ SetDirty()

void NWidgetBase::SetDirty | ( | const Window * | w | ) | const
| virtual

Mark the widget as 'dirty' (in need of repaint).

Parameters

  w | Window owning the widget.

Reimplemented in NWidgetSpacer.

Definition at line 931 of file widget.cpp.

References AddDirtyBlock(), current_x, current_y, Window::left, pos_x, pos_y, and Window::top.

Referenced by Window::DisableAllWidgetHighlight(), DispatchLeftClickEvent(), SmallMapWindow::OnClick(), SmallMapWindow::OnInvalidateData(), SmallMapWindow::OnMouseOver(), VehicleListWindow::OnPaint(), SmallMapWindow::OnScroll(), Window::RaiseButtons(), ScrollbarClickPositioning(), Window::SetFocusedWidget(), SetFocusedWindow(), Window::SetWidgetHighlight(), ShowDropDownList(), SmallMapWindow::SmallMapCenterOnCurrentPos(), and Window::UnfocusFocusedWidget().

## ◆ SetHighlighted()

virtual void NWidgetBase::SetHighlighted | ( | TextColour | highlight_colour | ) |
| inlinevirtual

Reimplemented in NWidgetCore.

Definition at line 182 of file widget_type.h.

## ◆ SetPadding() [1/2]

void NWidgetBase::SetPadding | ( | const RectPadding & | padding | ) |
| inline

Set additional space (padding) around the widget.

Parameters

  padding | Amount of padding around the widget.

Definition at line 204 of file widget_type.h.

References padding, and uz_padding.

## ◆ SetPadding() [2/2]

void NWidgetBase::SetPadding | ( | uint8_t | top,
|  | uint8_t | right,
|  | uint8_t | bottom,
|  | uint8_t | left
| ) |  |
| inline

Set additional space (padding) around the widget.

Parameters

  top | Amount of additional space above the widget.
  right | Amount of additional space right of the widget.
  bottom | Amount of additional space below the widget.
  left | Amount of additional space left of the widget.

Definition at line 191 of file widget_type.h.

References uz_padding.

Referenced by ApplyNWidgetPartAttribute().

## ◆ SetupSmallestSize()

void NWidgetBase::SetupSmallestSize | ( | Window * | w | ) |
| pure virtual

Compute smallest size needed by the widget.

The smallest size of a widget is the smallest size that a widget needs to display itself properly. In addition, filling and resizing of the widget are computed. The function calls Window::UpdateWidgetSize for each leaf widget and background widget without child with a non-negative index.

Parameters

  w | Window owning the widget.

Note
  After the computation, the results can be queried by accessing the smallest_x and smallest_y data members of the widget.

Implemented in NWidgetServerListHeader, NWidgetNewGRFDisplay, NWidgetSocialPlugins, NWidgetSmallmapDisplay, NWidgetToolbarContainer, NWidgetScenarioToolbarContainer, NWidgetLayer, NWidgetStacked, NWidgetHorizontal, NWidgetVertical, NWidgetMatrix, NWidgetSpacer, NWidgetBackground, NWidgetViewport, NWidgetScrollbar, and NWidgetLeaf.

Referenced by NWidgetSmallmapDisplay::SetupSmallestSize().

## ◆ StoreSizePosition()

void NWidgetBase::StoreSizePosition | ( | SizingType | sizing,
|  | int | x,
|  | int | y,
|  | uint | given_width,
|  | uint | given_height
| ) |  |
| inlineprotected

Store size and position.

Parameters

  sizing | Type of resizing to perform.
  x | Horizontal offset of the widget relative to the left edge of the window.
  y | Vertical offset of the widget relative to the top edge of the window.
  given_width | Width allocated to the widget.
  given_height | Height allocated to the widget.

Definition at line 282 of file widget_type.h.

References current_x, current_y, pos_x, pos_y, smallest_x, smallest_y, and ST_SMALLEST.

Referenced by NWidgetNewGRFDisplay::AssignSizePosition(), NWidgetLayer::AssignSizePosition(), NWidgetResizeBase::AssignSizePosition(), NWidgetStacked::AssignSizePosition(), NWidgetHorizontal::AssignSizePosition(), NWidgetVertical::AssignSizePosition(), and NWidgetBackground::AssignSizePosition().

## Field Documentation

## ◆ aspect_flags

AspectFlags NWidgetBase::aspect_flags = AspectFlag::ResizeX

Which dimensions can be resized.

Definition at line 240 of file widget_type.h.

Referenced by ApplyNWidgetPartAttribute(), and NWidgetResizeBase::SetAspect().

## ◆ aspect_ratio

float NWidgetBase::aspect_ratio = 0

Desired aspect ratio of widget.

Definition at line 239 of file widget_type.h.

Referenced by ApplyNWidgetPartAttribute(), and NWidgetResizeBase::SetAspect().

## ◆ current_x

uint NWidgetBase::current_x = 0

Current horizontal size (after resizing).

Definition at line 237 of file widget_type.h.

Referenced by NWidgetServerListHeader::AssignSizePosition(), NWidgetSmallmapDisplay::AssignSizePosition(), NWidgetToolbarContainer::AssignSizePosition(), NWidgetHorizontal::AssignSizePosition(), NWidgetMatrix::AssignSizePosition(), NWidgetLeaf::ButtonHit(), NWidgetMatrix::Draw(), NWidgetSpacer::Draw(), NWidgetBackground::Draw(), NWidgetViewport::Draw(), NWidgetScrollbar::Draw(), NWidgetLeaf::Draw(), NetworkGameWindow::DrawServerLine(), SmallMapWindow::GetPositionOnLegend(), LinkGraphOverlay::GetWidgetDpi(), NWidgetNewGRFDisplay::GetWidgetFromPos(), NWidgetCore::GetWidgetFromPos(), NWidgetContainer::GetWidgetFromPos(), NWidgetStacked::GetWidgetFromPos(), NWidgetMatrix::GetWidgetFromPos(), NWidgetBackground::GetWidgetFromPos(), NWidgetViewport::InitializeViewport(), NetworkContentListWindow::OnClick(), SmallMapWindow::OnClick(), TransparenciesWindow::OnClick(), GoalListWindow::OnPaint(), RefitWindow::OnPaint(), CompanyWindow::OnResize(), DepotWindow::OnResize(), SelectGameWindow::OnResize(), NewsWindow::OnResize(), GameOptionsWindow::OnResize(), ScrollbarClickHandler(), SetCandidatePos(), Scrollbar::SetCapacityFromWidget(), NWidgetMatrix::SetCount(), SetDirty(), SmallMapWindow::SetNewScroll(), SmallMapWindow::SmallMapCenterOnCurrentPos(), StoreSizePosition(), NWidgetResizeBase::UpdateMultilineWidgetSize(), and NWidgetViewport::UpdateViewportCoordinates().

## ◆ current_y

uint NWidgetBase::current_y = 0

Current vertical size (after resizing).

Definition at line 238 of file widget_type.h.

Referenced by NWidgetServerListHeader::AssignSizePosition(), NWidgetSmallmapDisplay::AssignSizePosition(), NWidgetToolbarContainer::AssignSizePosition(), NWidgetMatrix::AssignSizePosition(), NWidgetMatrix::Draw(), NWidgetSpacer::Draw(), NWidgetBackground::Draw(), NWidgetViewport::Draw(), NWidgetScrollbar::Draw(), NWidgetLeaf::Draw(), DepotWindow::DrawWidget(), LinkGraphOverlay::GetWidgetDpi(), NWidgetNewGRFDisplay::GetWidgetFromPos(), NWidgetCore::GetWidgetFromPos(), NWidgetContainer::GetWidgetFromPos(), NWidgetStacked::GetWidgetFromPos(), NWidgetMatrix::GetWidgetFromPos(), NWidgetBackground::GetWidgetFromPos(), NWidgetViewport::InitializeViewport(), SmallMapWindow::OnClick(), VehicleDetailsWindow::OnInvalidateData(), ScrollbarClickHandler(), SetCandidatePos(), Scrollbar::SetCapacityFromWidget(), NWidgetMatrix::SetCount(), SetDirty(), SmallMapWindow::SetNewScroll(), SmallMapWindow::SmallMapCenterOnCurrentPos(), StoreSizePosition(), and NWidgetViewport::UpdateViewportCoordinates().

## ◆ fill_x

uint NWidgetBase::fill_x = 0

Horizontal fill stepsize (from initial size, `0` means not resizable).

Definition at line 227 of file widget_type.h.

Referenced by GetHorizontalStepSize(), NWidgetResizeBase::NWidgetResizeBase(), NWidgetResizeBase::SetFill(), NWidgetServerListHeader::SetupSmallestSize(), NWidgetNewGRFDisplay::SetupSmallestSize(), NWidgetSmallmapDisplay::SetupSmallestSize(), NWidgetToolbarContainer::SetupSmallestSize(), NWidgetLayer::SetupSmallestSize(), NWidgetStacked::SetupSmallestSize(), NWidgetHorizontal::SetupSmallestSize(), NWidgetVertical::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), and NWidgetLeaf::SetupSmallestSize().

## ◆ fill_y

uint NWidgetBase::fill_y = 0

Vertical fill stepsize (from initial size, `0` means not resizable).

Definition at line 228 of file widget_type.h.

Referenced by GetVerticalStepSize(), NWidgetResizeBase::NWidgetResizeBase(), NWidgetResizeBase::SetFill(), NWidgetServerListHeader::SetupSmallestSize(), NWidgetNewGRFDisplay::SetupSmallestSize(), NWidgetSmallmapDisplay::SetupSmallestSize(), NWidgetToolbarContainer::SetupSmallestSize(), NWidgetLayer::SetupSmallestSize(), NWidgetStacked::SetupSmallestSize(), NWidgetHorizontal::SetupSmallestSize(), NWidgetVertical::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), and NWidgetLeaf::SetupSmallestSize().

## ◆ index

const WidgetID NWidgetBase::index = INVALID_WIDGET
| protected

Index of the nested widget (`INVALID_WIDGET` means 'not used').

Definition at line 251 of file widget_type.h.

Referenced by NWidgetBackground::Draw(), NWidgetLeaf::Draw(), FillWidgetLookup(), NWidgetLeaf::NWidgetLeaf(), NWidgetStacked::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), and NWidgetLeaf::SetupSmallestSize().

## ◆ padding

RectPadding NWidgetBase::padding {}

Padding added to the widget. Managed by parent container widget. (parent container may swap left and right for RTL)

Definition at line 245 of file widget_type.h.

Referenced by SmallMapWindow::DrawWidget(), SetPadding(), NWidgetStacked::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), and NWidgetLeaf::SetupSmallestSize().

## ◆ parent

NWidgetBase* NWidgetBase::parent = nullptr

Parent widget of this widget, automatically filled in when added to container.

Definition at line 248 of file widget_type.h.

Referenced by NWidgetBackground::Add(), NWidgetContainer::Add(), GetParentWidget(), and GetParentWidget().

## ◆ pos_x

int NWidgetBase::pos_x = 0

Horizontal position of top-left corner of the widget in the window.

Definition at line 242 of file widget_type.h.

Referenced by NWidgetServerListHeader::AssignSizePosition(), NWidgetSmallmapDisplay::AssignSizePosition(), NWidgetToolbarContainer::AssignSizePosition(), NWidgetMatrix::AssignSizePosition(), NWidgetLeaf::ButtonHit(), IndustryCargoesWindow::CalculatePositionInWidget(), DispatchLeftClickEvent(), NWidgetMatrix::Draw(), NWidgetLeaf::Draw(), SmallMapWindow::GetPositionOnLegend(), NWidgetNewGRFDisplay::GetWidgetFromPos(), NWidgetCore::GetWidgetFromPos(), NWidgetContainer::GetWidgetFromPos(), NWidgetStacked::GetWidgetFromPos(), NWidgetMatrix::GetWidgetFromPos(), NWidgetBackground::GetWidgetFromPos(), NWidgetViewport::InitializeViewport(), NetworkContentListWindow::OnClick(), SmallMapWindow::OnClick(), TransparenciesWindow::OnClick(), RefitWindow::OnClick(), RefitWindow::OnDragDrop(), BuildBridgeWindow::OnInitialPosition(), RefitWindow::OnMouseDrag(), SmallMapWindow::OnMouseWheel(), RefitWindow::OnPaint(), ScrollbarClickHandler(), SetCandidatePos(), SetDirty(), StoreSizePosition(), and NWidgetViewport::UpdateViewportCoordinates().

## ◆ pos_y

int NWidgetBase::pos_y = 0

Vertical position of top-left corner of the widget in the window.

Definition at line 243 of file widget_type.h.

Referenced by NWidgetServerListHeader::AssignSizePosition(), NWidgetSmallmapDisplay::AssignSizePosition(), NWidgetToolbarContainer::AssignSizePosition(), NWidgetMatrix::AssignSizePosition(), IndustryCargoesWindow::CalculatePositionInWidget(), NWidgetMatrix::Draw(), NWidgetLeaf::Draw(), SmallMapWindow::GetPositionOnLegend(), Window::GetRowFromWidget(), NWidgetNewGRFDisplay::GetWidgetFromPos(), NWidgetCore::GetWidgetFromPos(), NWidgetContainer::GetWidgetFromPos(), NWidgetStacked::GetWidgetFromPos(), NWidgetMatrix::GetWidgetFromPos(), NWidgetBackground::GetWidgetFromPos(), NWidgetViewport::InitializeViewport(), SmallMapWindow::OnClick(), BuildBridgeWindow::OnInitialPosition(), SmallMapWindow::OnMouseWheel(), ScrollbarClickHandler(), SetCandidatePos(), SetDirty(), StoreSizePosition(), and NWidgetViewport::UpdateViewportCoordinates().

## ◆ resize_x

uint NWidgetBase::resize_x = 0

Horizontal resize step (`0` means not resizable).

Definition at line 229 of file widget_type.h.

Referenced by GetHorizontalStepSize(), DepotWindow::OnResize(), Scrollbar::SetCapacityFromWidget(), NWidgetResizeBase::SetResize(), NWidgetServerListHeader::SetupSmallestSize(), NWidgetNewGRFDisplay::SetupSmallestSize(), NWidgetSmallmapDisplay::SetupSmallestSize(), NWidgetToolbarContainer::SetupSmallestSize(), NWidgetLayer::SetupSmallestSize(), NWidgetStacked::SetupSmallestSize(), NWidgetHorizontal::SetupSmallestSize(), NWidgetVertical::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), and NWidgetLeaf::SetupSmallestSize().

## ◆ resize_y

uint NWidgetBase::resize_y = 0

Vertical resize step (`0` means not resizable).

Definition at line 230 of file widget_type.h.

Referenced by IndustryCargoesWindow::CalculatePositionInWidget(), DepotWindow::DrawWidget(), IndustryCargoesWindow::DrawWidget(), SpriteAlignerWindow::DrawWidget(), Window::GetRowFromWidget(), GetVerticalStepSize(), Scrollbar::SetCapacityFromWidget(), NWidgetResizeBase::SetResize(), NWidgetServerListHeader::SetupSmallestSize(), NWidgetNewGRFDisplay::SetupSmallestSize(), NWidgetSmallmapDisplay::SetupSmallestSize(), NWidgetToolbarContainer::SetupSmallestSize(), NWidgetLayer::SetupSmallestSize(), NWidgetStacked::SetupSmallestSize(), NWidgetHorizontal::SetupSmallestSize(), NWidgetVertical::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), and NWidgetLeaf::SetupSmallestSize().

## ◆ smallest_x

uint NWidgetBase::smallest_x = 0

Smallest horizontal size of the widget in a filled window.

Definition at line 234 of file widget_type.h.

Referenced by NWidgetServerListHeader::AssignSizePosition(), NWidgetSmallmapDisplay::AssignSizePosition(), NWidgetToolbarContainer::AssignSizePosition(), NWidgetLayer::AssignSizePosition(), NWidgetStacked::AssignSizePosition(), NWidgetHorizontal::AssignSizePosition(), NWidgetVertical::AssignSizePosition(), NWidgetMatrix::AssignSizePosition(), NWidgetMatrix::Draw(), NWidgetMainToolbarContainer::GetButtonArrangement(), NWidgetScenarioToolbarContainer::GetButtonArrangement(), NWidgetMatrix::GetWidgetFromPos(), NWidgetServerListHeader::SetupSmallestSize(), NWidgetNewGRFDisplay::SetupSmallestSize(), NWidgetSmallmapDisplay::SetupSmallestSize(), NWidgetToolbarContainer::SetupSmallestSize(), NWidgetLayer::SetupSmallestSize(), NWidgetStacked::SetupSmallestSize(), NWidgetHorizontal::SetupSmallestSize(), NWidgetVertical::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetSpacer::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), NWidgetViewport::SetupSmallestSize(), NWidgetScrollbar::SetupSmallestSize(), NWidgetLeaf::SetupSmallestSize(), and StoreSizePosition().

## ◆ smallest_y

uint NWidgetBase::smallest_y = 0

Smallest vertical size of the widget in a filled window.

Definition at line 235 of file widget_type.h.

Referenced by NWidgetServerListHeader::AssignSizePosition(), NWidgetSmallmapDisplay::AssignSizePosition(), NWidgetToolbarContainer::AssignSizePosition(), NWidgetLayer::AssignSizePosition(), NWidgetStacked::AssignSizePosition(), NWidgetHorizontal::AssignSizePosition(), NWidgetVertical::AssignSizePosition(), NWidgetMatrix::AssignSizePosition(), NWidgetMatrix::Draw(), NWidgetMatrix::GetWidgetFromPos(), NWidgetServerListHeader::SetupSmallestSize(), NWidgetNewGRFDisplay::SetupSmallestSize(), NWidgetSmallmapDisplay::SetupSmallestSize(), NWidgetToolbarContainer::SetupSmallestSize(), NWidgetLayer::SetupSmallestSize(), NWidgetStacked::SetupSmallestSize(), NWidgetHorizontal::SetupSmallestSize(), NWidgetVertical::SetupSmallestSize(), NWidgetMatrix::SetupSmallestSize(), NWidgetSpacer::SetupSmallestSize(), NWidgetBackground::SetupSmallestSize(), NWidgetViewport::SetupSmallestSize(), NWidgetScrollbar::SetupSmallestSize(), NWidgetLeaf::SetupSmallestSize(), and StoreSizePosition().

## ◆ type

WidgetType NWidgetBase::type {}

Type of the widget / nested widget.

Definition at line 226 of file widget_type.h.

Referenced by NWidgetToolbarContainer::AssignSizePosition(), DispatchLeftClickEvent(), DispatchMouseWheelEvent(), NWidgetBackground::Draw(), NWidgetScrollbar::Draw(), NWidgetLeaf::Draw(), EditBoxInGlobalFocus(), QueryString::GetBoundingRect(), Window::GetCaretPosition(), QueryString::GetCaretPosition(), QueryString::GetCharAtPosition(), Window::GetFocusedTextbuf(), Window::GetTextBoundingRect(), Window::GetTextCharacterAtPosition(), GetWidgetOfType(), NWidgetContainer::GetWidgetOfType(), NWidgetBackground::GetWidgetOfType(), HandleScrollbarScrolling(), NWidgetToolbarContainer::IsButton(), Window::OnDropdownClose(), Window::OnFocus(), Window::OnFocusLost(), Window::OnHotkey(), SmallMapWindow::OnInvalidateData(), ScrollbarClickHandler(), ScrollbarClickPositioning(), Window::SetFocusedWidget(), NWidgetCore::SetResizeWidgetType(), NWidgetBackground::SetupSmallestSize(), NWidgetScrollbar::SetupSmallestSize(), NWidgetLeaf::SetupSmallestSize(), ShowDropDownList(), and Window::UnfocusFocusedWidget().

## ◆ uz_padding

RectPadding NWidgetBase::uz_padding {}

Unscaled padding, for resize calculation.

Definition at line 246 of file widget_type.h.

Referenced by SetPadding(), and SetPadding().

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

- src/widget_type.h
- src/widget.cpp