26#ifndef TGUI_BUTTON_HPP
27#define TGUI_BUTTON_HPP
30#include <TGUI/Renderers/ButtonRenderer.hpp>
31#include <TGUI/Widgets/ClickableWidget.hpp>
32#include <TGUI/Text.hpp>
45 typedef std::shared_ptr<Button>
Ptr;
46 typedef std::shared_ptr<const Button>
ConstPtr;
160 void leftMousePressed(
Vector2f pos)
override;
165 void leftMouseReleased(
Vector2f pos)
override;
170 void keyPressed(
const sf::Event::KeyEvent& event)
override;
180 void draw(sf::RenderTarget& target, sf::RenderStates states)
const override;
222 std::unique_ptr<DataIO::Node>
save(SavingRenderersMap& renderers)
const override;
228 void load(
const std::unique_ptr<DataIO::Node>& node,
const LoadingRenderersMap& renderers)
override;
240 const Color& getCurrentBackgroundColor()
const;
246 const Color& getCurrentBorderColor()
const;
252 void updateTextColorAndStyle();
258 virtual void updateSize();
266 return std::make_shared<Button>(*
this);
273 SignalString onPress = {
"Pressed"};
282 bool m_autoSize =
true;
283 bool m_updatingSizeWhileSettingText =
false;
293 Color m_borderColorCached;
294 Color m_borderColorHoverCached;
295 Color m_borderColorDownCached;
296 Color m_borderColorDisabledCached;
297 Color m_borderColorFocusedCached;
298 Color m_backgroundColorCached;
299 Color m_backgroundColorHoverCached;
300 Color m_backgroundColorDownCached;
301 Color m_backgroundColorDisabledCached;
302 Color m_backgroundColorFocusedCached;
Wrapper for colors.
Definition: Color.hpp:49
Class to store the position or size of a widget.
Definition: Layout.hpp:260
Definition: Outline.hpp:39
Signal to which the user can subscribe to get callbacks from.
Definition: Signal.hpp:231
Definition: Sprite.hpp:46
Definition: Vector2f.hpp:39
Namespace that contains all TGUI functions and classes.
Definition: AbsoluteOrRelativeValue.hpp:37