OpenTTD Source 20260531-master-g0e951f3528
FontState Struct Reference

Text drawing parameters, which can change while drawing a line, but are kept between multiple parts of the same text, e.g. More...

#include <gfx_layout.h>

Public Member Functions

 FontState ()
 Create the font state with an invalid state.
 FontState (ExtendedTextColour colour, FontSize fontsize)
 Create the font state.
auto operator<=> (const FontState &) const =default
void SetColour (ExtendedTextColour c)
 Switch to new colour c.
void PopColour ()
 Switch to and pop the last saved colour on the stack.
void PushColour ()
 Push the current colour on to the stack.
void SetFontSize (FontSize f)
 Switch to using a new font f.

Data Fields

FontSize fontsize
 Current font size.
ExtendedTextColour cur_colour
 Current text colour.
std::vector< ExtendedTextColourcolour_stack
 Stack of colours to assist with colour switching.

Detailed Description

Text drawing parameters, which can change while drawing a line, but are kept between multiple parts of the same text, e.g.

on line breaks.

Definition at line 24 of file gfx_layout.h.

Constructor & Destructor Documentation

◆ FontState() [1/2]

FontState::FontState ( )
inline

Create the font state with an invalid state.

Definition at line 30 of file gfx_layout.h.

References cur_colour, End, and fontsize.

◆ FontState() [2/2]

FontState::FontState ( ExtendedTextColour colour,
FontSize fontsize )
inline

Create the font state.

Parameters
colourThe colour of the font.
fontsizeThe size of the font.

Definition at line 36 of file gfx_layout.h.

References cur_colour, and fontsize.

Member Function Documentation

◆ PopColour()

void FontState::PopColour ( )
inline

Switch to and pop the last saved colour on the stack.

Definition at line 54 of file gfx_layout.h.

References colour_stack, and SetColour().

Referenced by GetLayouter().

◆ PushColour()

void FontState::PushColour ( )
inline

Push the current colour on to the stack.

Definition at line 64 of file gfx_layout.h.

References colour_stack.

Referenced by GetLayouter().

◆ SetColour()

void FontState::SetColour ( ExtendedTextColour c)
inline

Switch to new colour c.

Parameters
cNew colour to use.

Definition at line 44 of file gfx_layout.h.

References Begin, ExtendedTextColour::colour, End, ExtendedTextColour::flags, Forced, Invalid, IsPaletteColour, and BaseBitSet< Timpl, Tvalue_type, Tstorage, Tmask >::Test().

Referenced by GetLayouter(), and PopColour().

◆ SetFontSize()

void FontState::SetFontSize ( FontSize f)
inline

Switch to using a new font f.

Parameters
fNew font to use.

Definition at line 73 of file gfx_layout.h.

Referenced by GetLayouter().

Field Documentation

◆ colour_stack

std::vector<ExtendedTextColour> FontState::colour_stack

Stack of colours to assist with colour switching.

Definition at line 27 of file gfx_layout.h.

Referenced by PopColour(), and PushColour().

◆ cur_colour

ExtendedTextColour FontState::cur_colour

Current text colour.

Definition at line 26 of file gfx_layout.h.

Referenced by FontState(), FontState(), and GetLayouter().

◆ fontsize

FontSize FontState::fontsize

Current font size.

Definition at line 25 of file gfx_layout.h.

Referenced by FontState(), FontState(), and GetLayouter().


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