TGUI
0.7.8
|
Child window widget. More...
#include <TGUI/Widgets/ChildWindow.hpp>
Public Types | |
enum class | TitleAlignment { Left , Center , Right } |
Title alignments, possible options for the setTitleAlignment function. More... | |
enum | TitleButtons { None = 0 , Close = 1 << 0 , Minimize = 1 << 1 , Maximize = 1 << 2 } |
Title buttons (bitwise OR to combine) More... | |
typedef std::shared_ptr< ChildWindow > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const ChildWindow > | ConstPtr |
Shared constant widget pointer. | |
Public Types inherited from tgui::Container | |
typedef std::shared_ptr< Container > | Ptr |
Shared widget pointer. | |
typedef std::shared_ptr< const Container > | 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. | |
Public Member Functions | |
std::shared_ptr< ChildWindowRenderer > | getRenderer () const |
Returns the renderer, which gives access to functions that determine how the widget is displayed. More... | |
void | setPosition (const Layout2d &position) override |
Set the position of the widget. More... | |
void | setSize (const Layout2d &size) override |
Changes the size of the child window. More... | |
virtual sf::Vector2f | getFullSize () const override |
Returns the size of the full child window. More... | |
void | setMaximumSize (sf::Vector2f size) |
Sets the maximum size of the child window. More... | |
sf::Vector2f | getMaximumSize () const |
Returns the maximum size of the child window. More... | |
void | setMinimumSize (sf::Vector2f size) |
Sets the minimum size of the child window. More... | |
sf::Vector2f | getMinimumSize () const |
Returns the minimum size of the child window. More... | |
virtual void | setFont (const Font &font) override |
Changes the font of the text in the widget and its children. More... | |
virtual void | setOpacity (float opacity) override |
Changes the opacity of the widget. More... | |
void | setTitle (const sf::String &title) |
Changes the title that is displayed in the title bar of the child window. More... | |
const sf::String & | getTitle () const |
Returns the title that is displayed in the title bar of the child window. More... | |
void | setTitleAlignment (TitleAlignment alignment) |
Changes the title alignment. More... | |
TitleAlignment | getTitleAlignment () const |
Returns the title alignment. More... | |
void | setTitleButtons (unsigned int buttons) |
Changes the title buttons. More... | |
unsigned int | getTitleButtons () const |
Returns the title bar buttons. More... | |
void | setTitleButtonsText (const sf::String &closeText="x", const sf::String &minimizeText="-", const sf::String &maximizeText="+") |
Changes the text within the title bar buttons. More... | |
void | setIcon (const Texture &icon) |
Changes the icon in the top left corner of the child window. More... | |
const Texture & | getIcon () |
Returns the icon in the top left corner of the child window. More... | |
void | destroy () |
Destroys the window. More... | |
void | setResizable (bool resizable=true) |
Changes whether the child window can be resized by dragging its borders or not. More... | |
bool | isResizable () const |
Check whether the child window can be resized by dragging its borders or not. More... | |
void | keepInParent (bool enabled=true) |
Set the child window to be kept inside its parent. More... | |
bool | isKeptInParent () const |
Tells whether the child window is kept inside its parent. More... | |
void | setCloseButton (Button::Ptr closeButton) |
Change the close button. More... | |
Button::Ptr | getCloseButton () const |
Returns the close button. More... | |
void | setMinimizeButton (Button::Ptr minimizeButton) |
Change the minimize button. More... | |
Button::Ptr | getMinimizeButton () const |
Returns the minimize button. More... | |
void | setMaximizeButton (Button::Ptr maximizeButton) |
Change the maximize button. More... | |
Button::Ptr | getMaximizeButton () const |
Returns the maximize button. More... | |
virtual sf::Vector2f | getChildWidgetsOffset () const override |
Returns the distance between the position of the container and a widget that would be drawn inside this container on relative position (0,0). More... | |
virtual void | setPosition (const Layout2d &position) |
set the position of the widget More... | |
void | setPosition (const Layout &x, const Layout &y) |
set the position of the widget More... | |
virtual void | setSize (const Layout2d &size) |
Changes the size of the widget. More... | |
void | setSize (const Layout &width, const Layout &height) |
Changes the size of the widget. More... | |
Public Member Functions inherited from tgui::Container | |
Container (const Container ©) | |
Copy constructor. More... | |
Container & | operator= (const Container &right) |
Overload of assignment operator. More... | |
const std::vector< Widget::Ptr > & | getWidgets () |
Returns a list of all the widgets. More... | |
const std::vector< sf::String > & | getWidgetNames () |
Returns a list of the names of all the widgets. More... | |
virtual void | add (const Widget::Ptr &widgetPtr, const sf::String &widgetName="") |
Adds a widget to the container. More... | |
Widget::Ptr | get (const sf::String &widgetName, bool recursive=false) const |
Returns a pointer to an earlier created widget. More... | |
template<class T > | |
T::Ptr | get (const sf::String &widgetName, bool recursive=false) const |
Returns a pointer to an earlier created widget. More... | |
virtual bool | remove (const Widget::Ptr &widget) |
Removes a single widget that was added to the container. More... | |
virtual void | removeAllWidgets () |
Removes all widgets that were added to the container. | |
bool | setWidgetName (const Widget::Ptr &widget, const std::string &name) |
Changes the name of a widget. More... | |
std::string | getWidgetName (const Widget::Ptr &widget) const |
Returns the name of a widget. More... | |
void | focusWidget (const Widget::Ptr &widget) |
Focuses a widget. More... | |
void | focusWidget (Widget *const widget) |
Focuses a widget. More... | |
void | focusNextWidget () |
Focuses the next widget. More... | |
void | focusPreviousWidget () |
Focuses the previous widget. More... | |
void | unfocusWidgets () |
Unfocus all the widgets. | |
void | uncheckRadioButtons () |
Uncheck all the radio buttons. | |
void | loadWidgetsFromFile (const std::string &filename) |
Load the child widgets from a text file. More... | |
void | saveWidgetsToFile (const std::string &filename) |
Save the child widgets to a text file. More... | |
void | loadWidgetsFromStream (std::stringstream &stream) |
Load the child widgets from a string stream. More... | |
void | saveWidgetsToStream (std::stringstream &stream) |
Save the child widgets to a text file. More... | |
Public Member Functions inherited from tgui::Widget | |
Widget () | |
Default constructor. | |
Widget (const Widget ©) | |
Copy constructor. More... | |
~Widget () | |
Destructor. | |
Widget & | operator= (const Widget &right) |
Overload of assignment operator. More... | |
std::shared_ptr< WidgetRenderer > | getRenderer () const |
Returns the renderer, which gives access to functions that determine how the widget is displayed. More... | |
virtual sf::Vector2f | getAbsolutePosition () const |
Get the absolute position of the widget instead of the relative position to its parent. More... | |
virtual void | show () |
Shows the widget. More... | |
virtual void | showWithEffect (ShowAnimationType type, sf::Time duration) |
Shows the widget by introducing it with an animation. More... | |
virtual void | hide () |
Hides the widget. More... | |
virtual void | hideWithEffect (ShowAnimationType type, sf::Time duration) |
Hides the widget by making it leave with an animation. More... | |
bool | isVisible () const |
Returns true when the widget is visible. More... | |
virtual void | enable () |
Enables the widget. More... | |
virtual void | disable (bool blockMouseEvents=true) |
Disables the widget. More... | |
bool | isEnabled () const |
Returns true when the widget is enabled. More... | |
virtual void | focus () |
Focus the widget. More... | |
virtual void | unfocus () |
Unfocus the widget. More... | |
bool | isFocused () const |
Returns true when the widget is focused and false otherwise. More... | |
const std::string & | getWidgetType () const |
Returns the type of the widget. More... | |
Container * | getParent () const |
Returns a pointer to the parent widget. More... | |
float | getOpacity () const |
Returns the opacity of the widget. More... | |
virtual void | moveToFront () |
Places the widget before all other widgets. | |
virtual void | moveToBack () |
Places the widget behind all other widgets. | |
void | setToolTip (Widget::Ptr toolTip) |
Sets the tool tip that should be displayed when hovering over the widget. More... | |
Widget::Ptr | getToolTip () |
Returns the tool tip that is displayed when hovering over the widget. More... | |
std::shared_ptr< sf::Font > | getFont () const |
Returns the font associated with the widget (if any) More... | |
void | detachTheme () |
Detach the theme from the widget. More... | |
std::shared_ptr< BaseTheme > | getTheme () const |
Returns the theme to which the widget is currently connected. More... | |
std::string | getPrimaryLoadingParameter () const |
Returns the primary parameter that was passed to the loader to load this widget. More... | |
std::string | getSecondaryLoadingParameter () const |
Returns the secondary parameter that was passed to the loader to load this widget. More... | |
virtual sf::Vector2f | getWidgetOffset () const |
Returns the distance between the position where the widget is drawn and where the widget is placed. More... | |
void | setPosition (const Layout &x, const Layout &y) |
set the position of the widget More... | |
void | setSize (const Layout &width, const Layout &height) |
Changes the size of the widget. More... | |
Public Member Functions inherited from tgui::Transformable | |
virtual | ~Transformable () |
Virtual destructor. | |
void | setPosition (const Layout &x, const Layout &y) |
set the position of the widget More... | |
sf::Vector2f | getPosition () const |
get the position of the widget More... | |
void | move (const Layout2d &offset) |
Move the widget by a given offset. More... | |
void | move (const Layout &x, const Layout &y) |
Move the widget by a given offset. More... | |
void | setSize (const Layout &width, const Layout &height) |
Changes the size of the widget. More... | |
virtual sf::Vector2f | getSize () const |
Returns the size of the widget. More... | |
void | scale (const Layout2d &factors) |
Scale the widget. More... | |
void | scale (const Layout &x, const Layout &y) |
Scale the widget. More... | |
Public Member Functions inherited from tgui::SignalWidgetBase | |
SignalWidgetBase ()=default | |
Default constructor. | |
SignalWidgetBase (const SignalWidgetBase ©) | |
Copy constructor. More... | |
SignalWidgetBase & | operator= (const SignalWidgetBase &right) |
Overload of assignment operator. More... | |
template<typename Func , typename... Args> | |
unsigned int | connect (const std::string &signalNames, Func func, Args... args) |
Connects a signal handler function to one or more signals. More... | |
template<typename Func , typename... Args> | |
unsigned int | connectEx (const std::string &signalName, Func func, Args... args) |
Connects a signal handler function to one or more signals. More... | |
void | disconnect (unsigned int id) |
Disconnects a connection. More... | |
void | disconnectAll (const std::string &signalName) |
Disconnect all connections from a certain signal. More... | |
void | disconnectAll () |
Disconnect all connections from a all signals. | |
Static Public Member Functions | |
static ChildWindow::Ptr | create () |
Creates a new child window widget. More... | |
static ChildWindow::Ptr | copy (ChildWindow::ConstPtr childWindow) |
Makes a copy of another child window. More... | |
Protected Member Functions | |
virtual void | reload (const std::string &primary="", const std::string &secondary="", bool force=false) override |
Reload the widget. More... | |
virtual 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::Container | |
void | moveWidgetToFront (Widget *const widget) |
Places a widget before all other widgets. More... | |
void | moveWidgetToBack (Widget *const widget) |
Places a widget behind all other widgets. More... | |
Protected Member Functions inherited from tgui::Widget | |
void | attachTheme (std::shared_ptr< BaseTheme > theme) |
Attach a theme to the widget. More... | |
Child window widget.
Signals:
|
strong |
|
inlineoverrideprotectedvirtual |
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.
Implements tgui::Widget.
Reimplemented in tgui::MessageBox.
|
static |
Makes a copy of another child window.
childWindow | The other child window |
|
static |
Creates a new child window widget.
void tgui::ChildWindow::destroy | ( | ) |
Destroys the window.
When no callback is requested when closing the window, this function will be called automatically.
When you requested a callback then you get the opportunity to cancel the closing of the window. If you want to keep it open then don't do anything, if you want to close it then just call this function.
|
overridevirtual |
Returns the distance between the position of the container and a widget that would be drawn inside this container on relative position (0,0).
Reimplemented from tgui::Container.
Button::Ptr tgui::ChildWindow::getCloseButton | ( | ) | const |
Returns the close button.
You should not change this close button yourself.
|
overridevirtual |
Returns the size of the full child window.
The size returned by this function is the size of the child window, including the title bar and the borders.
Reimplemented from tgui::Transformable.
const Texture & tgui::ChildWindow::getIcon | ( | ) |
Returns the icon in the top left corner of the child window.
Button::Ptr tgui::ChildWindow::getMaximizeButton | ( | ) | const |
Returns the maximize button.
You should not change this maximize button yourself.
sf::Vector2f tgui::ChildWindow::getMaximumSize | ( | ) | const |
Returns the maximum size of the child window.
The size returned by this function is the maximum size of the child window, excluding the title bar and the borders.
Button::Ptr tgui::ChildWindow::getMinimizeButton | ( | ) | const |
Returns the minimize button.
You should not change this minimize button yourself.
sf::Vector2f tgui::ChildWindow::getMinimumSize | ( | ) | const |
Returns the minimum size of the child window.
The size returned by this function is the minimum size of the child window, excluding the title bar and the borders.
|
inline |
Returns the renderer, which gives access to functions that determine how the widget is displayed.
|
inline |
Returns the title that is displayed in the title bar of the child window.
|
inline |
Returns the title alignment.
|
inline |
Returns the title bar buttons.
bool tgui::ChildWindow::isKeptInParent | ( | ) | const |
Tells whether the child window is kept inside its parent.
bool tgui::ChildWindow::isResizable | ( | ) | const |
Check whether the child window can be resized by dragging its borders or not.
void tgui::ChildWindow::keepInParent | ( | bool | enabled = true | ) |
Set the child window to be kept inside its parent.
enabled | When it's set to true, the child window will always be kept automatically inside its parent. It will be fully kept on left, right and top. At the bottom of the parent only the title bar will be kept inside. It's set to false by default. |
|
overrideprotectedvirtual |
Reload the widget.
primary | Primary parameter for the loader |
secondary | Secondary parameter for the loader |
force | Try to only change the looks of the widget and not alter the widget itself when false |
Exception | when the connected theme could not create the widget |
When primary is an empty string the built-in white theme will be used.
Reimplemented from tgui::Widget.
Reimplemented in tgui::MessageBox.
void tgui::ChildWindow::setCloseButton | ( | Button::Ptr | closeButton | ) |
Change the close button.
The close button should have no parent and you should no longer change it after calling this function. The function is meant to be used like this:
|
overridevirtual |
Changes the font of the text in the widget and its children.
font | The new font. |
When you don't call this function then the font from the parent widget will be used.
Reimplemented from tgui::Container.
Reimplemented in tgui::MessageBox.
void tgui::ChildWindow::setIcon | ( | const Texture & | icon | ) |
Changes the icon in the top left corner of the child window.
icon | the icon image |
There is no icon by default. Set an empty texture to remove the icon.
void tgui::ChildWindow::setMaximizeButton | ( | Button::Ptr | maximizeButton | ) |
Change the maximize button.
The maximize button should have no parent and you should no longer change it after calling this function. The function is meant to be used like this:
void tgui::ChildWindow::setMaximumSize | ( | sf::Vector2f | size | ) |
Sets the maximum size of the child window.
size | Sets the new maximum size of the child window |
This function sets the maximum size of the window excluding borders and titlebar. If the window is larger than the new maximum size, it will automatically be resized down.
void tgui::ChildWindow::setMinimizeButton | ( | Button::Ptr | minimizeButton | ) |
Change the minimize button.
The minimize button should have no parent and you should no longer change it after calling this function. The function is meant to be used like this:
void tgui::ChildWindow::setMinimumSize | ( | sf::Vector2f | size | ) |
Sets the minimum size of the child window.
size | Sets the new minimum size of the child window |
This function sets the minimum size of the window excluding borders and titlebar. If the window is smaller than the new minimum size, it will automatically be resized up.
|
overridevirtual |
Changes the opacity of the widget.
opacity | The opacity of the widget. 0 means completely transparent, while 1 (default) means fully opaque. |
Reimplemented from tgui::Container.
set 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 |
Usage examples:
|
virtual |
set 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 from tgui::Widget.
|
overridevirtual |
Set 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 |
Reimplemented from tgui::Widget.
void tgui::ChildWindow::setResizable | ( | bool | resizable = true | ) |
Changes whether the child window can be resized by dragging its borders or not.
resizable | Can the user change the size of the window by dragging one of the borders? |
Changes the size of the widget.
width | Width of the widget |
height | Height of the widget |
Usage examples:
|
virtual |
Changes the size of the widget.
size | Size of the widget |
Usage examples:
Reimplemented from tgui::Widget.
|
overridevirtual |
Changes the size of the child window.
size | Sets the new size of the child window |
This is the size of the child window, without the title bar nor the borders.
Reimplemented from tgui::Widget.
void tgui::ChildWindow::setTitle | ( | const sf::String & | title | ) |
Changes the title that is displayed in the title bar of the child window.
title | New title for the child window |
void tgui::ChildWindow::setTitleAlignment | ( | TitleAlignment | alignment | ) |
Changes the title alignment.
alignment | How should the title be aligned in the title bar? |
void tgui::ChildWindow::setTitleButtons | ( | unsigned int | buttons | ) |
Changes the title buttons.
buttons | Which buttons should be available in the title bar? |
By default ChildWindows only display a close button. You may set the window to show a combination of buttons. For example, the following will set the ChildWindow to have both a minimize and close button.
void tgui::ChildWindow::setTitleButtonsText | ( | const sf::String & | closeText = "x" , |
const sf::String & | minimizeText = "-" , |
||
const sf::String & | maximizeText = "+" |
||
) |
Changes the text within the title bar buttons.
closeText | New text for the close button (default is "x") |
minimizeText | New text for the minimize button (default is "-") |
maximizeText | New text for the maximize button (default is "+") |