4#include <RmlUi/Core/EventListener.h>
10#include <unordered_map>
15#include "RmlUi/Config/Config.h"
16#include "RmlUi/Core/Context.h"
17#include "RmlUi/Core/ElementDocument.h"
44 void SetFont(const std::
string &fontPath) override;
48 const std::
string &
GetTitle() const override;
56 std::function<
void(Rml::
Event &)> callback,
bool useCapture = false);
63 bool ProcessKey(
int key,
int action,
int mods) override;
void Update(Engine::Core &core) override
Definition UIContext.cpp:239
Rml::ElementDocument * GetDocument()
Definition UIContext.cpp:402
void _setup(Engine::Core &core) override
Definition UIContext.cpp:168
UIContext(const UIContext &)=delete
bool ProcessText(unsigned int codepoint) override
Definition UIContext.cpp:520
bool AreInputCallbacksRegistered() const
Definition UIContext.cpp:495
UIContext(UIContext &&) noexcept=default
Rml::ElementDocument * _document
Definition UIContext.hpp:81
bool ProcessMouseMove(double x, double y, int mods) override
Definition UIContext.cpp:529
bool ProcessKey(int key, int action, int mods) override
Definition UIContext.cpp:499
void UpdateMouseMoveEvent(Engine::Core &core) override
Definition UIContext.cpp:275
void LoadDocument(const std::string &docPath) override
Definition UIContext.cpp:311
void SetInputCallbackIds(const InputCallbackIds &ids)
Definition UIContext.cpp:493
bool _lateUpdateRequested
Definition UIContext.hpp:88
bool _inputCallbacksRegistered
Definition UIContext.hpp:87
std::vector< EventListenerEntry > _eventListeners
Definition UIContext.hpp:85
UIContext & operator=(const UIContext &)=delete
std::unordered_map< std::string, Rml::ElementDocument * > _overlayDocuments
Definition UIContext.hpp:82
bool RegisterEventListener(Rml::Element &element, const Rml::String &eventType, std::function< void(Rml::Event &)> callback, bool useCapture=false)
Definition UIContext.cpp:462
bool UnregisterEventListener(Rml::Element &element, const Rml::String &eventType)
Definition UIContext.cpp:476
void Destroy(Engine::Core &core) override
Definition UIContext.cpp:185
void EnableDebugger(bool enable)
Definition UIContext.cpp:416
bool _debuggerInitialized
Definition UIContext.hpp:84
const std::string & GetTitle() const override
Definition UIContext.cpp:400
void SetInputCallbacksRegistered(bool registered)
Definition UIContext.cpp:497
void RequestLateUpdate()
Definition UIContext.cpp:491
~UIContext() override=default
void Render(Engine::Core &core) override
Definition UIContext.cpp:251
bool ProcessMouseWheel(double xoffset, double yoffset, int mods) override
Definition UIContext.cpp:559
void SetFont(const std::string &fontPath) override
Definition UIContext.cpp:296
std::string _titleCache
Definition UIContext.hpp:83
bool LoadOverlayDocument(const std::string &docPath)
Definition UIContext.cpp:357
Rml::Element * GetElementById(const std::string &elementId)
Definition UIContext.cpp:434
Rml::ElementDocument * GetOverlayDocument(const std::string &docPath)
Definition UIContext.cpp:406
bool ProcessMouseButton(int button, int action, int mods) override
Definition UIContext.cpp:538
InputCallbackIds _inputCallbackIds
Definition UIContext.hpp:86
bool UnloadOverlayDocument(const std::string &docPath)
Definition UIContext.cpp:383
Rml::Context * _context
Definition UIContext.hpp:80
bool _isReady() const
Definition UIContext.cpp:290
Definition PluginEvent.hpp:5
Definition AUIContext.hpp:20
Definition UIContext.hpp:73
bool useCapture
Definition UIContext.hpp:76
Rml::Element * element
Definition UIContext.hpp:74
Rml::String eventType
Definition UIContext.hpp:75
std::unique_ptr< Rml::EventListener > listener
Definition UIContext.hpp:77
Definition UIContext.hpp:23
std::optional< FunctionUtils::FunctionID > scrollCallbackId
Definition UIContext.hpp:28
std::optional< FunctionUtils::FunctionID > cursorPosCallbackId
Definition UIContext.hpp:27
std::optional< FunctionUtils::FunctionID > charCallbackId
Definition UIContext.hpp:25
std::optional< FunctionUtils::FunctionID > mouseButtonCallbackId
Definition UIContext.hpp:26
std::optional< FunctionUtils::FunctionID > keyCallbackId
Definition UIContext.hpp:24