Air-Trap 1.0.0
A multiplayer R-Type clone game engine built with C++23 and ECS architecture
Loading...
Searching...
No Matches
rtp::client::systems::UIRenderSystem Class Reference

#include <UIRenderSystem.hpp>

Inheritance diagram for rtp::client::systems::UIRenderSystem:
Collaboration diagram for rtp::client::systems::UIRenderSystem:

Public Member Functions

 UIRenderSystem (ecs::Registry &registry, sf::RenderWindow &window)
 
void update (float dt) override
 Update system logic for one frame.
 
void clearTextureCache ()
 
- Public Member Functions inherited from rtp::ecs::ISystem
virtual ~ISystem () noexcept=default
 

Private Member Functions

void renderButtons ()
 
void renderTexts ()
 
void renderSliders ()
 
void renderDropdowns ()
 
void renderTextInputs (float dt)
 
void renderSpritePreviews ()
 
sf::Font & loadFont (const std::string &fontPath)
 
sf::Texture & loadTexture (const std::string &texturePath)
 

Private Attributes

ecs::Registry_registry
 
sf::RenderWindow & _window
 
std::unordered_map< std::string, sf::Font > _fonts
 
std::unordered_map< std::string, sf::Texture > _textures
 

Detailed Description

Definition at line 25 of file UIRenderSystem.hpp.

Constructor & Destructor Documentation

◆ UIRenderSystem()

rtp::client::systems::UIRenderSystem::UIRenderSystem ( ecs::Registry registry,
sf::RenderWindow &  window 
)

Definition at line 17 of file UIRenderSystem.cpp.

Member Function Documentation

◆ clearTextureCache()

void rtp::client::systems::UIRenderSystem::clearTextureCache ( )

Definition at line 24 of file UIRenderSystem.cpp.

References _textures, and rtp::log::info().

Referenced by rtp::client::SpriteCustomizer::clearTextureCaches().

◆ loadFont()

sf::Font & rtp::client::systems::UIRenderSystem::loadFont ( const std::string &  fontPath)
private

Definition at line 121 of file UIRenderSystem.cpp.

References _fonts.

Referenced by renderButtons(), renderDropdowns(), renderTextInputs(), and renderTexts().

◆ loadTexture()

sf::Texture & rtp::client::systems::UIRenderSystem::loadTexture ( const std::string &  texturePath)
private

Definition at line 408 of file UIRenderSystem.cpp.

References _textures.

Referenced by renderSpritePreviews().

◆ renderButtons()

void rtp::client::systems::UIRenderSystem::renderButtons ( )
private

◆ renderDropdowns()

void rtp::client::systems::UIRenderSystem::renderDropdowns ( )
private

Definition at line 175 of file UIRenderSystem.cpp.

References _registry, _window, rtp::log::error(), rtp::ecs::Registry::get(), and loadFont().

Referenced by update().

◆ renderSliders()

void rtp::client::systems::UIRenderSystem::renderSliders ( )
private

Definition at line 137 of file UIRenderSystem.cpp.

References _registry, _window, and rtp::ecs::Registry::get().

Referenced by update().

◆ renderSpritePreviews()

void rtp::client::systems::UIRenderSystem::renderSpritePreviews ( )
private

◆ renderTextInputs()

void rtp::client::systems::UIRenderSystem::renderTextInputs ( float  dt)
private

◆ renderTexts()

void rtp::client::systems::UIRenderSystem::renderTexts ( )
private

Definition at line 92 of file UIRenderSystem.cpp.

References _registry, _window, rtp::log::error(), rtp::ecs::Registry::get(), and loadFont().

Referenced by update().

◆ update()

void rtp::client::systems::UIRenderSystem::update ( float  deltaTime)
overridevirtual

Update system logic for one frame.

Parameters
registryThe entity registry to operate on
deltaTimeTime elapsed since last update in seconds

Implements rtp::ecs::ISystem.

Definition at line 30 of file UIRenderSystem.cpp.

References renderButtons(), renderDropdowns(), renderSliders(), renderSpritePreviews(), renderTextInputs(), and renderTexts().

Member Data Documentation

◆ _fonts

std::unordered_map<std::string, sf::Font> rtp::client::systems::UIRenderSystem::_fonts
private

Definition at line 44 of file UIRenderSystem.hpp.

Referenced by loadFont().

◆ _registry

ecs::Registry& rtp::client::systems::UIRenderSystem::_registry
private

◆ _textures

std::unordered_map<std::string, sf::Texture> rtp::client::systems::UIRenderSystem::_textures
private

Definition at line 45 of file UIRenderSystem.hpp.

Referenced by clearTextureCache(), and loadTexture().

◆ _window

sf::RenderWindow& rtp::client::systems::UIRenderSystem::_window
private

The documentation for this class was generated from the following files: