TGUI
0.10-beta
|
Wrapper around scrollbar to be used inside widgets that need a scrollbar. More...
#include <TGUI/Widgets/Scrollbar.hpp>
Public Member Functions | |
bool | isMouseDownOnThumb () const |
Returns whether the left mouse button has been pressed on top of the thumb of the scrollbar. | |
bool | isShown () const |
Returns whether the scrollbar is currently visible. More... | |
void | draw (BackendRenderTarget &target, RenderStates states) const override |
Draw the widget to a render target. More... | |
Public Member Functions inherited from tgui::Scrollbar | |
Scrollbar (const char *typeName="Scrollbar", bool initRenderer=true) | |
ScrollbarRenderer * | getSharedRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. More... | |
const ScrollbarRenderer * | getSharedRenderer () const |
ScrollbarRenderer * | getRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. More... | |
const ScrollbarRenderer * | getRenderer () const |
void | setSize (const Layout2d &size) override |
Changes the size of the scrollbar. More... | |
void | setMaximum (unsigned int maximum) |
Sets a maximum value. More... | |
unsigned int | getMaximum () const |
Returns the maximum value. More... | |
void | setValue (unsigned int value) |
Changes the current value. More... | |
unsigned int | getValue () const |
Returns the current value. More... | |
void | setViewportSize (unsigned int viewport) |
Changes the viewport size. More... | |
unsigned int | getViewportSize () const |
Returns the viewport size. More... | |
void | setScrollAmount (unsigned int scrollAmount) |
Changes how much the value changes when scrolling or pressing one of the arrows of the scrollbar. More... | |
unsigned int | getScrollAmount () const |
Returns how much the value changes when scrolling or pressing one of the arrows of the scrollbar. More... | |
void | setAutoHide (bool autoHide) |
Changes whether the scrollbar should hide automatically or not. More... | |
bool | getAutoHide () const |
Returns whether the scrollbar is hiding automatically or not. More... | |
void | setVerticalScroll (bool vertical) |
Changes whether the scrollbar lies horizontally or vertically. More... | |
bool | getVerticalScroll () const |
Returns whether the scrollbar lies horizontally or vertically. More... | |
float | getDefaultWidth () |
Returns the default width of the scrollbar. More... | |
bool | isMouseOnWidget (Vector2f pos) const override |
Returns whether the mouse position (which is relative to the parent widget) lies on top of the widget. More... | |
void | leftMousePressed (Vector2f pos) override |
void | leftMouseReleased (Vector2f pos) override |
void | mouseMoved (Vector2f pos) override |
bool | mouseWheelScrolled (float delta, Vector2f pos) override |
void | leftMouseButtonNoLongerDown () override |
void | draw (BackendRenderTarget &target, RenderStates states) const override |
Draw the widget to a render target. More... | |
virtual void | setSize (const Layout2d &size) |
Changes the size of the widget. More... | |
void | setSize (Layout width, Layout height) |
Changes the size of the widget. More... | |
Public Member Functions inherited from tgui::Widget | |
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. More... | |
WidgetRenderer * | getSharedRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. More... | |
const WidgetRenderer * | getSharedRenderer () const |
WidgetRenderer * | getRenderer () |
Returns the renderer, which gives access to functions that determine how the widget is displayed. More... | |
const WidgetRenderer * | getRenderer () const |
virtual void | setPosition (const Layout2d &position) |
sets the position of the widget More... | |
void | setPosition (Layout x, Layout y) |
Sets the position of the widget. More... | |
Vector2f | getPosition () const |
Gets the position of the widget. More... | |
virtual void | setSize (const Layout2d &size) |
Changes the size of the widget. More... | |
void | setSize (Layout width, Layout height) |
Changes the size of the widget. More... | |
void | setWidth (Layout width) |
Changes the width of the widget. More... | |
void | setHeight (Layout height) |
Changes the height of the widget. More... | |
Vector2f | getSize () const |
Returns the size of the widget. More... | |
virtual Vector2f | getFullSize () const |
Returns the entire size that the widget is using. More... | |
virtual Vector2f | getAbsolutePosition () const |
Get the absolute position of the top-left point of the widget instead of the relative position to its parent. More... | |
virtual Vector2f | getWidgetOffset () const |
Returns the distance between the position where the widget is drawn and where the widget is placed. More... | |
void | setOrigin (float x, float y) |
Sets the origin point on which the position, scale and rotation is based. More... | |
void | setOrigin (Vector2f origin) |
Sets the origin point on which the position, scale and rotation is based. More... | |
Vector2f | getOrigin () const |
Returns the relative origin point on which the position, scale and rotation is based. More... | |
void | setScale (Vector2f scaleFactors) |
Sets the scaling to be applied to the widget. More... | |
void | setScale (Vector2f scaleFactors, Vector2f origin) |
Sets the scaling to be applied to the widget. More... | |
void | setScale (float scaleFactor) |
Sets the scaling to be applied to the widget. More... | |
void | setScale (float scaleFactor, Vector2f origin) |
Sets the scaling to be applied to the widget. More... | |
Vector2f | getScale () const |
Returns the scaling to be applied to the widget. More... | |
Vector2f | getScaleOrigin () const |
Returns the origin used for scaling. More... | |
void | setRotation (float angle) |
Sets the rotation to be applied to the widget. More... | |
void | setRotation (float angle, Vector2f origin) |
Sets the rotation to be applied to the widget. More... | |
float | getRotation () const |
Returns the rotation to be applied to the widget. More... | |
Vector2f | getRotationOrigin () const |
Returns the origin used for rotations. More... | |
void | showWithEffect (ShowEffectType type, Duration duration) |
Shows the widget by introducing it with an animation. More... | |
void | hideWithEffect (ShowEffectType type, Duration duration) |
Hides the widget by making it leave with an animation. More... | |
void | moveWithAnimation (Layout2d position, Duration duration) |
Moves the widget from its current position to the given position, over a given duration. More... | |
void | resizeWithAnimation (Layout2d size, Duration duration) |
Resizes the widget from its current size to the given size, over a given duration. More... | |
virtual void | setVisible (bool visible) |
Shows or hides a widget. More... | |
bool | isVisible () const |
Returns true when the widget is visible. More... | |
virtual void | setEnabled (bool enabled) |
Enables or disables the widget. More... | |
bool | isEnabled () const |
Returns true when the widget is enabled. More... | |
virtual void | setFocused (bool focused) |
Focus or unfocus the widget. More... | |
bool | isFocused () const |
Returns true when the widget is focused and false otherwise. More... | |
const String & | getWidgetType () const |
Returns the type of the widget. More... | |
Container * | getParent () const |
Returns a pointer to the parent widget. More... | |
BackendGui * | getParentGui () const |
Returns a pointer to the gui to which this widget belongs. More... | |
bool | isAnimationPlaying () const |
Returns whether there is an active animation (started with showWithEffect or hideWithEffect) More... | |
void | moveToFront () |
Places the widget before all other widgets. More... | |
void | moveToBack () |
Places the widget behind all other widgets. More... | |
void | setUserData (Any userData) |
Stores some data into the widget. More... | |
template<typename T > | |
T | getUserData () const |
Returns data stored in the widget. More... | |
void | setInheritedFont (const Font &font) |
Sets the font of the widget that is used when no font is set in the renderer. More... | |
const Font & | getInheritedFont () const |
Returns the font of the widget that is used when no font is set in the renderer. More... | |
void | setInheritedOpacity (float opacity) |
Sets the opacity of the widget that will be multiplied with the opacity set in the renderer. More... | |
float | getInheritedOpacity () const |
Returns the opacity of the widget that is multiplied with the opacity set in the renderer. More... | |
void | setTextSize (unsigned int size) |
Changes the character size of text in this widget if it uses text. More... | |
unsigned int | getTextSize () const |
Returns the character size of text in this widget. More... | |
void | setToolTip (Widget::Ptr toolTip) |
Sets the tool tip that should be displayed when hovering over the widget. More... | |
Widget::Ptr | getToolTip () const |
Returns the tool tip that is displayed when hovering over the widget. More... | |
void | setWidgetName (const String &name) |
Changes the name of a widget. More... | |
String | getWidgetName () const |
Returns the name of a widget. More... | |
void | setMouseCursor (Cursor::Type cursor) |
Changes which mouse cursor is shown when hovering over the widget. More... | |
Cursor::Type | getMouseCursor () const |
Returns which mouse cursor is shown when hovering over the widget. More... | |
void | setFocusable (bool focusable) |
Changes whether a widget could be focused. More... | |
bool | isFocusable () const |
Returns whether a widget could be focused. More... | |
void | finishAllAnimations () |
Makes all animations of the widget finish immediately. | |
virtual bool | canGainFocus () const |
Returns whether the widget can currently gain focus. More... | |
bool | isContainer () const |
Returns whether the widget is a container widget or not. More... | |
bool | isDraggableWidget () const |
Returns whether the widget has something to drag (e.g. slider or scrollbar thumbs) More... | |
bool | isMouseDown () const |
Returns whether the left mouse button has been pressed on top of the widget. More... | |
virtual Signal & | getSignal (String signalName) |
Retrieves a signal based on its name. More... | |
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. More... | |
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 (BackendRenderTarget &target, RenderStates states) const =0 |
Draw the widget to a render target. More... | |
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. More... | |
Additional Inherited Members | |
Public Types inherited from tgui::Scrollbar | |
enum class | Policy { Automatic , Always , Never } |
Defines when the scrollbar shows up. More... | |
typedef std::shared_ptr< Scrollbar > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const Scrollbar > | ConstPtr |
Shared constant widget pointer. | |
Public Types inherited from tgui::Widget | |
typedef std::shared_ptr< Widget > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const Widget > | ConstPtr |
Shared constant widget pointer. | |
Static Public Member Functions inherited from tgui::Scrollbar | |
static Scrollbar::Ptr | create () |
Creates a new scrollbar widget. More... | |
static Scrollbar::Ptr | copy (Scrollbar::ConstPtr scrollbar) |
Makes a copy of another scrollbar. More... | |
Public Attributes inherited from tgui::Scrollbar | |
SignalUInt | onValueChange = {"ValueChanged"} |
Value of the scrollbar changed. Optional parameter: new value. | |
Public Attributes inherited from tgui::Widget | |
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. More... | |
Protected Types inherited from tgui::Scrollbar | |
enum class | Part { Track , Thumb , ArrowUp , ArrowDown } |
Protected Types inherited from tgui::Widget | |
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 inherited from tgui::Scrollbar | |
void | updateSize () |
Signal & | getSignal (String signalName) override |
Retrieves a signal based on its name. More... | |
void | rendererChanged (const String &property) override |
Function called when one of the properties of the renderer is changed. More... | |
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. More... | |
void | load (const std::unique_ptr< DataIO::Node > &node, const LoadingRenderersMap &renderers) override |
Loads the widget from a tree of nodes. More... | |
void | updateThumbPosition () |
Widget::Ptr | clone () const override |
Makes a copy of the widget if you don't know its exact type. More... | |
Protected Member Functions inherited from tgui::Widget | |
virtual void | rendererChanged (const String &property) |
Function called when one of the properties of the renderer is changed. More... | |
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. More... | |
virtual void | load (const std::unique_ptr< DataIO::Node > &node, const LoadingRenderersMap &renderers) |
Loads the widget from a tree of nodes. More... | |
virtual void | updateTextSize () |
Called when the text size is changed (either by setTextSize or via the renderer) More... | |
virtual void | mouseEnteredWidget () |
This function is called when the mouse enters the widget. More... | |
virtual void | mouseLeftWidget () |
This function is called when the mouse leaves the widget. More... | |
Protected Attributes inherited from tgui::Scrollbar | |
Part | m_mouseHoverOverPart = Part::Thumb |
bool | m_mouseDownOnThumb = false |
Vector2f | m_mouseDownOnThumbPos |
unsigned int | m_maximum = 10 |
unsigned int | m_value = 0 |
unsigned int | m_viewportSize = 1 |
bool | m_verticalScroll = true |
bool | m_verticalImage = true |
unsigned int | m_scrollAmount = 1 |
bool | m_autoHide = true |
bool | m_mouseDownOnArrow = false |
bool | m_sizeSet = false |
FloatRect | m_track |
FloatRect | m_thumb |
FloatRect | m_arrowUp |
FloatRect | m_arrowDown |
Sprite | m_spriteTrack |
Sprite | m_spriteTrackHover |
Sprite | m_spriteThumb |
Sprite | m_spriteThumbHover |
Sprite | m_spriteArrowUp |
Sprite | m_spriteArrowUpHover |
Sprite | m_spriteArrowDown |
Sprite | m_spriteArrowDownHover |
Color | m_thumbColorCached |
Color | m_thumbColorHoverCached |
Color | m_trackColorCached |
Color | m_trackColorHoverCached |
Color | m_arrowColorCached |
Color | m_arrowColorHoverCached |
Color | m_arrowBackgroundColorCached |
Color | m_arrowBackgroundColorHoverCached |
Protected Attributes inherited from tgui::Widget | |
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 |
BackendGui * | 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 |
unsigned int | m_textSizeCached = 0 |
Any | m_userData |
Cursor::Type | m_mouseCursor = Cursor::Type::Arrow |
std::function< void(const String &property)> | m_rendererChangedCallback = [this](const String& property){ rendererChangedCallback(property); } |
Wrapper around scrollbar to be used inside widgets that need a scrollbar.
|
overridevirtual |
Draw the widget to a render target.
target | Render target to draw to |
states | Current render states |
Reimplemented from tgui::Scrollbar.
bool tgui::ScrollbarChildWidget::isShown | ( | ) | const |
Returns whether the scrollbar is currently visible.
The scrollbar is visible when auto hide is disabled or when the maximum is higher than the viewport size