29#include <TGUI/Loading/ThemeLoader.hpp>
30#include <TGUI/Renderers/WidgetRenderer.hpp>
49 Theme(
const std::string& primary =
"");
68 void load(
const std::string& primary);
80 std::shared_ptr<RendererData>
getRenderer(
const std::string&
id);
104 void addRenderer(
const std::string&
id, std::shared_ptr<RendererData> renderer);
165 static Theme* m_defaultTheme;
168 std::string m_primary;
This class can be used to manage the widget renderers.
Definition: Theme.hpp:41
std::shared_ptr< RendererData > getRenderer(const std::string &id)
Gets data for the renderers.
static void setDefault(Theme *theme)
Sets the theme class that widgets use by default.
std::map< std::string, std::shared_ptr< RendererData > > m_renderers
Maps ids to renderer datas.
Definition: Theme.hpp:167
static std::shared_ptr< BaseThemeLoader > m_themeLoader
Theme loader which will do the actual loading.
Definition: Theme.hpp:166
std::shared_ptr< RendererData > getRendererNoThrow(const std::string &id)
Gets data for the renderers.
const std::string & getPrimary() const
Returns the primary theme loader parameter.
void load(const std::string &primary)
Changes the primary theme loader parameter.
static Theme * getDefault()
Returns a pointer to the theme class that widgets use by default.
static void setThemeLoader(std::shared_ptr< BaseThemeLoader > themeLoader)
Changes the function that will load the widget theme data.
bool removeRenderer(const std::string &id)
Manually removes a renderer to the theme.
static std::shared_ptr< BaseThemeLoader > getThemeLoader()
Returns the function that is currently being used to load the widget theme data.
Theme(const std::string &primary="")
Constructs the theme class, with an optional theme file to load.
void addRenderer(const std::string &id, std::shared_ptr< RendererData > renderer)
Manually adds a renderer data to the theme.
Namespace that contains all TGUI functions and classes.
Definition: AbsoluteOrRelativeValue.hpp:37