25#ifndef TGUI_WIDGET_RENDERER_HPP
26#define TGUI_WIDGET_RENDERER_HPP
28#include <TGUI/Config.hpp>
29#include <TGUI/ObjectConverter.hpp>
30#include <TGUI/Loading/DataIO.hpp>
32#include <unordered_set>
45 struct TGUI_API RendererData
47 RendererData() =
default;
48 RendererData(
const RendererData& other);
49 RendererData& operator=(
const RendererData& other);
51 TGUI_NODISCARD
static std::shared_ptr<RendererData> create(
const std::map<String, ObjectConverter>& init = {});
54 TGUI_NODISCARD
static std::shared_ptr<RendererData> createFromDataIONode(
const DataIO::Node* rendererNode);
56 std::map<String, ObjectConverter> propertyValuePairs;
57 std::unordered_set<Widget*> observers;
58 Theme* connectedTheme =
nullptr;
59 bool themePropertiesInherited =
false;
224 void setData(std::shared_ptr<RendererData> data);
233 TGUI_NODISCARD std::shared_ptr<RendererData>
getData()
const;
240 TGUI_NODISCARD std::shared_ptr<RendererData>
clone()
const;
245 std::shared_ptr<RendererData> m_data = RendererData::create();
Wrapper around the backend-specific font. All copies of the font will share the same internal font re...
Definition Font.hpp:56
Implicit converter for settable properties.
Definition ObjectConverter.hpp:46
Wrapper class to store strings.
Definition String.hpp:94
This class can be used to manage the widget renderers.
Definition Theme.hpp:40
Namespace that contains all TGUI functions and classes.
Definition AbsoluteOrRelativeValue.hpp:36