Loading...
Searching...
No Matches
ml::ButtonSettings Struct Reference

Layout and behaviour settings for ButtonToggle. More...

#include <Malena/Traits/Settings/ButtonSettings.h>

Inheritance diagram for ml::ButtonSettings:
[legend]

Public Types

enum class  IconAlign { ICON_ONLY , ICON_LEFT , ICON_RIGHT , ICON_ABOVE }

Public Member Functions

void addItem (const std::string &label, const std::string &key)
void clearItems ()
float getAnimSpeed () const
IconAlign getIconAlign () const
const sf::TexturegetIconOff () const
sf::IntRect getIconOffRect () const
const sf::TexturegetIconOn () const
sf::IntRect getIconOnRect () const
float getIconPadding () const
sf::Vector2f getIconSize () const
const std::vector< std::pair< std::string, std::string > > & getItems () const
std::string getOffLabel () const
std::string getOnLabel () const
sf::Vector2f getSize () const
ButtonSettingsoperator= (const ControlSettings &c)
ButtonSettingsoperator= (const GraphicSettings &g)
ButtonSettingsoperator= (const ToggleSettings &t)
void setAnimSpeed (float s)
void setIconAlign (IconAlign a)
void setIconOff (const sf::Texture *t)
void setIconOffRect (const sf::IntRect &r)
void setIconOn (const sf::Texture *t)
void setIconOnRect (const sf::IntRect &r)
void setIconPadding (float p)
void setIcons (const sf::Texture *on, const sf::Texture *off=nullptr)
void setIconSize (const sf::Vector2f &s)
void setItems (std::vector< std::pair< std::string, std::string > > i)
void setLabels (const std::string &on, const std::string &off)
void setOffLabel (const std::string &s)
void setOnLabel (const std::string &s)
void setSize (const sf::Vector2f &s)

Public Attributes

float animSpeed = 10.f
IconAlign iconAlign = IconAlign::ICON_ONLY
const sf::TextureiconOff = nullptr
sf::IntRect iconOffRect
const sf::TextureiconOn = nullptr
sf::IntRect iconOnRect
float iconPadding = 6.f
sf::Vector2f iconSize = {0.f, 0.f}
 {0,0} = native size
std::vector< std::pair< std::string, std::string > > items
std::string offLabel = "OFF"
std::string onLabel = "ON"
sf::Vector2f size = {100.f, 36.f}

Detailed Description

Layout and behaviour settings for ButtonToggle.

Colors live in ButtonTheme.

See also
ToggleSettings, ButtonTheme, ButtonStyle, ButtonToggle

Definition at line 27 of file ButtonSettings.h.

Member Enumeration Documentation

◆ IconAlign

enum class ml::ButtonSettings::IconAlign
strong
Enumerator
ICON_ONLY 
ICON_LEFT 
ICON_RIGHT 
ICON_ABOVE 

Definition at line 43 of file ButtonSettings.h.

Member Function Documentation

◆ addItem()

void ml::ToggleSettings::addItem ( const std::string & label,
const std::string & key )
inlineinherited

Definition at line 57 of file ToggleSettings.h.

◆ clearItems()

void ml::ToggleSettings::clearItems ( )
inlineinherited

Definition at line 60 of file ToggleSettings.h.

◆ getAnimSpeed()

float ml::ToggleSettings::getAnimSpeed ( ) const
inlinenodiscardinherited

Definition at line 48 of file ToggleSettings.h.

◆ getIconAlign()

IconAlign ml::ButtonSettings::getIconAlign ( ) const
inlinenodiscard

Definition at line 77 of file ButtonSettings.h.

◆ getIconOff()

const sf::Texture * ml::ButtonSettings::getIconOff ( ) const
inlinenodiscard

Definition at line 73 of file ButtonSettings.h.

◆ getIconOffRect()

sf::IntRect ml::ButtonSettings::getIconOffRect ( ) const
inlinenodiscard

Definition at line 76 of file ButtonSettings.h.

◆ getIconOn()

const sf::Texture * ml::ButtonSettings::getIconOn ( ) const
inlinenodiscard

Definition at line 72 of file ButtonSettings.h.

◆ getIconOnRect()

sf::IntRect ml::ButtonSettings::getIconOnRect ( ) const
inlinenodiscard

Definition at line 75 of file ButtonSettings.h.

◆ getIconPadding()

float ml::ButtonSettings::getIconPadding ( ) const
inlinenodiscard

Definition at line 78 of file ButtonSettings.h.

◆ getIconSize()

sf::Vector2f ml::ButtonSettings::getIconSize ( ) const
inlinenodiscard

Definition at line 74 of file ButtonSettings.h.

◆ getItems()

const std::vector< std::pair< std::string, std::string > > & ml::ToggleSettings::getItems ( ) const
inlinenodiscardinherited

Definition at line 52 of file ToggleSettings.h.

◆ getOffLabel()

std::string ml::ButtonSettings::getOffLabel ( ) const
inlinenodiscard

Definition at line 71 of file ButtonSettings.h.

