25#ifndef TGUI_WIDGET_RENDERER_HPP
26#define TGUI_WIDGET_RENDERER_HPP
28#include <TGUI/Config.hpp>
30#include <TGUI/Loading/DataIO.hpp>
31#include <TGUI/ObjectConverter.hpp>
34#include <unordered_set>
46 struct TGUI_API RendererData
48 RendererData() =
default;
49 RendererData(
const RendererData& other);
50 RendererData& operator=(
const RendererData& other);
52 [[nodiscard]]
static std::shared_ptr<RendererData> create(
const std::map<String, ObjectConverter>& init = {});
55 [[nodiscard]]
static std::shared_ptr<RendererData> createFromDataIONode(
const DataIO::Node* rendererNode);
57 std::map<String, ObjectConverter> propertyValuePairs;
58 std::unordered_set<Widget*> observers;
59 Theme* connectedTheme =
nullptr;
60 bool themePropertiesInherited =
false;
224 void setData(std::shared_ptr<RendererData> data);
233 [[nodiscard]] std::shared_ptr<RendererData>
getData()
const;
240 [[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:54
Implicit converter for settable properties.
Definition ObjectConverter.hpp:47
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:37