|
| RootContainer (const char *typeName=StaticWidgetType, bool initRenderer=true) |
|
void | setFocused (bool focused) override |
| Focus or unfocus the widget.
|
|
TGUI_NODISCARD bool | isMouseOnWidget (Vector2f pos) const override |
| Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget.
|
|
void | mouseNoLongerOnWidget () override |
|
void | draw (BackendRenderTarget &target, RenderStates states) const override |
| Draws all widgets to a render target.
|
|
| Container (const char *typeName, bool initRenderer) |
|
| Container (const Container ©) |
| Copy constructor.
|
|
| Container (Container &©) noexcept |
| Move constructor.
|
|
| ~Container () override |
| Destructor.
|
|
Container & | operator= (const Container &right) |
| Overload of copy assignment operator.
|
|
Container & | operator= (Container &&right) noexcept |
| Overload of move assignment operator.
|
|
void | setSize (const Layout2d &size) override |
| Changes the size of the container.
|
|
TGUI_NODISCARD const std::vector< Widget::Ptr > & | getWidgets () const |
| Returns a list of all the widgets in this container.
|
|
template<typename Function > |
void | sortWidgets (Function &&function) |
| Sorts a list of all the widgets in this container.
|
|
virtual void | add (const Widget::Ptr &widgetPtr, const String &widgetName="") |
| Adds a widget to the container.
|
|
TGUI_NODISCARD Widget::Ptr | get (const String &widgetName) const |
| Returns a pointer to a widget that was added earlier.
|
|
template<class WidgetType > |
TGUI_NODISCARD WidgetType::Ptr | get (const String &widgetName) const |
| Returns a pointer to a widget that was added earlier.
|
|
virtual bool | remove (const Widget::Ptr &widget) |
| Removes a single widget that was added to the container.
|
|
virtual void | removeAllWidgets () |
| Removes all widgets that were added to the container.
|
|
virtual TGUI_NODISCARD Vector2f | getInnerSize () const |
| Returns the space available for widgets inside the container.
|
|
virtual TGUI_NODISCARD Vector2f | getChildWidgetsOffset () const |
| Returns the distance between the position of the container and a widget that would be drawn inside this container on relative position (0,0)
|
|
void | loadWidgetsFromFile (const String &filename, bool replaceExisting=true) |
| Loads the child widgets from a text file.
|
|
void | saveWidgetsToFile (const String &filename) |
| Saves the child widgets to a text file.
|
|
void | loadWidgetsFromStream (std::stringstream &stream, bool replaceExisting=true) |
| Loads the child widgets from a string stream.
|
|
void | loadWidgetsFromStream (std::stringstream &&stream, bool replaceExisting=true) |
| Loads the child widgets from a string stream.
|
|
void | saveWidgetsToStream (std::stringstream &stream, const String &rootDirectory="") const |
| Saves the child widgets to a text file.
|
|
void | loadWidgetsFromNodeTree (const std::unique_ptr< DataIO::Node > &rootNode, bool replaceExisting=true) |
| Loads the child widgets from a tree of nodes that contain all information about the widgets.
|
|
TGUI_NODISCARD std::unique_ptr< DataIO::Node > | saveWidgetsToNodeTree (const String &rootDirectory="") const |
| Saves the child widgets to a tree of nodes that contain all information about the widgets.
|
|
void | moveWidgetToFront (const Widget::Ptr &widget) |
| Places a widget before all other widgets, to the front of the z-order.
|
|
void | moveWidgetToBack (const Widget::Ptr &widget) |
| Places a widget behind all other widgets, to the back of the z-order.
|
|
std::size_t | moveWidgetForward (const Widget::Ptr &widget) |
| Places a widget one step forward in the z-order.
|
|
std::size_t | moveWidgetBackward (const Widget::Ptr &widget) |
| Places a widget one step backward in the z-order.
|
|
virtual bool | setWidgetIndex (const Widget::Ptr &widget, std::size_t index) |
| Changes the index of a widget in this container.
|
|
TGUI_NODISCARD int | getWidgetIndex (const Widget::Ptr &widget) const |
| Returns the current index of a widget in this container.
|
|
TGUI_NODISCARD Widget::Ptr | getFocusedChild () const |
| Returns the child widget that is focused inside this container.
|
|
TGUI_NODISCARD Widget::Ptr | getFocusedLeaf () const |
| Returns the leaf child widget that is focused inside this container.
|
|
virtual TGUI_NODISCARD Widget::Ptr | getWidgetAtPosition (Vector2f pos) const |
| Returns the leaf child widget that is located at the given position.
|
|
virtual TGUI_NODISCARD Widget::Ptr | getWidgetAtPos (Vector2f pos, bool recursive) const |
| Returns the widget that is located at the given position.
|
|
bool | focusNextWidget (bool recursive=true) |
| Focuses the next widget in this container.
|
|
bool | focusPreviousWidget (bool recursive=true) |
| Focuses the previous widget in this container.
|
|
bool | processMouseMoveEvent (Vector2f pos) |
| Inform the container about a mouse move event.
|
|
bool | processMousePressEvent (Event::MouseButton button, Vector2f pos) |
| Inform the container about a mouse press event.
|
|
bool | processMouseReleaseEvent (Event::MouseButton button, Vector2f pos) |
| Inform the container about a mouse release event.
|
|
bool | processScrollEvent (float delta, Vector2f pos, bool touch) |
| Inform the container about a scroll event (either mouse wheel or two finger scrolling on touchscreen)
|
|
bool | processKeyPressEvent (Event::KeyEvent event) |
| Inform the container about a key press event.
|
|
bool | processTextEnteredEvent (char32_t key) |
| Inform the container about a key press event.
|
|
void | childWidgetFocused (const Widget::Ptr &child) |
|
bool | leftMousePressed (Vector2f pos) override |
| Called by the parent when the left mouse button goes down on top of the widget.
|
|
void | rightMousePressed (Vector2f pos) override |
|
void | leftMouseReleased (Vector2f pos) override |
|
void | rightMouseReleased (Vector2f pos) override |
|
void | mouseMoved (Vector2f pos) override |
|
void | keyPressed (const Event::KeyEvent &event) override |
|
bool | canHandleKeyPress (const Event::KeyEvent &event) override |
| Called by the parent of the widget to check if keyPressed would process the event.
|
|
void | textEntered (char32_t key) override |
|
bool | scrolled (float delta, Vector2f pos, bool touch) override |
| Called by the parent on scroll event (either from mouse wheel of from two finger scrolling on a touchscreen)
|
|
void | leftMouseButtonNoLongerDown () override |
|
void | rightMouseButtonNoLongerDown () override |
|
TGUI_NODISCARD Widget::Ptr | askToolTip (Vector2f mousePos) override |
|
bool | updateTime (Duration elapsedTime) override |
|
void | setParent (Container *parent) override |
|
void | setParentGui (BackendGui *gui) |
|
void | updateChildrenWithAutoLayout () |
|
void | setSize (Layout width, Layout height) |
| Changes the size of the widget.
|
|
| Widget (const char *typeName, bool initRenderer) |
|
| Widget (const Widget &) |
| Copy constructor.
|
|
| Widget (Widget &&) noexcept |
| Move constructor.
|
|
virtual | ~Widget () |
| Destructor.
|
|
Widget & | operator= (const Widget &) |
| Overload of copy assignment operator.
|
|
Widget & | operator= (Widget &&) noexcept |
| Move assignment.
|
|
void | setRenderer (std::shared_ptr< RendererData > rendererData) |
| Sets a new renderer for the widget. The renderer determines how the widget looks.
|
|
virtual TGUI_NODISCARD WidgetRenderer * | getSharedRenderer () |
| Returns the renderer, which gives access to functions that determine how the widget is displayed.
|
|
virtual TGUI_NODISCARD const WidgetRenderer * | getSharedRenderer () const |
|
virtual TGUI_NODISCARD WidgetRenderer * | getRenderer () |
| Returns the renderer, which gives access to functions that determine how the widget is displayed.
|
|
virtual void | setPosition (const Layout2d &position) |
| sets the position of the widget
|
|
void | setPosition (Layout x, Layout y) |
| Sets the position of the widget.
|
|
TGUI_NODISCARD Vector2f | getPosition () const |
| Gets the position of the widget.
|
|
void | setSize (Layout width, Layout height) |
| Changes the size of the widget.
|
|
void | setWidth (Layout width) |
| Changes the width of the widget.
|
|
void | setHeight (Layout height) |
| Changes the height of the widget.
|
|
TGUI_NODISCARD Vector2f | getSize () const |
| Returns the size of the widget.
|
|
virtual TGUI_NODISCARD Vector2f | getFullSize () const |
| Returns the entire size that the widget is using.
|
|
virtual TGUI_NODISCARD Vector2f | getAbsolutePosition (Vector2f offset={}) const |
| Get the absolute position of the widget instead of the relative position to its parent.
|
|
virtual TGUI_NODISCARD Vector2f | getWidgetOffset () const |
| Returns the distance between the position where the widget is drawn and where the widget is placed.
|
|
void | setAutoLayout (AutoLayout layout) |
| Sets how the position is determined compared to the other widgets in the parent.
|
|
TGUI_NODISCARD AutoLayout | getAutoLayout () const |
| Returns how the position is determined compared to the other widgets in the parent.
|
|
void | setOrigin (float x, float y) |
| Sets the origin point on which the position, scale and rotation is based.
|
|
void | setOrigin (Vector2f origin) |
| Sets the origin point on which the position, scale and rotation is based.
|
|
TGUI_NODISCARD Vector2f | getOrigin () const |
| Returns the relative origin point on which the position, scale and rotation is based.
|
|
void | setScale (Vector2f scaleFactors) |
| Sets the scaling to be applied to the widget.
|
|
void | setScale (Vector2f scaleFactors, Vector2f origin) |
| Sets the scaling to be applied to the widget.
|
|
void | setScale (float scaleFactor) |
| Sets the scaling to be applied to the widget.
|
|
void | setScale (float scaleFactor, Vector2f origin) |
| Sets the scaling to be applied to the widget.
|
|
TGUI_NODISCARD Vector2f | getScale () const |
| Returns the scaling to be applied to the widget.
|
|
TGUI_NODISCARD Vector2f | getScaleOrigin () const |
| Returns the origin used for scaling.
|
|
void | setRotation (float angle) |
| Sets the rotation to be applied to the widget.
|
|
void | setRotation (float angle, Vector2f origin) |
| Sets the rotation to be applied to the widget.
|
|
TGUI_NODISCARD float | getRotation () const |
| Returns the rotation to be applied to the widget.
|
|
TGUI_NODISCARD Vector2f | getRotationOrigin () const |
| Returns the origin used for rotations.
|
|
void | showWithEffect (ShowEffectType type, Duration duration) |
| Shows the widget by introducing it with an animation.
|
|
void | hideWithEffect (ShowEffectType type, Duration duration) |
| Hides the widget by making it leave with an animation.
|
|
void | moveWithAnimation (Layout2d position, Duration duration) |
| Moves the widget from its current position to the given position, over a given duration.
|
|
void | resizeWithAnimation (Layout2d size, Duration duration) |
| Resizes the widget from its current size to the given size, over a given duration.
|
|
virtual void | setVisible (bool visible) |
| Shows or hides a widget.
|
|
TGUI_NODISCARD bool | isVisible () const |
| Returns true when the widget is visible.
|
|
virtual void | setEnabled (bool enabled) |
| Enables or disables the widget.
|
|
TGUI_NODISCARD bool | isEnabled () const |
| Returns true when the widget is enabled.
|
|
TGUI_NODISCARD bool | isFocused () const |
| Returns true when the widget is focused and false otherwise.
|
|
TGUI_NODISCARD const String & | getWidgetType () const |
| Returns the type of the widget.
|
|
TGUI_NODISCARD Container * | getParent () const |
| Returns a pointer to the parent widget.
|
|
TGUI_NODISCARD BackendGui * | getParentGui () const |
| Returns a pointer to the gui to which this widget belongs.
|
|
TGUI_NODISCARD bool | isAnimationPlaying () const |
| Returns whether there is an active animation (started with showWithEffect or hideWithEffect)
|
|
void | moveToFront () |
| Places the widget before all other widgets.
|
|
void | moveToBack () |
| Places the widget behind all other widgets.
|
|
void | setUserData (Any userData) |
| Stores some data into the widget.
|
|
template<typename DataType > |
TGUI_NODISCARD DataType | getUserData () const |
| Returns data stored in the widget.
|
|
TGUI_NODISCARD bool | hasUserData () const |
| Returns whether data stored in the widget.
|
|
void | setInheritedFont (const Font &font) |
| Sets the font of the widget that is used when no font is set in the renderer.
|
|
TGUI_NODISCARD const Font & | getInheritedFont () const |
| Returns the font of the widget that is used when no font is set in the renderer.
|
|
void | setInheritedOpacity (float opacity) |
| Sets the opacity of the widget that will be multiplied with the opacity set in the renderer.
|
|
TGUI_NODISCARD float | getInheritedOpacity () const |
| Returns the opacity of the widget that is multiplied with the opacity set in the renderer.
|
|
void | setTextSize (unsigned int size) |
| Changes the character size of text in this widget if it uses text.
|
|
TGUI_NODISCARD unsigned int | getTextSize () const |
| Returns the character size of text in this widget.
|
|
void | setToolTip (Widget::Ptr toolTip) |
| Sets the tool tip that should be displayed when hovering over the widget.
|
|
TGUI_NODISCARD Widget::Ptr | getToolTip () const |
| Returns the tool tip that is displayed when hovering over the widget.
|
|
void | setWidgetName (const String &name) |
| Changes the name of a widget.
|
|
TGUI_NODISCARD String | getWidgetName () const |
| Returns the name of a widget.
|
|
void | setMouseCursor (Cursor::Type cursor) |
| Changes which mouse cursor is shown when hovering over the widget.
|
|
TGUI_NODISCARD Cursor::Type | getMouseCursor () const |
| Returns which mouse cursor is shown when hovering over the widget.
|
|
void | setFocusable (bool focusable) |
| Changes whether a widget could be focused.
|
|
TGUI_NODISCARD bool | isFocusable () const |
| Returns whether a widget could be focused.
|
|
void | setNavigationUp (const Widget::Ptr &widgetAbove) |
| Changes which widget should become focused when navigating upwards from this widget.
|
|
TGUI_NODISCARD Widget::Ptr | getNavigationUp () const |
| Returns which widget would become focused when navigating upwards from this widget.
|
|
void | setNavigationDown (const Widget::Ptr &widgetBelow) |
| Changes which widget should become focused when navigating downwards from this widget.
|
|
TGUI_NODISCARD Widget::Ptr | getNavigationDown () const |
| Returns which widget would become focused when navigating downwards from this widget.
|
|
void | setNavigationLeft (const Widget::Ptr &widgetLeft) |
| Changes which widget should become focused when navigating to the left from this widget.
|
|
TGUI_NODISCARD Widget::Ptr | getNavigationLeft () const |
| Returns which widget would become focused when navigating to the left from this widget.
|
|
void | setNavigationRight (const Widget::Ptr &widgetRight) |
| Changes which widget should become focused when navigating to the right from this widget.
|
|
TGUI_NODISCARD Widget::Ptr | getNavigationRight () const |
| Returns which widget would become focused when navigating to the right from this widget.
|
|
void | setIgnoreMouseEvents (bool ignore) |
| Sets whether the widget should completely ignore mouse events and let them pass to the widgets behind it.
|
|
TGUI_NODISCARD bool | getIgnoreMouseEvents () const |
| Returns whether the widget is ignoring mouse events and letting them pass to the widgets behind it.
|
|
void | finishAllAnimations () |
| Makes all animations of the widget finish immediately.
|
|
virtual TGUI_NODISCARD bool | canGainFocus () const |
| Returns whether the widget can currently gain focus.
|
|
TGUI_NODISCARD bool | isContainer () const |
| Returns whether the widget is a container widget or not.
|
|
TGUI_NODISCARD bool | isMouseDown () const |
| Returns whether the left mouse button has been pressed on top of the widget.
|
|
virtual TGUI_NODISCARD Signal & | getSignal (String signalName) |
| Retrieves a signal based on its name.
|
|
void | setAutoLayoutUpdateEnabled (bool enabled) |
|
virtual void | mouseReleased (Event::MouseButton button, Vector2f pos) |
|
TGUI_NODISCARD const Layout2d & | getPositionLayout () const |
|
TGUI_NODISCARD const Layout2d & | getSizeLayout () const |
|
void | bindPositionLayout (Layout *layout) |
|
void | unbindPositionLayout (Layout *layout) |
|
void | bindSizeLayout (Layout *layout) |
|
void | unbindSizeLayout (Layout *layout) |
|
template<typename WidgetType > |
TGUI_NODISCARD std::shared_ptr< const WidgetType > | cast () const |
| Downcast const widget.
|
|
template<typename WidgetType > |
TGUI_NODISCARD std::shared_ptr< WidgetType > | cast () |
| Downcast widget.
|
|
void | rendererChangedCallback (const String &property) |
|
|
SignalVector2f | onPositionChange = {"PositionChanged"} |
| The position of the widget changed. Optional parameter: new position.
|
|
SignalVector2f | onSizeChange = {"SizeChanged"} |
| The size of the widget changed. Optional parameter: new size.
|
|
Signal | onFocus = {"Focused"} |
| The widget was focused.
|
|
Signal | onUnfocus = {"Unfocused"} |
| The widget was unfocused.
|
|
Signal | onMouseEnter = {"MouseEntered"} |
| The mouse entered the widget.
|
|
Signal | onMouseLeave = {"MouseLeft"} |
| The mouse left the widget.
|
|
SignalShowEffect | onShowEffectFinish = {"ShowEffectFinished"} |
| A show or hide effect finished. Optional parameters: effect type, new widget visibility or both.
|
|
SignalAnimationType | onAnimationFinish = {"AnimationFinished"} |
| An animation has finished.
|
|
using | SavingRenderersMap = std::map<const Widget*, std::pair<std::unique_ptr<DataIO::Node>, String>> |
|
using | LoadingRenderersMap = std::map<String, std::shared_ptr<RendererData>> |
|
void | rendererChanged (const String &property) override |
| Function called when one of the properties of the renderer is changed.
|
|
TGUI_NODISCARD std::unique_ptr< DataIO::Node > | save (SavingRenderersMap &renderers) const override |
| Saves the widget as a tree node in order to save it to a file.
|
|
void | load (const std::unique_ptr< DataIO::Node > &node, const LoadingRenderersMap &renderers) override |
| Loads the widget from a tree of nodes.
|
|
void | updateTextSize () override |
| Called when the text size is changed (either by setTextSize or via the renderer)
|
|
TGUI_NODISCARD Widget::Ptr | getWidgetBelowMouse (Vector2f mousePos) const |
|
Widget::Ptr | updateWidgetBelowMouse (Vector2f mousePos) |
|
TGUI_NODISCARD std::size_t | getFocusedWidgetIndex () const |
|
bool | tryFocusWidget (const Widget::Ptr &widget, bool reverseWidgetOrder, bool recursive) |
|
TGUI_NODISCARD Vector2f | transformMousePos (const Widget::Ptr &widget, Vector2f mousePos) const |
|
void | widgetAdded (const Widget::Ptr &widgetPtr) |
|
void | injectFormFilePath (const std::unique_ptr< DataIO::Node > &node, const String &path, std::map< String, bool > &checkedFilenames) const |
|
void | loadWidgetsImpl (const std::unique_ptr< DataIO::Node > &rootNode, bool replaceExisting) |
|
virtual void | mouseEnteredWidget () |
| This function is called when the mouse enters the widget.
|
|
virtual void | mouseLeftWidget () |
| This function is called when the mouse leaves the widget.
|
|
void | recalculateBoundPositionLayouts () |
| Calls recalculateValue() on each layout in m_boundPositionLayouts.
|
|
void | recalculateBoundSizeLayouts () |
| Calls recalculateValue() on each layout in m_boundSizeLayouts.
|
|
std::vector< Widget::Ptr > | m_widgets |
|
Widget::Ptr | m_widgetBelowMouse |
|
Widget::Ptr | m_widgetWithLeftMouseDown |
|
Widget::Ptr | m_widgetWithRightMouseDown |
|
Widget::Ptr | m_focusedWidget |
|
bool | m_draggingWidget = false |
|
Vector2f | m_prevInnerSize |
|
bool | m_isolatedFocus = false |
|
String | m_type |
|
String | m_name |
|
Layout2d | m_position |
| Stores the position of this widget.
|
|
Layout2d | m_size |
| Stores the size of this widget.
|
|
unsigned int | m_textSize = 0 |
|
Vector2f | m_origin |
|
Optional< Vector2f > | m_rotationOrigin |
|
Optional< Vector2f > | m_scaleOrigin |
|
Vector2f | m_scaleFactors = {1, 1} |
|
float | m_rotationDeg = 0 |
|
Vector2f | m_prevPosition |
|
Vector2f | m_prevSize |
|
std::unordered_set< Layout * > | m_boundPositionLayouts |
|
std::unordered_set< Layout * > | m_boundSizeLayouts |
|
bool | m_enabled = true |
| Stores the flag indicating whether this widget is enabled.
|
|
bool | m_visible = true |
| Stores the flag indicating whether this widget is visible.
|
|
Container * | m_parent = nullptr |
|
BackendGui * | m_parentGui = nullptr |
|
bool | m_mouseHover = false |
|
bool | m_mouseDown = false |
|
bool | m_focused = false |
|
bool | m_focusable = true |
|
std::weak_ptr< Widget > | m_navWidgetUp |
|
std::weak_ptr< Widget > | m_navWidgetDown |
|
std::weak_ptr< Widget > | m_navWidgetRight |
|
std::weak_ptr< Widget > | m_navWidgetLeft |
|
Duration | m_animationTimeElapsed |
|
bool | m_containerWidget = false |
|
Widget::Ptr | m_toolTip = nullptr |
|
aurora::CopiedPtr< WidgetRenderer > | m_renderer = nullptr |
|
std::vector< std::unique_ptr< priv::Animation > > | m_showAnimations |
|
Font | m_inheritedFont |
|
float | m_inheritedOpacity = 1 |
|
Any | m_userData |
|
Cursor::Type | m_mouseCursor = Cursor::Type::Arrow |
|
AutoLayout | m_autoLayout = AutoLayout::Manual |
|
bool | m_autoLayoutUpdateEnabled = true |
|
bool | m_ignoreMouseEvents = false |
|
Font | m_fontCached = Font::getGlobalFont() |
|
float | m_opacityCached = 1 |
|
bool | m_transparentTextureCached = false |
|
unsigned int | m_textSizeCached = 0 |
|