Simple SFML GUI
0.2a
|
Pressable button with some configuration options. More...
#include <Button.hpp>
Public Member Functions | |
Button () | |
Default constructor. | |
Button (const Button &button) | |
Button (std::function< void(Button &)> &&action) | |
Action only constructor. | |
Button (std::function< void()> &&action) | |
Void action only constructor. | |
Button (const sf::String &name) | |
Name only constructor. Text will be same as name. | |
Button (const sf::String &name, std::function< void(Button &)> &&action) | |
Like above plus action object. | |
Button (const sf::String &name, std::function< void()> &&action) | |
Like above plus action object. | |
Button (const sf::String &name, const sf::String &text) | |
Different name and text constructor. | |
Button (const sf::String &name, const sf::String &text, std::function< void(Button &)> &&action) | |
Full constructor. | |
Button (const sf::String &name, const sf::String &text, std::function< void()> &&action) | |
Full constructor. | |
virtual void | draw (sf::RenderTarget &target, sf::RenderStates states) |
virtual bool | update (sf::Vector2f mp, bool pressLeft, bool pressRight, bool aboveHover) |
virtual void | updateArea () |
TextLabel & | getLabel () |
const TextLabel & | getLabel () const |
Public Member Functions inherited from Pressable< Button &> | |
virtual bool | setPressed (bool pressed) |
virtual bool | setPressedAlt (bool pressed) |
sf::Keyboard::Key | getHotKey () const |
void | setHotKey (sf::Keyboard::Key hotKey) |
void | setStickyPress (bool stickyPress) |
void | setIgnoreAbove (bool value) |
void | setIgnoreDialogs (bool value) |
void | setIgnoreTextInputable (bool value) |
Public Member Functions inherited from FocusAction< Button & > | |
virtual void | onFocusGain () |
virtual void | onFocusLost () |
Public Member Functions inherited from Element | |
Element (const Element *parent=nullptr) | |
Element (const Element &element) | |
Element & | operator= (const Element &) |
void | mainDraw (sf::RenderTarget &target, const sf::RenderStates &states=sf::RenderStates()) |
void | mainUpdate (sf::RenderWindow &rw) |
void | setParent (const Element *parent) |
const Element * | getParent () const |
virtual bool | setRelativeViewport (sf::RenderTarget &target, const sf::FloatRect *area=nullptr) const |
bool | isMaximized () const |
void | setMaximized (bool maximized) |
void | setMaximizationMode (MaximizationMode value) |
sf::Vector2f | getPosition () const |
sf::Vector2f | getSize () const |
virtual void | setSize (sf::Vector2f) |
virtual void | setPosition (sf::Vector2f) |
void | move (sf::Vector2f) |
sf::FloatRect & | getArea () |
const sf::FloatRect & | getArea () const |
void | fitToWindow (const sf::RenderWindow &rw) |
void | setArea (const sf::FloatRect &area) |
const sf::FloatRect & | getRelativeArea () const |
sf::Vector2f | getRelativeViewportCenterShift () const |
sf::Vector2f | getViewportCenterShift () const |
void | setViewportCenterShift (const sf::Vector2f &value) |
sf::String | getParentName () const |
sf::String | getTypeName () const |
sf::FloatRect | getClippedArea () const |
sf::FloatRect | computeRelativeArea () const |
Public Member Functions inherited from HaveName | |
HaveName (const sf::String &n=L"") | |
const sf::String & | getName () const |
void | setName (const sf::String &name) |
Public Member Functions inherited from HaveFocus | |
HaveFocus (bool focus=false) | |
bool | isFocus () const |
void | setFocus (bool focus) |
Public Member Functions inherited from HaveVisible | |
HaveVisible (bool v=true) | |
bool | isVisible () const |
void | setVisible (bool visible) |
Public Member Functions inherited from HaveAction< Button & > | |
virtual void | onSetAction (const sf::String &type) |
virtual void | setAction (function_type &&action, const sf::String &type=ActionType::main) |
virtual void | setAction (function_type &action, const sf::String &type=ActionType::main) |
virtual void | setAction (std::function< void()> &&action, const sf::String &type=ActionType::main) |
virtual void | setAction (std::function< void()> &action, const sf::String &type=ActionType::main) |
virtual void | doAction (const sf::String &type=ActionType::main) |
Public Member Functions inherited from HaveHover | |
HaveHover (ColorProvider &colorProvider, bool h=false) | |
bool | isHover () const |
void | setHover (bool hover) |
virtual bool | updateHover (const sf::Vector2f &pointer, const sf::FloatRect &clippedArea) |
void | setTooltip (const sf::String &value) |
Public Member Functions inherited from HavePressed | |
HavePressed (ColorProvider &colorProvider, bool p=false, bool pa=false) | |
virtual bool | isPressed () const |
virtual bool | isPressedAlt () const |
Public Member Functions inherited from HaveSelected | |
HaveSelected (ColorProvider &colorProvider) | |
bool | isSelected () const |
void | setSelected (bool value) |
Public Member Functions inherited from HaveEnabled | |
HaveEnabled (ColorProvider &colorProvider, bool e=true) | |
bool | isEnabled () const |
void | setEnabled (bool enabled) |
Public Member Functions inherited from HaveBackground | |
HaveBackground (ColorProvider &colorProvider) | |
void | setBackgroundTexture (const std::shared_ptr< sf::Texture > &backgroundTexture) |
void | setBackgroundTextureRect (const sf::IntRect &value) |
void | setGradientType (GradientType gradientType) |
void | updateGradient (sf::FloatRect &area) |
void | setGradientPoints (const ColorVector &evenlyColors) |
void | setGradientPoints (const GradientVector &gradientPoints) |
void | setGradientModifier (const GradientModifier &gradientModifier) |
void | setBackgroundSymbol (const sf::VertexArray &value) |
void | setBackgroundSymbolTransform (const sf::Transform &value) |
void | setBackgroundSymbolShift (const sf::Vector2f &value) |
sf::Vector2f | getBackgroundSymbolShift () const |
void | setBackgroundSymbolStrech (bool value) |
void | setBackgroundSymbolColor (sf::Color col) |
void | mulBackgroundSymbolColor (sf::Color col) |
void | initDefaultButtonBackgroundStyle (ColorProvider &colorProvider) |
bool | isBackroundTextureRectActive () const |
Public Member Functions inherited from HaveOutline | |
HaveOutline (ColorProvider &colorProvider) | |
void | setOutlineSize (float outlineSize) |
Public Member Functions inherited from SetColorAccess | |
SetColorAccess (ColorProvider &colorProvider) | |
virtual bool | setColorFrom (const SetColorAccess &colorAccess) |
virtual bool | setColor (ColorId::Type colorId, StateId::Type stateId, sf::Color newColor) |
virtual bool | setColorEnabled (ColorId::Type colorId, StateId::Type stateId, bool enabled) |
Public Member Functions inherited from GetColorAccess | |
GetColorAccess (ColorProvider &colorProvider) | |
virtual bool | colorDeduce (const ColorRef &colorRef) const |
virtual bool | getColor (ColorId::Type colorId, StateId::Type stateId, sf::Color &result) const |
Additional Inherited Members | |
Public Types inherited from HaveAction< Button & > | |
using | function_type = typename HaveActionHelper< Button & >::function_type |
Static Public Member Functions inherited from HaveFocus | |
static void | unFocus () |
Static Public Member Functions inherited from HaveBackground | |
static void | setDefaultBackgroundColor (sf::Color defaultBackgroundColor) |
static sf::Color | sum (sf::Color col, sf::Vector3i mod) |
Public Attributes inherited from HaveFocus | |
friend | TextInputable |
Public Attributes inherited from GlobalTimer | |
friend | Element |
Public Attributes inherited from HaveHover | |
friend | Element |
Public Attributes inherited from HavePressed | |
friend | Element |
Public Attributes inherited from HaveEnabled | |
friend | Element |
Public Attributes inherited from HaveBackground | |
friend | Element |
Public Attributes inherited from HaveOutline | |
friend | Element |
Static Public Attributes inherited from GlobalTimer | |
static const sf::Clock & | dclock = GlobalTimer::drawClock |
static const sf::Clock & | rclock = GlobalTimer::runtimeClock |
static const float & | dtime = GlobalTimer::drawTime |
static const float & | rtime = GlobalTimer::runTime |
static const float & | fps = GlobalTimer::framesPerSecond |
Protected Member Functions inherited from Element | |
sf::Vector2f | computeRelativeViewportCenterShift () const |
sf::FloatRect | computeClipped () const |
sf::FloatRect | clipArea (const sf::FloatRect &scissors, sf::FloatRect toCut) const |
ColorProvider & | getColorProvider () |
Protected Member Functions inherited from HaveGUIManagerInfo | |
bool | anyDialogExist () |
Protected Member Functions inherited from HaveBackground | |
void | drawBackgroundSymbol (sf::FloatRect area, sf::RenderTarget &target, const sf::RenderStates &states=sf::RenderStates()) |
Protected Member Functions inherited from HaveOutline | |
void | initDefaultButtonOutlineStyle (ColorProvider &colorProvider) |
sf::FloatRect | withoutOutlineArea (const sf::FloatRect &) |
Protected Member Functions inherited from HaveColorProviderReference | |
HaveColorProviderReference (const HaveColorProviderReference &)=delete | |
HaveColorProviderReference & | operator= (const HaveColorProviderReference &) |
HaveColorProviderReference (ColorProvider &colorProvider) | |
Protected Attributes inherited from Pressable< Button &> | |
sf::Keyboard::Key | hotKey |
bool | hotPress |
bool | stickyPress |
bool | ignoreAbove |
bool | ignoreDialogs |
bool | ignoreTextInputable |
Protected Attributes inherited from Element | |
const Element * | parent = nullptr |
sf::FloatRect | area |
sf::FloatRect | lastArea |
sf::FloatRect | relativeParentArea |
sf::FloatRect | relativeArea |
sf::FloatRect | clippedArea |
sf::Vector2f | viewportCenterShift |
sf::Vector2f | relativeViewportCenterShift |
MaximizationMode | maximizationMode = MaximizationMode::Both |
bool | relativeParentSizeChanged = false |
bool | relativeParentWidthChanged = false |
bool | relativeParentHeightChanged = false |
bool | areaChanged = false |
bool | maximized = false |
Protected Attributes inherited from HaveName | |
sf::String | name |
Protected Attributes inherited from HaveFocus | |
bool | focus |
Protected Attributes inherited from HaveVisible | |
bool | visible |
Protected Attributes inherited from HaveAction< Button & > | |
std::map< sf::String, function_type > | action |
std::map< sf::String, std::function< void()> > | actionVoid |
sf::String | mainActionType |
Protected Attributes inherited from HaveHover | |
bool | hover |
sf::String | tooltip |
Protected Attributes inherited from HavePressed | |
bool | pressed = false |
bool | lastPressLeft = false |
bool | pressedAlt = false |
bool | lastPressRight = false |
Protected Attributes inherited from HaveSelected | |
friend | Element |
bool | selected |
Protected Attributes inherited from HaveEnabled | |
bool | enabled |
Protected Attributes inherited from HaveBackground | |
std::shared_ptr< sf::Texture > | backgroundTexture |
sf::VertexArray | backgroundSymbol |
sf::VertexArray | gradient |
GradientVector | gradientPoints |
GradientType | gradientType |
GradientModifier | gradientModifier |
sf::FloatRect | lastGradientUpdateArea |
sf::IntRect | backgroundTextureRect |
sf::Transform | backgroundSymbolTransform |
sf::Vector2f | backgroundSymbolShift |
bool | backgroundSymbolStrech |
Protected Attributes inherited from HaveOutline | |
float | outlineSize |
Protected Attributes inherited from HaveColorProviderReference | |
ColorProvider & | colorProviderReference |
Static Protected Attributes inherited from HaveFocus | |
static HaveFocus * | lastFocus = nullptr |
static float | timeFocused =0.f |
Static Protected Attributes inherited from HaveBackground | |
static sf::Color | defaultBackgroundColor = {0, 0, 0, 0} |
static std::shared_ptr< sf::Texture > | defaultTexture = nullptr |
Pressable button with some configuration options.
This class represents monostable button. We can set std::function<void(const Button&)> for click action.