42 std::function<void()>
get_callback(
const std::string &name)
const;
53 std::map<std::string, std::function<void()>> m_callbacks;
70 std::map<std::string, std::shared_ptr<UIElement>>
elements;
112 std::string m_base_path;
Canvas for 2D UI rendering with orthographic projection.
Callback registry for UI event handlers.
Definition ui_loader.hpp:26
std::function< void()> get_callback(const std::string &name) const
Get a registered callback.
Definition ui_loader.cpp:86
void register_callback(const std::string &name, std::function< void()> callback)
Register a callback function.
Definition ui_loader.cpp:82
bool has_callback(const std::string &name) const
Check if callback exists.
Definition ui_loader.cpp:94
UILoadResult load_from_file(const std::string &filepath, const UICallbackRegistry &callbacks)
Load UI from JSON file.
Definition ui_loader.cpp:104
void set_base_path(const std::string &base_path)
Set base path for resolving relative paths (fonts, images).
Definition ui_loader.cpp:102
UILoader()
Constructor.
Definition ui_loader.cpp:100
UILoadResult load_from_string(const std::string &json_str, const UICallbackRegistry &callbacks)
Load UI from JSON string.
Definition ui_loader.cpp:128
Forward declarations for Assimp Material structure.
Definition model_loader.cpp:12
Result of UI loading operation.
Definition ui_loader.hpp:59
bool success
Whether loading succeeded.
Definition ui_loader.hpp:61
std::string error
Error message if loading failed.
Definition ui_loader.hpp:64
std::map< std::string, std::shared_ptr< UIElement > > elements
Map of element names to elements.
Definition ui_loader.hpp:70
std::shared_ptr< Canvas > canvas
Loaded canvas.
Definition ui_loader.hpp:67
Base class for all UI elements.