◆ getOnLabel()

std::string ml::ButtonSettings::getOnLabel ( ) const
inlinenodiscard

Definition at line 70 of file ButtonSettings.h.

◆ getSize()

sf::Vector2f ml::ButtonSettings::getSize ( ) const
inlinenodiscard

Definition at line 69 of file ButtonSettings.h.

◆ operator=() [1/3]

ButtonSettings & ml::ButtonSettings::operator= ( const ControlSettings & c)
inline

Definition at line 55 of file ButtonSettings.h.

◆ operator=() [2/3]

ButtonSettings & ml::ButtonSettings::operator= ( const GraphicSettings & g)
inline

Definition at line 61 of file ButtonSettings.h.

◆ operator=() [3/3]

ButtonSettings & ml::ButtonSettings::operator= ( const ToggleSettings & t)
inline

Definition at line 49 of file ButtonSettings.h.

◆ setAnimSpeed()

void ml::ToggleSettings::setAnimSpeed ( float s)
inlineinherited

Definition at line 49 of file ToggleSettings.h.

◆ setIconAlign()

void ml::ButtonSettings::setIconAlign ( IconAlign a)
inline

Definition at line 93 of file ButtonSettings.h.

◆ setIconOff()

void ml::ButtonSettings::setIconOff ( const sf::Texture * t)
inline

Definition at line 89 of file ButtonSettings.h.

◆ setIconOffRect()

void ml::ButtonSettings::setIconOffRect ( const sf::IntRect & r)
inline

Definition at line 92 of file ButtonSettings.h.

◆ setIconOn()

void ml::ButtonSettings::setIconOn ( const sf::Texture * t)
inline

Definition at line 88 of file ButtonSettings.h.

◆ setIconOnRect()

void ml::ButtonSettings::setIconOnRect ( const sf::IntRect & r)
inline

Definition at line 91 of file ButtonSettings.h.

◆ setIconPadding()

void ml::ButtonSettings::setIconPadding ( float p)
inline

Definition at line 94 of file ButtonSettings.h.

◆ setIcons()

void ml::ButtonSettings::setIcons ( const sf::Texture * on,
const sf::Texture * off = nullptr )
inline

Definition at line 85 of file ButtonSettings.h.

◆ setIconSize()

void ml::ButtonSettings::setIconSize ( const sf::Vector2f & s)
inline

Definition at line 90 of file ButtonSettings.h.

◆ setItems()

void ml::ToggleSettings::setItems ( std::vector< std::pair< std::string, std::string > > i)
inlineinherited

Definition at line 54 of file ToggleSettings.h.

◆ setLabels()

void ml::ButtonSettings::setLabels ( const std::string & on,
const std::string & off )
inline

Definition at line 83 of file ButtonSettings.h.

◆ setOffLabel()

void ml::ButtonSettings::setOffLabel ( const std::string & s)
inline

Definition at line 82 of file ButtonSettings.h.

◆ setOnLabel()

void ml::ButtonSettings::setOnLabel ( const std::string & s)
inline

Definition at line 81 of file ButtonSettings.h.

◆ setSize()

void ml::ButtonSettings::setSize ( const sf::Vector2f & s)
inline

Definition at line 80 of file ButtonSettings.h.

Member Data Documentation

◆ animSpeed

float ml::ToggleSettings::animSpeed = 10.f
inherited

Definition at line 29 of file ToggleSettings.h.

◆ iconAlign

IconAlign ml::ButtonSettings::iconAlign = IconAlign::ICON_ONLY

Definition at line 44 of file ButtonSettings.h.

◆ iconOff

const sf::Texture* ml::ButtonSettings::iconOff = nullptr

Definition at line 38 of file ButtonSettings.h.

◆ iconOffRect

sf::IntRect ml::ButtonSettings::iconOffRect

Definition at line 41 of file ButtonSettings.h.

◆ iconOn

const sf::Texture* ml::ButtonSettings::iconOn = nullptr

Definition at line 37 of file ButtonSettings.h.

◆ iconOnRect

sf::IntRect ml::ButtonSettings::iconOnRect

Definition at line 40 of file ButtonSettings.h.

◆ iconPadding

float ml::ButtonSettings::iconPadding = 6.f

Definition at line 45 of file ButtonSettings.h.

◆ iconSize

sf::Vector2f ml::ButtonSettings::iconSize = {0.f, 0.f}

{0,0} = native size

Definition at line 39 of file ButtonSettings.h.

◆ items

std::vector<std::pair<std::string, std::string> > ml::ToggleSettings::items
inherited

Definition at line 30 of file ToggleSettings.h.

◆ offLabel

std::string ml::ButtonSettings::offLabel = "OFF"

Definition at line 34 of file ButtonSettings.h.

◆ onLabel

std::string ml::ButtonSettings::onLabel = "ON"

Definition at line 33 of file ButtonSettings.h.

◆ size

sf::Vector2f ml::ButtonSettings::size = {100.f, 36.f}

Definition at line 30 of file ButtonSettings.h.


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