30#include <TGUI/Widgets/Group.hpp>
31#include <TGUI/Renderers/PanelRenderer.hpp>
44 using Ptr = std::shared_ptr<Panel>;
47 static constexpr const char StaticWidgetType[] =
"Panel";
57 Panel(
const char* typeName = StaticWidgetType,
bool initRenderer =
true);
104 using Widget::setSize;
135 void leftMousePressed(
Vector2f pos)
override;
140 void leftMouseReleased(
Vector2f pos)
override;
145 void rightMousePressed(
Vector2f pos)
override;
150 void rightMouseReleased(
Vector2f pos)
override;
155 void rightMouseButtonNoLongerDown()
override;
195 bool updateTime(
Duration elapsedTime)
override;
222 Color m_borderColorCached;
223 Color m_backgroundColorCached;
224 Sprite m_spriteBackground;
226 float m_roundedBorderRadius = 0;
228 bool m_rightMouseDown =
false;
231 bool m_possibleDoubleClick =
false;
Base class for render targets.
Definition: BackendRenderTarget.hpp:48
Wrapper for colors.
Definition: Color.hpp:63
Wrapper for durations.
Definition: Duration.hpp:52
Group widget.
Definition: Group.hpp:44
Class to store the position or size of a widget.
Definition: Layout.hpp:284
Definition: Outline.hpp:39
Definition: PanelRenderer.hpp:37
Group of widgets that has a background color and optional borders.
Definition: Panel.hpp:41
std::shared_ptr< const Panel > ConstPtr
Shared constant widget pointer.
Definition: Panel.hpp:45
Widget::Ptr clone() const override
Makes a copy of the widget if you don't know its exact type.
Vector2f getChildWidgetsOffset() const override
Returns the distance between the position of the container and a widget that would be drawn inside th...
std::shared_ptr< Panel > Ptr
Shared widget pointer.
Definition: Panel.hpp:44
Vector2f getInnerSize() const override
Returns the space available for widgets inside the container.
void rendererChanged(const String &property) override
Function called when one of the properties of the renderer is changed.
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 setSize(const Layout2d &size) override
Changes the size of the panel.
static Panel::Ptr copy(const Panel::ConstPtr &panel)
Makes a copy of another panel.
void draw(BackendRenderTarget &target, RenderStates states) const override
Draw the widget to a render target.
static Panel::Ptr create(const Layout2d &size={"100%", "100%"})
Creates a new panel widget.
PanelRenderer * getRenderer()
Returns the renderer, which gives access to functions that determine how the widget is displayed.
PanelRenderer * getSharedRenderer()
Returns the renderer, which gives access to functions that determine how the widget is displayed.
Signal & getSignal(String signalName) override
Retrieves a signal based on its name.
Signal to which the user can subscribe to get callbacks from.
Definition: Signal.hpp:58
Definition: Sprite.hpp:45
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