25#ifndef TGUI_RADIO_BUTTON_HPP
26#define TGUI_RADIO_BUTTON_HPP
28#include <TGUI/Renderers/RadioButtonRenderer.hpp>
29#include <TGUI/Widgets/ClickableWidget.hpp>
30#include <TGUI/Text.hpp>
34TGUI_MODULE_EXPORT
namespace tgui
39 class TGUI_API RadioButton :
public ClickableWidget
43 using Ptr = std::shared_ptr<RadioButton>;
44 using ConstPtr = std::shared_ptr<const RadioButton>;
55 RadioButton(
const char* typeName =
StaticWidgetType,
bool initRenderer =
true);
200 void leftMouseReleased(Vector2f pos)
override;
250 TGUI_NODISCARD std::unique_ptr<DataIO::Node>
save(SavingRenderersMap& renderers)
const override;
255 void load(
const std::unique_ptr<DataIO::Node>& node,
const LoadingRenderersMap& renderers)
override;
275 TGUI_NODISCARD Vector2f getInnerSize()
const;
280 TGUI_NODISCARD
const Color& getCurrentCheckColor()
const;
285 TGUI_NODISCARD
const Color& getCurrentBackgroundColor()
const;
290 TGUI_NODISCARD
const Color& getCurrentBorderColor()
const;
295 virtual void updateTextureSizes();
300 void updateTextColor();
318 bool m_checked =
false;
321 bool m_allowTextClick =
true;
327 float m_maxWidth = 0;
331 Sprite m_spriteUncheckedHover;
332 Sprite m_spriteCheckedHover;
333 Sprite m_spriteUncheckedDisabled;
334 Sprite m_spriteCheckedDisabled;
335 Sprite m_spriteUncheckedFocused;
336 Sprite m_spriteCheckedFocused;
339 Borders m_bordersCached;
342 Color m_checkColorCached;
343 Color m_checkColorHoverCached;
344 Color m_checkColorDisabledCached;
345 Color m_borderColorCached;
346 Color m_borderColorHoverCached;
347 Color m_borderColorDisabledCached;
348 Color m_borderColorFocusedCached;
349 Color m_borderColorCheckedCached;
350 Color m_borderColorCheckedHoverCached;
351 Color m_borderColorCheckedDisabledCached;
352 Color m_borderColorCheckedFocusedCached;
353 Color m_backgroundColorCached;
354 Color m_backgroundColorHoverCached;
355 Color m_backgroundColorDisabledCached;
356 Color m_backgroundColorCheckedCached;
357 Color m_backgroundColorCheckedHoverCached;
358 Color m_backgroundColorCheckedDisabledCached;
359 float m_textDistanceRatioCached = 0.2f;
Base class for render targets.
Definition BackendRenderTarget.hpp:46
Wrapper for colors.
Definition Color.hpp:73
Class to store the position or size of a widget.
Definition Layout.hpp:323
Signal to which the user can subscribe to get callbacks from.
Definition Signal.hpp:61
Wrapper class to store strings.
Definition String.hpp:96
Wrapper for text styles.
Definition TextStyle.hpp:55
Backend-independent wrapper around the backend-specific text class.
Definition Text.hpp:48
Namespace that contains all TGUI functions and classes.
Definition AbsoluteOrRelativeValue.hpp:38
SignalTyped< bool > SignalBool
Signal with one "bool" as optional unbound parameter.
Definition Signal.hpp:425
KeyPressed event parameters.
Definition Event.hpp:168
States used for drawing.
Definition RenderStates.hpp:38