26#ifndef TGUI_SCROLLABLE_PANEL_HPP
27#define TGUI_SCROLLABLE_PANEL_HPP
29#include <TGUI/CopiedSharedPtr.hpp>
30#include <TGUI/Widgets/Panel.hpp>
31#include <TGUI/Widgets/Scrollbar.hpp>
32#include <TGUI/Renderers/ScrollablePanelRenderer.hpp>
45 typedef std::shared_ptr<ScrollablePanel>
Ptr;
46 typedef std::shared_ptr<const ScrollablePanel>
ConstPtr;
55 ScrollablePanel(
const char* typeName =
"ScrollablePanel",
bool initRenderer =
true);
127 using Widget::setSize;
304 void leftMousePressed(
Vector2f pos)
override;
309 void leftMouseReleased(
Vector2f pos)
override;
314 void mouseMoved(
Vector2f pos)
override;
319 bool mouseWheelScrolled(
float delta,
Vector2f pos)
override;
324 void mouseNoLongerOnWidget()
override;
329 void leftMouseButtonNoLongerDown()
override;
365 std::unique_ptr<DataIO::Node>
save(SavingRenderersMap& renderers)
const override;
371 void load(
const std::unique_ptr<DataIO::Node>& node,
const LoadingRenderersMap& renderers)
override;
379 return std::make_shared<ScrollablePanel>(*
this);
389 void updateScrollbars();
395 void recalculateMostBottomRightPosition();
407 void disconnectAllChildWidgets();
421 unsigned int m_verticalScrollAmount = 0;
422 unsigned int m_horizontalScrollAmount = 0;
424 std::map<Widget::Ptr, unsigned int> m_connectedPositionCallbacks;
425 std::map<Widget::Ptr, unsigned int> m_connectedSizeCallbacks;
Base class for render targets.
Definition BackendRenderTarget.hpp:48
Definition CopiedSharedPtr.hpp:40
Class to store the position or size of a widget.
Definition Layout.hpp:262
Group of widgets that has a background color and optional borders.
Definition Panel.hpp:41
Wrapper class to store strings.
Definition String.hpp:79
Namespace that contains all TGUI functions and classes.
Definition AbsoluteOrRelativeValue.hpp:36
States used for drawing.
Definition RenderStates.hpp:39