Simple GUI Library
Sgl::DefaultSkins::ButtonSkin Class Reference
Inheritance diagram for Sgl::DefaultSkins::ButtonSkin:
Collaboration diagram for Sgl::DefaultSkins::ButtonSkin:

Public Member Functions

 ButtonSkin (Sgl::Button *button)
 
- Public Member Functions inherited from Sgl::DefaultSkins::ButtonBaseSkin
 ButtonBaseSkin (Sgl::Button *button, const StaticStyle *staticStyle, const InteractionStyle *idleStyle, const InteractionStyle *hoveredStyle, const InteractionStyle *pressedStyle)
 
 ButtonBaseSkin (const StaticStyle *staticStyle, const InteractionStyle *idleStyle, const InteractionStyle *hoveredStyle, const InteractionStyle *pressedStyle)
 
virtual void dispose () override
 Should be called by Control when this skin is replaced. More...
 
virtual void attach (Button *button) override
 
virtual void prerenderControl () override
 
virtual const ControlgetControl () const override
 
virtual ControlgetModifiableControl () override
 
virtual int32_t computePrefHeight (int32_t width=-1) const override
 
virtual int32_t computePrefWidth (int32_t height=-1) const override
 
virtual void layoutChildren () override
 
void applyInteractionStyle (InteractionStyle::Type type)
 
- Public Member Functions inherited from Sgl::Skin
virtual ComponentgetHitComponent (int32_t x, int32_t y)
 
virtual int32_t computeMinHeight (int32_t width=-1) const
 
virtual int32_t computeMinWidth (int32_t height=-1) const
 
virtual int32_t computeMaxHeight (int32_t width=-1) const
 
virtual int32_t computeMaxWidth (int32_t height=-1) const
 

Static Public Attributes

static const Insets PADDING_LABEL_ONLY = Insets{5, 10}
 
static const Insets PADDING_ICON_ONLY = Insets{5}
 
static const Insets PADDING_LABEL_AND_ICON = Insets{5, 10}
 
static const int32_t MARGIN = 5
 
static const Border BORDER = Border{1, 0xE9'E9'E9'FF}
 
static const StaticStyle STATIC_STYLE
 
static const Sml::Color IDLE_FOREGROUND = Sml::COLOR_BLACK
 
static const ColorFill IDLE_BACKGROUND_FILL = {0xF5'F5'F5'FF}
 
static const Background IDLE_BACKGROUND = {&IDLE_BACKGROUND_FILL}
 
static const InteractionStyle IDLE_STYLE
 
static const Sml::Color HOVERED_FOREGROUND = Sml::COLOR_WHITE
 
static const ColorFill HOVERED_BACKGROUND_FILL = {0x25'92'FF'FF}
 
static const Background HOVERED_BACKGROUND = {&HOVERED_BACKGROUND_FILL}
 
static const InteractionStyle HOVERED_STYLE
 

Additional Inherited Members

- Protected Member Functions inherited from Sgl::DefaultSkins::ButtonBaseSkin
int32_t getMargin () const
 
void applyStaticStyle ()
 
- Protected Attributes inherited from Sgl::DefaultSkins::ButtonBaseSkin
const StaticStylem_StaticStyle = nullptr
 
const InteractionStylem_IdleStyle = nullptr
 
const InteractionStylem_HoveredStyle = nullptr
 
const InteractionStylem_PressedStyle = nullptr
 
Sgl::Buttonm_Button = nullptr
 
ButtonBaseSkinEventListenerm_Handler = nullptr
 
Sgl::Text m_Text
 
Sgl::ImageView m_Icon
 

Detailed Description

Definition at line 129 of file default_skins.h.

Constructor & Destructor Documentation

◆ ButtonSkin() [1/2]

Sgl::DefaultSkins::ButtonSkin::ButtonSkin ( )

Definition at line 305 of file default_skins.cpp.

◆ ButtonSkin() [2/2]

Sgl::DefaultSkins::ButtonSkin::ButtonSkin ( Sgl::Button button)

Definition at line 308 of file default_skins.cpp.

Member Data Documentation

◆ BORDER

const Border Sgl::DefaultSkins::ButtonSkin::BORDER = Border{1, 0xE9'E9'E9'FF}
static

Definition at line 136 of file default_skins.h.

◆ HOVERED_BACKGROUND

const Background Sgl::DefaultSkins::ButtonSkin::HOVERED_BACKGROUND = {&HOVERED_BACKGROUND_FILL}
static

Definition at line 146 of file default_skins.h.

◆ HOVERED_BACKGROUND_FILL

const ColorFill Sgl::DefaultSkins::ButtonSkin::HOVERED_BACKGROUND_FILL = {0x25'92'FF'FF}
static

Definition at line 145 of file default_skins.h.

◆ HOVERED_FOREGROUND

const Sml::Color Sgl::DefaultSkins::ButtonSkin::HOVERED_FOREGROUND = Sml::COLOR_WHITE
static

Definition at line 144 of file default_skins.h.

◆ HOVERED_STYLE

const ButtonBaseSkin::InteractionStyle Sgl::DefaultSkins::ButtonSkin::HOVERED_STYLE
static
Initial value:
= {HOVERED_FOREGROUND,
&HOVERED_BACKGROUND}

Definition at line 147 of file default_skins.h.

◆ IDLE_BACKGROUND

const Background Sgl::DefaultSkins::ButtonSkin::IDLE_BACKGROUND = {&IDLE_BACKGROUND_FILL}
static

Definition at line 141 of file default_skins.h.

◆ IDLE_BACKGROUND_FILL

const ColorFill Sgl::DefaultSkins::ButtonSkin::IDLE_BACKGROUND_FILL = {0xF5'F5'F5'FF}
static

Definition at line 140 of file default_skins.h.

◆ IDLE_FOREGROUND

const Sml::Color Sgl::DefaultSkins::ButtonSkin::IDLE_FOREGROUND = Sml::COLOR_BLACK
static

Definition at line 139 of file default_skins.h.

◆ IDLE_STYLE

const ButtonBaseSkin::InteractionStyle Sgl::DefaultSkins::ButtonSkin::IDLE_STYLE
static
Initial value:
= {IDLE_FOREGROUND,
&IDLE_BACKGROUND}

Definition at line 142 of file default_skins.h.

◆ MARGIN

const int32_t Sgl::DefaultSkins::ButtonSkin::MARGIN = 5
static

Definition at line 135 of file default_skins.h.

◆ PADDING_ICON_ONLY

const Insets Sgl::DefaultSkins::ButtonSkin::PADDING_ICON_ONLY = Insets{5}
static

Definition at line 133 of file default_skins.h.

◆ PADDING_LABEL_AND_ICON

const Insets Sgl::DefaultSkins::ButtonSkin::PADDING_LABEL_AND_ICON = Insets{5, 10}
static

Definition at line 134 of file default_skins.h.

◆ PADDING_LABEL_ONLY

const Insets Sgl::DefaultSkins::ButtonSkin::PADDING_LABEL_ONLY = Insets{5, 10}
static

Definition at line 132 of file default_skins.h.

◆ STATIC_STYLE

const ButtonBaseSkin::StaticStyle Sgl::DefaultSkins::ButtonSkin::STATIC_STYLE
static
Initial value:
= {PADDING_LABEL_ONLY,
PADDING_ICON_ONLY,
PADDING_LABEL_AND_ICON,
MARGIN,
BORDER}

Definition at line 137 of file default_skins.h.


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