|
Flint Engine
Modular C++20 2D game engine powered by SDL3
|
Central gateway subsystem managing UI multi-context lifetimes, resolution scaling, and input filtering. More...
#include <flint/ui/ui-system.h>
Collaboration diagram for Flint::UISystem:Public Member Functions | |
| UISystem (const UISystem &)=delete | |
| UISystem & | operator= (const UISystem &)=delete |
| UISystem (UISystem &&)=delete | |
| UISystem & | operator= (UISystem &&)=delete |
| UIContext * | createContext (std::string name) |
| Spawns and registers a uniquely named UI canvas sandbox workspace. | |
| void | destroyContext (std::string name) |
| Completely unloads the targeted context container and immediately releases its bound VRAM elements. | |
| UIContext * | getContext (const std::string &name) const |
| Queries the context map registry to extract a specific UI canvas reference block. | |
| UIContext * | getActiveContext () const |
| Fetches the current user interface workspace layer targeted for frame inputs and draw pipelines. | |
| float | getDisplayScale () const |
| Returns the current resolution scalar factor applied across the layout metric generation loop. | |
| void | setActiveContext (const std::string &name) |
| Switches frame event processing focus directly over to a specific pre-registered context layout tree. | |
| void | setDisplayScale (float scale) |
| Sets the global layout transformation multiplier factor to support clean high-DPI/resolution rendering. | |
| void | clearActiveContext () |
| De-allocates focus assignments, forcing the active layout view track to return to null. | |
| void | update (float deltaTime) const |
| Advances frame animation trackers and ticking metrics within the currently active UI context tree. | |
| void | handleEvent (const AppEvent &event) |
| Translates raw platform engine input messages into structured, semantic UIEvent actions. | |
| void | render (UICanvas &canvas) const |
| Dispatches the active context layout node tree to push text structures and primitives down to the rendering queue. | |
Central gateway subsystem managing UI multi-context lifetimes, resolution scaling, and input filtering.
Owned by the main Application layer, Acts as a central router that hosts named user interface trees, scales layout constraints for DPI adjustments, and applies high-speed axis hysteresis to normalize analog hardware inputs into structured UI navigation tokens.
Definition at line 24 of file ui-system.h.