TGUI
0.9.5
|
The parent class for every widget. More...
#include <TGUI/Widget.hpp>
Public Types | |
typedef std::shared_ptr< Widget > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const Widget > | ConstPtr |
Shared constant widget pointer. | |
Public Member Functions | |
Widget (const char *typeName, bool initRenderer) | |
Widget (const Widget &) | |
Copy constructor. | |
Widget (Widget &&) | |
Move constructor. | |
virtual | ~Widget () |
Destructor. | |
Widget & | operator= (const Widget &) |
Overload of copy assignment operator. | |
Widget & | operator= (Widget &&) |
Move assignment. | |
void | setRenderer (std::shared_ptr< RendererData > rendererData) |
Sets a new renderer for the widget. The renderer determines how the widget looks. | |
WidgetRenderer * | getSharedRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
const WidgetRenderer * | getSharedRenderer () const |
WidgetRenderer * | getRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. | |
const WidgetRenderer * | getRenderer () const |
virtual void | setPosition (const Layout2d &position) |
sets the position of the widget | |
void | setPosition (Layout x, Layout y) |
Sets the position of the widget. | |
Vector2f | getPosition () const |
Gets the position of the widget. | |
virtual void | setSize (const Layout2d &size) |
Changes the size 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. | |
Vector2f | getSize () const |
Returns the size of the widget. | |
virtual Vector2f | getFullSize () const |
Returns the entire size that the widget is using. | |
virtual Vector2f | getAbsolutePosition () const |
Get the absolute position of the top-left point of the widget instead of the relative position to its parent. | |
virtual Vector2f | getWidgetOffset () const |
Returns the distance between the position where the widget is drawn and where the widget is placed. | |
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. | |
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. | |
Vector2f | getScale () const |
Returns the scaling to be applied to the widget. | |
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. | |
float | getRotation () const |
Returns the rotation to be applied to the widget. | |
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. | |
virtual void | setVisible (bool visible) |
Shows or hides a widget. | |
bool | isVisible () const |
Returns true when the widget is visible. | |
virtual void | setEnabled (bool enabled) |
Enables or disables the widget. | |
bool | isEnabled () const |
Returns true when the widget is enabled. | |
virtual void | setFocused (bool focused) |
Focus or unfocus the widget. | |
bool | isFocused () const |
Returns true when the widget is focused and false otherwise. | |
const String & | getWidgetType () const |
Returns the type of the widget. | |
Container * | getParent () const |
Returns a pointer to the parent widget. | |
GuiBase * | getParentGui () const |
Returns a pointer to the gui to which this widget belongs. | |
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 T > | |
T | getUserData () const |
Returns 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. | |
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. | |
float | getInheritedOpacity () const |
Returns the opacity of the widget that is multiplied with the opacity set in the renderer. | |
virtual void | setTextSize (unsigned int size) |
Changes the character size of text in this widget if it uses text. | |
virtual 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. | |
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. | |
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. | |
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. | |
bool | isFocusable () const |
Returns whether a widget could be focused. | |
virtual bool | canGainFocus () const |
Returns whether the widget can currently gain focus. | |
bool | isContainer () const |
Returns whether the widget is a container widget or not. | |
bool | isDraggableWidget () const |
Returns whether the widget has something to drag (e.g. slider or scrollbar thumbs) | |
bool | isMouseDown () const |
Returns whether the left mouse button has been pressed on top of the widget. | |
virtual Signal & | getSignal (String signalName) |
Retrieves a signal based on its name. | |
virtual void | setParent (Container *parent) |
virtual bool | updateTime (Duration elapsedTime) |
virtual bool | isMouseOnWidget (Vector2f pos) const =0 |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget. | |
virtual void | leftMousePressed (Vector2f pos) |
virtual void | leftMouseReleased (Vector2f pos) |
virtual void | rightMousePressed (Vector2f pos) |
virtual void | rightMouseReleased (Vector2f pos) |
virtual void | mousePressed (Event::MouseButton button, Vector2f pos) |
virtual void | mouseReleased (Event::MouseButton button, Vector2f pos) |
virtual void | mouseMoved (Vector2f pos) |
virtual void | keyPressed (const Event::KeyEvent &event) |
virtual void | textEntered (char32_t key) |
virtual bool | mouseWheelScrolled (float delta, Vector2f pos) |
virtual void | mouseNoLongerOnWidget () |
virtual void | leftMouseButtonNoLongerDown () |
virtual void | rightMouseButtonNoLongerDown () |
virtual Widget::Ptr | askToolTip (Vector2f mousePos) |
const Layout2d & | getPositionLayout () const |
const Layout2d & | getSizeLayout () const |
void | bindPositionLayout (Layout *layout) |
void | unbindPositionLayout (Layout *layout) |
void | bindSizeLayout (Layout *layout) |
void | unbindSizeLayout (Layout *layout) |
virtual void | draw (BackendRenderTargetBase &target, RenderStates states) const =0 |
Draw the widget to a render target. | |
template<typename WidgetType > | |
std::shared_ptr< const WidgetType > | cast () const |
Downcast const widget. | |
template<typename WidgetType > | |
std::shared_ptr< WidgetType > | cast () |
Downcast widget. | |
virtual Widget::Ptr | clone () const =0 |
Makes a copy of the widget if you don't know its exact type. | |
Public Attributes | |
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 | onAnimationFinish = {"AnimationFinished"} |
SignalShowEffect | onShowEffectFinish = {"ShowEffectFinished"} |
A show or hide animation finished. Optional parameters: animation type, new widget visibility or both. | |
Protected Types | |
using | SavingRenderersMap = std::map< const Widget *, std::pair< std::unique_ptr< DataIO::Node >, String > > |
using | LoadingRenderersMap = std::map< String, std::shared_ptr< RendererData > > |
Protected Member Functions | |
virtual void | rendererChanged (const String &property) |
Function called when one of the properties of the renderer is changed. | |
virtual std::unique_ptr< DataIO::Node > | save (SavingRenderersMap &renderers) const |
Saves the widget as a tree node in order to save it to a file. | |
virtual void | load (const std::unique_ptr< DataIO::Node > &node, const LoadingRenderersMap &renderers) |
Loads the widget from a tree of nodes. | |
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. | |
Protected Attributes | |
String | m_type |
String | m_name |
Layout2d | m_position |
Layout2d | m_size |
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 |
bool | m_visible = true |
Container * | m_parent = nullptr |
GuiBase * | m_parentGui = nullptr |
bool | m_mouseHover = false |
bool | m_mouseDown = false |
bool | m_focused = false |
bool | m_focusable = true |
Duration | m_animationTimeElapsed |
bool | m_draggableWidget = false |
bool | m_containerWidget = false |
Widget::Ptr | m_toolTip = nullptr |
aurora::CopiedPtr< WidgetRenderer > | m_renderer = nullptr |
std::vector< std::shared_ptr< priv::Animation > > | m_showAnimations |
Font | m_inheritedFont |
float | m_inheritedOpacity = 1 |
Font | m_fontCached = Font::getGlobalFont() |
float | m_opacityCached = 1 |
bool | m_transparentTextureCached = false |
Any | m_userData |
Cursor::Type | m_mouseCursor = Cursor::Type::Arrow |
std::function< void(const String &property)> | m_rendererChangedCallback = [this](const String& property){ rendererChangedCallback(property); } |
Friends | |
class | Container |
The parent class for every widget.
|
virtual |
Returns whether the widget can currently gain focus.
A widget has to be visible, enabled and focusable for this function to return true.
Reimplemented in tgui::CustomWidgetForBindings, tgui::CanvasSFML, tgui::Label, and tgui::Picture.
|
pure virtual |
Makes a copy of the widget if you don't know its exact type.
This function should only be used when you don't know the type of the widget. If you know what kind of widget you are copying, you should use the copy function.
Implemented in tgui::CustomWidgetForBindings, tgui::BitmapButton, tgui::Button, tgui::CanvasSFML, tgui::ChatBox, tgui::CheckBox, tgui::ChildWindow, tgui::ClickableWidget, tgui::ColorPicker, tgui::ComboBox, tgui::EditBox, tgui::FileDialog, tgui::Grid, tgui::Group, tgui::HorizontalLayout, tgui::HorizontalWrap, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MenuBarMenuPlaceholder, tgui::MessageBox, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RadioButtonGroup, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::SeparatorLine, tgui::Slider, tgui::SpinButton, tgui::SpinControl, tgui::TabContainer, tgui::Tabs, tgui::TextArea, tgui::ToggleButton, tgui::TreeView, and tgui::VerticalLayout.
|
pure virtual |
Draw the widget to a render target.
This is a pure virtual function that has to be implemented by the derived class to define how the widget is drawn.
target | Render target to draw to |
states | Current render states |
Implemented in tgui::Container, tgui::RootContainer, tgui::CustomWidgetForBindings, tgui::SubwidgetContainer, tgui::ButtonBase, tgui::CanvasSFML, tgui::ChatBox, tgui::CheckBox, tgui::ChildWindow, tgui::ClickableWidget, tgui::ColorPicker, tgui::ComboBox, tgui::EditBox, tgui::Group, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MenuBarMenuPlaceholder, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RadioButtonGroup, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::ScrollbarChildWidget, tgui::SeparatorLine, tgui::Slider, tgui::SpinButton, tgui::Tabs, tgui::TextArea, and tgui::TreeView.
|
virtual |
Get the absolute position of the top-left point of the widget instead of the relative position to its parent.
Reimplemented in tgui::CustomWidgetForBindings, and tgui::ScrollablePanel.
|
virtual |
Returns the entire size that the widget is using.
This function will return a value equal or greater than what getSize returns. If the widget would e.g. have borders around it then this function will return the size, including these borders.
Reimplemented in tgui::CustomWidgetForBindings, tgui::CheckBox, tgui::MenuBarMenuPlaceholder, tgui::RadioButton, tgui::RangeSlider, and tgui::Slider.
const Font & tgui::Widget::getInheritedFont | ( | ) | const |
Returns the font of the widget that is used when no font is set in the renderer.
float tgui::Widget::getInheritedOpacity | ( | ) | const |
Returns the opacity of the widget that is multiplied with the opacity set in the renderer.
Cursor::Type tgui::Widget::getMouseCursor | ( | ) | const |
Returns which mouse cursor is shown when hovering over the widget.
|
inline |
Returns the relative origin point on which the position, scale and rotation is based.
|
inline |
Returns a pointer to the parent widget.
|
inline |
Returns a pointer to the gui to which this widget belongs.
|
inline |
Gets the position of the widget.
WidgetRenderer * tgui::Widget::getRenderer | ( | ) |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
|
inline |
Returns the rotation to be applied to the widget.
Vector2f tgui::Widget::getRotationOrigin | ( | ) | const |
Returns the origin used for rotations.
|
inline |
Returns the scaling to be applied to the widget.
Vector2f tgui::Widget::getScaleOrigin | ( | ) | const |
WidgetRenderer * tgui::Widget::getSharedRenderer | ( | ) |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
Retrieves a signal based on its name.
signalName | Name of the signal |
Exception | when the name does not match any signal |
Reimplemented in tgui::Button, tgui::ChildWindow, tgui::ClickableWidget, tgui::ColorPicker, tgui::ComboBox, tgui::EditBox, tgui::FileDialog, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MessageBox, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::Scrollbar, tgui::Slider, tgui::SpinButton, tgui::Tabs, tgui::TextArea, tgui::ToggleButton, and tgui::TreeView.
|
inline |
Returns the size of the widget.
|
virtual |
Returns the character size of text in this widget.
Reimplemented in tgui::ButtonBase, tgui::ComboBox, tgui::EditBox, tgui::ProgressBar, and tgui::RadioButton.
Widget::Ptr tgui::Widget::getToolTip | ( | ) | const |
Returns the tool tip that is displayed when hovering over the widget.
|
inline |
Returns data stored in the widget.
std::bad_cast | if the template type does not match the type inside the std::any variable passed in setUserData. |
String tgui::Widget::getWidgetName | ( | ) | const |
Returns the name of a widget.
|
virtual |
Returns the distance between the position where the widget is drawn and where the widget is placed.
The offset is (0,0) for almost all widgets.
Reimplemented in tgui::CustomWidgetForBindings, tgui::CheckBox, tgui::MenuBarMenuPlaceholder, tgui::RadioButton, tgui::RangeSlider, and tgui::Slider.
const String & tgui::Widget::getWidgetType | ( | ) | const |
Returns the type of the widget.
void tgui::Widget::hideWithEffect | ( | ShowEffectType | type, |
Duration | duration | ||
) |
Hides the widget by making it leave with an animation.
If the widget is already hidden then the animation will still play but you will not see it.
During the animation the position, size and/or opacity may change. Once the animation is done the widget will be back in the state in which it was when this function was called, except that it will no longer be visible.
type | Type of the animation |
duration | Duration of the animation |
Usage example:
bool tgui::Widget::isAnimationPlaying | ( | ) | const |
Returns whether there is an active animation (started with showWithEffect or hideWithEffect)
bool tgui::Widget::isContainer | ( | ) | const |
Returns whether the widget is a container widget or not.
bool tgui::Widget::isDraggableWidget | ( | ) | const |
Returns whether the widget has something to drag (e.g. slider or scrollbar thumbs)
|
inline |
Returns true when the widget is enabled.
If this function returns false then the widget is disabled and will longer receive events and it will thus no longer send callbacks. All widgets are enabled by default.
bool tgui::Widget::isFocusable | ( | ) | const |
Returns whether a widget could be focused.
By default all widgets are focusable.
|
inline |
Returns true when the widget is focused and false otherwise.
bool tgui::Widget::isMouseDown | ( | ) | const |
Returns whether the left mouse button has been pressed on top of the widget.
|
pure virtual |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget.
Implemented in tgui::RootContainer, tgui::CustomWidgetForBindings, tgui::SubwidgetContainer, tgui::ButtonBase, tgui::ChatBox, tgui::ChildWindow, tgui::ClickableWidget, tgui::ComboBox, tgui::EditBox, tgui::Grid, tgui::Group, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MenuBarMenuPlaceholder, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::Scrollbar, tgui::Slider, tgui::Tabs, tgui::TextArea, and tgui::TreeView.
|
inline |
Returns true when the widget is visible.
If this function returns false then the widget is hidden, which means that it won't receive events (and thus won't send callbacks) and it won't be drawn. All widgets are visible by default.
|
protectedvirtual |
Loads the widget from a tree of nodes.
Reimplemented in tgui::Container, tgui::SubwidgetContainer, tgui::BitmapButton, tgui::BoxLayoutRatios, tgui::ButtonBase, tgui::ChatBox, tgui::ChildWindow, tgui::ColorPicker, tgui::ComboBox, tgui::EditBox, tgui::FileDialog, tgui::Grid, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MessageBox, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::Slider, tgui::SpinButton, tgui::SpinControl, tgui::TabContainer, tgui::Tabs, and tgui::TextArea.
|
protectedvirtual |
This function is called when the mouse enters the widget.
Reimplemented in tgui::CustomWidgetForBindings, tgui::Button, tgui::ButtonBase, tgui::ChildWindow, and tgui::RadioButton.
|
protectedvirtual |
This function is called when the mouse leaves the widget.
Reimplemented in tgui::CustomWidgetForBindings, tgui::Button, tgui::ButtonBase, tgui::ChildWindow, and tgui::RadioButton.
void tgui::Widget::moveToBack | ( | ) |
Places the widget behind all other widgets.
void tgui::Widget::moveToFront | ( | ) |
Places the widget before all other widgets.
|
protectedvirtual |
Function called when one of the properties of the renderer is changed.
property | Name of the property that was changed |
Reimplemented in tgui::Container, tgui::CustomWidgetForBindings, tgui::BitmapButton, tgui::BoxLayout, tgui::ButtonBase, tgui::CanvasSFML, tgui::ChatBox, tgui::CheckBox, tgui::ChildWindow, tgui::ColorPicker, tgui::ComboBox, tgui::EditBox, tgui::FileDialog, tgui::Group, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MessageBox, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::SeparatorLine, tgui::Slider, tgui::SpinButton, tgui::Tabs, tgui::TextArea, and tgui::TreeView.
|
protectedvirtual |
Saves the widget as a tree node in order to save it to a file.
Reimplemented in tgui::Container, tgui::SubwidgetContainer, tgui::BitmapButton, tgui::BoxLayoutRatios, tgui::ButtonBase, tgui::ChatBox, tgui::ChildWindow, tgui::ColorPicker, tgui::ComboBox, tgui::EditBox, tgui::FileDialog, tgui::Grid, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::MessageBox, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::Slider, tgui::SpinButton, tgui::SpinControl, tgui::Tabs, tgui::TextArea, and tgui::TreeView.
|
virtual |
Enables or disables the widget.
enabled | Is the widget enabled? |
The disabled widget will no longer receive events and thus no longer send callbacks. All widgets are enabled by default.
Reimplemented in tgui::CustomWidgetForBindings, tgui::ButtonBase, tgui::ComboBox, tgui::EditBox, tgui::MenuBar, and tgui::Tabs.
void tgui::Widget::setFocusable | ( | bool | focusable | ) |
Changes whether a widget could be focused.
focusable | Should it be possible for the widget to gain focus? |
By default all widgets are focusable.
|
virtual |
Focus or unfocus the widget.
focused | Is the widget focused? |
When a widget is focused, the previously focused widget will be unfocused.
Reimplemented in tgui::Container, tgui::RootContainer, tgui::CustomWidgetForBindings, tgui::SubwidgetContainer, tgui::ButtonBase, tgui::EditBox, and tgui::TextArea.
|
inline |
Changes the height of the widget.
height | Height of the widget |
This function is a helper function that just calls setSize with the existing width.
void tgui::Widget::setInheritedFont | ( | const Font & | font | ) |
Sets the font of the widget that is used when no font is set in the renderer.
font | New font for the widget |
This function is called by the parent widget and is not supposed to be directly. To set the font of this widget, the Font property in the renderer should be changed.
void tgui::Widget::setInheritedOpacity | ( | float | opacity | ) |
Sets the opacity of the widget that will be multiplied with the opacity set in the renderer.
opacity | Opacity of the widget |
This function is called by the parent widget and is not supposed to be directly.To set the opacity of this widget, the Opacity property in the renderer should be changed.
void tgui::Widget::setMouseCursor | ( | Cursor::Type | cursor | ) |
Changes which mouse cursor is shown when hovering over the widget.
cursor | The cursor to show when the mouse is on top of the widget |
By default, the arrow cursor is shown.
|
inline |
Sets the origin point on which the position, scale and rotation is based.
x | Relative horizontal position of the origin point |
y | Relative vertical position of the origin point |
Valid x and y values range from 0 to 1, with 0 representing the left/top of the widget and 1 being right/bottom
void tgui::Widget::setOrigin | ( | Vector2f | origin | ) |
Sets the origin point on which the position, scale and rotation is based.
origin | Relative position of the origin point |
Valid x and y values range from 0 to 1, with 0 representing the left/top of the widget and 1 being right/bottom
|
virtual |
sets the position of the widget
This function completely overwrites the previous position. See the move function to apply an offset based on the previous position instead. The default position of a transformable widget is (0, 0).
position | New position |
Usage examples:
Reimplemented in tgui::ChildWindow, tgui::ListBox, tgui::CustomWidgetForBindings, tgui::ChildWindow, and tgui::ListBox.
Sets the position of the widget.
This function completely overwrites the previous position. See the move function to apply an offset based on the previous position instead. The default position of a transformable widget is (0, 0).
x | New x coordinate |
y | New y coordinate |
void tgui::Widget::setRenderer | ( | std::shared_ptr< RendererData > | rendererData | ) |
Sets a new renderer for the widget. The renderer determines how the widget looks.
rendererData | new renderer data |
The renderer data is shared with this widget. When the data is changed, this widget will be updated as well.
void tgui::Widget::setRotation | ( | float | angle | ) |
Sets the rotation to be applied to the widget.
angle | How many degrees clockwise should the widget be rotated? |
The origin of the rotation is set with the setOrigin function. If you want to use a separate origin for position and rotation then you can use the setRotation(float,Vector2f) function to pass a rotation origin.
void tgui::Widget::setRotation | ( | float | angle, |
Vector2f | origin | ||
) |
Sets the rotation to be applied to the widget.
angle | How many degrees clockwise should the widget be rotated? |
origin | The origin around which the rotation should occur |
In the origin the x and y value 0 represent the left/top of the widget while 1 represents right/bottom
|
inline |
Sets the scaling to be applied to the widget.
scaleFactor | How many times should the widget be enlarged (or shrunk if scale factor is smaller than 1) |
This scaling works on top of the size that is set with setSize. A widget with size (50, 20) with a scaling factor of 2 will appear on the screen as a (100, 40) widget with its entire contents stretched.
The origin of the scaling is set with the setOrigin function. If you want to use a separate origin for position and scale then you can use the setScale(float,Vector2f) function to pass a scaling origin.
|
inline |
Sets the scaling to be applied to the widget.
scaleFactor | How many times should the widget be enlarged (or shrunk if scale factor is smaller than 1) |
origin | The origin from where to scale the widget. The widget origin will be used if no value is provided. |
This scaling works on top of the size that is set with setSize. A widget with size (50, 20) with a scaling factor of 2 will appear on the screen as a (100, 40) widget with its entire contents stretched.
In the origin the x and y value 0 represent the left/top of the widget while 1 represents right/bottom
void tgui::Widget::setScale | ( | Vector2f | scaleFactors | ) |
Sets the scaling to be applied to the widget.
scaleFactors | How many times should the widget be enlarged horizontally and vertically (or shrunk if factor < 1) |
This scaling works on top of the size that is set with setSize. A widget with size (50, 20) with a scaling factor of (3,2) will appear on the screen as a (150, 40) widget with its entire contents stretched.
The origin of the scaling is set with the setOrigin function. If you want to use a separate origin for position and scale then you can use the setScale(Vector2f,Vector2f) function to pass a scaling origin.
Sets the scaling to be applied to the widget.
scaleFactors | How many times should the widget be enlarged horizontally and vertically (or shrunk if factor < 1) |
origin | The origin from where to scale the widget. The widget origin will be used if no value is provided. |
This scaling works on top of the size that is set with setSize. A widget with size (50, 20) with a scaling factor of (3,2) will appear on the screen as a (150, 40) widget with its entire contents stretched.
In the origin the x and y value 0 represent the left/top of the widget while 1 represents right/bottom
|
virtual |
Changes the size of the widget.
size | Size of the widget |
Usage examples:
Reimplemented in tgui::Container, tgui::RootContainer, tgui::SubwidgetContainer, tgui::BitmapButton, tgui::BoxLayout, tgui::ButtonBase, tgui::CanvasSFML, tgui::ChatBox, tgui::ChildWindow, tgui::ComboBox, tgui::EditBox, tgui::Grid, tgui::Group, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::Slider, tgui::SpinButton, tgui::SpinControl, tgui::TabContainer, tgui::Tabs, tgui::TextArea, tgui::TreeView, tgui::Container, tgui::RootContainer, tgui::CustomWidgetForBindings, tgui::SubwidgetContainer, tgui::BitmapButton, tgui::BoxLayout, tgui::ButtonBase, tgui::CanvasSFML, tgui::ChatBox, tgui::ChildWindow, tgui::ComboBox, tgui::EditBox, tgui::Grid, tgui::Group, tgui::Knob, tgui::Label, tgui::ListBox, tgui::ListView, tgui::MenuBar, tgui::Panel, tgui::Picture, tgui::ProgressBar, tgui::RadioButton, tgui::RangeSlider, tgui::ScrollablePanel, tgui::Scrollbar, tgui::Slider, tgui::SpinButton, tgui::SpinControl, tgui::SpinControl, tgui::TabContainer, tgui::TabContainer, tgui::Tabs, tgui::TextArea, and tgui::TreeView.
Changes the size of the widget.
width | Width of the widget |
height | Height of the widget |
|
virtual |
Changes the character size of text in this widget if it uses text.
size | The new text size |
Reimplemented in tgui::Container, tgui::SubwidgetContainer, tgui::ButtonBase, tgui::ChatBox, tgui::Label, tgui::MenuBar, tgui::MessageBox, tgui::ProgressBar, tgui::RadioButton, tgui::Tabs, tgui::TextArea, tgui::ComboBox, tgui::EditBox, tgui::ListBox, tgui::ListView, and tgui::TreeView.
void tgui::Widget::setToolTip | ( | Widget::Ptr | toolTip | ) |
Sets the tool tip that should be displayed when hovering over the widget.
toolTip | Any widget that you want to use as a tool tip (usually a Label) |
|
inline |
Stores some data into the widget.
userData | Data to store |
Examples:
|
virtual |
Shows or hides a widget.
visible | Is the widget visible? |
The widget won't receive events (and thus won't send callbacks) nor will it be drawn when hidden. The widget is visible by default.
Reimplemented in tgui::CustomWidgetForBindings.
void tgui::Widget::setWidgetName | ( | const String & | name | ) |
Changes the name of a widget.
name | New name for the widget |
|
inline |
Changes the width of the widget.
width | Width of the widget |
This function is a helper function that just calls setSize with the existing height.
void tgui::Widget::showWithEffect | ( | ShowEffectType | type, |
Duration | duration | ||
) |
Shows the widget by introducing it with an animation.
The animation will also be played if the widget was already visible.
During the animation the position, size and/or opacity may change. Once the animation is done the widget will be back in the state in which it was when this function was called.
type | Type of the animation |
duration | Duration of the animation |
Usage example: