This class can be used to manage the widget renderers.
More...
#include <TGUI/Loading/Theme.hpp>
|
typedef std::shared_ptr< Theme > | Ptr |
| Shared widget pointer.
|
|
typedef std::shared_ptr< const Theme > | ConstPtr |
| Shared constant widget pointer.
|
|
|
static Theme::Ptr | create (const String &primary="") |
| Constructs a new theme, with an optional theme file to load.
|
|
static void | setThemeLoader (std::shared_ptr< BaseThemeLoader > themeLoader) |
| Changes the function that will load the widget theme data.
|
|
static std::shared_ptr< BaseThemeLoader > | getThemeLoader () |
| Returns the function that is currently being used to load the widget theme data.
|
|
static void | setDefault (const String &primary="") |
| Sets the theme class that widgets use by default.
|
|
static void | setDefault (std::shared_ptr< Theme > theme) |
| Sets the theme class that widgets use by default.
|
|
static void | setDefault (std::nullptr_t) |
| Resets the theme that widgets use by default.
|
|
static std::shared_ptr< Theme > | getDefault () |
| Returns a pointer to the theme class that widgets use by default.
|
|
|
static std::shared_ptr< Theme > | m_defaultTheme |
|
static std::shared_ptr< BaseThemeLoader > | m_themeLoader |
| Theme loader which will do the actual loading.
|
|
This class can be used to manage the widget renderers.
◆ Theme()
tgui::Theme::Theme |
( |
const String & |
primary = "" | ) |
|
Constructs the theme class, with an optional theme file to load.
- Parameters
-
primary | Primary parameter for the theme loader (filename of the theme file in DefaultThemeLoader) |
◆ addRenderer()
void tgui::Theme::addRenderer |
( |
const String & |
id, |
|
|
std::shared_ptr< RendererData > |
renderer |
|
) |
| |
Manually adds a renderer data to the theme.
- Parameters
-
id | Identifier of the renderer |
renderer | The renderer to add |
If a renderer with the same id already exists then it will be replaced by this one. Widgets using the old renderer will keep using that old renderer and remain unchanged.
◆ create()
Constructs a new theme, with an optional theme file to load.
- Parameters
-
primary | Primary parameter for the theme loader (filename of the theme file in DefaultThemeLoader) |
- Returns
- The new theme
Unlike with widgets, it is not required to use a smart pointer for the theme. You do not have to use this function to create a theme.
◆ getDefault()
static std::shared_ptr< Theme > tgui::Theme::getDefault |
( |
| ) |
|
|
static |
Returns a pointer to the theme class that widgets use by default.
- Returns
- Default theme
When setDefault was not called or was given a nullptr as parameter, getDefault will create and return the default "White" theme.
◆ getPrimary()
const String & tgui::Theme::getPrimary |
( |
| ) |
const |
Returns the primary theme loader parameter.
- Returns
- Primary parameter for the theme loader (filename of the theme file in DefaultThemeLoader)
◆ getRenderer()
Gets data for the renderers.
- Parameters
-
id | The secondary parameter for the theme loader (name of section in theme file in DefaultThemeLoader). |
- Returns
- Shared renderer data
- Exceptions
-
Exception | if theme loader fails to load the requested renderer |
◆ getRendererNoThrow()
Gets data for the renderers.
- Parameters
-
id | The secondary parameter for the theme loader (name of section in theme file in DefaultThemeLoader). |
- Returns
- Shared renderer data
Unlike getRenderer which throws an exception, this function will return nullptr when the renderer is not found
◆ getThemeLoader()
Returns the function that is currently being used to load the widget theme data.
- Returns
- Theme loader
◆ load()
void tgui::Theme::load |
( |
const String & |
primary | ) |
|
Changes the primary theme loader parameter.
- Parameters
-
primary | Primary parameter for the theme loader (filename of the theme file in DefaultThemeLoader) |
When the theme was loaded before and a renderer with the same name is encountered, the widgets that were using the old renderer will be reloaded with the new renderer.
◆ removeRenderer()
bool tgui::Theme::removeRenderer |
( |
const String & |
id | ) |
|
Manually removes a renderer to the theme.
- Parameters
-
id | Identifier of the renderer |
- Returns
- True when removed, false when the identifier did not match any renderer
◆ setDefault() [1/2]
static void tgui::Theme::setDefault |
( |
const String & |
primary = "" | ) |
|
|
static |
Sets the theme class that widgets use by default.
- Parameters
-
primary | Primary parameter for the theme loader (filename of the theme file in DefaultThemeLoader) |
Calling this function is equivalent to the following:
static void setDefault(const String &primary="")
Sets the theme class that widgets use by default.
static Theme::Ptr create(const String &primary="")
Constructs a new theme, with an optional theme file to load.
◆ setDefault() [2/2]
static void tgui::Theme::setDefault |
( |
std::shared_ptr< Theme > |
theme | ) |
|
|
static |
Sets the theme class that widgets use by default.
- Parameters
-
theme | Theme to use as default |
◆ setThemeLoader()
static void tgui::Theme::setThemeLoader |
( |
std::shared_ptr< BaseThemeLoader > |
themeLoader | ) |
|
|
static |
Changes the function that will load the widget theme data.
- Parameters
-
themeLoader | Pointer to the new loader |
The documentation for this class was generated from the following file: