Shkyera Engine
Easy to use, game engine for Python
Loading...
Searching...
No Matches
shkyera::PropertiesWidget Class Reference

A user interface widget for managing game object properties. More...

#include <PropertiesWidget.hpp>

Inheritance diagram for shkyera::PropertiesWidget:
[legend]

Public Member Functions

 PropertiesWidget (std::shared_ptr< Registry > registry)
 
 PropertiesWidget (std::shared_ptr< Registry > registry, const std::string &title)
 
void draw () override
 Implementation of the abstract draw method to render the properties widget.
 
 Widget (std::string name)
 Constructor to create a widget with a specified name.
 
- Public Member Functions inherited from shkyera::Widget
 Widget (std::string name)
 Constructor to create a widget with a specified name.
 
virtual ~Widget ()=default
 Default virtual destructor.
 

Protected Member Functions

virtual void updateComponents ()
 
virtual void drawNewComponentMenu ()
 
void setupComponentsUI ()
 

Protected Attributes

std::shared_ptr< Registry_registry
 
std::optional< Entity_selectedEntity
 

Private Member Functions

void drawExistingComponents ()
 

Private Attributes

std::vector< std::unique_ptr< ComponentUI > > _componentsUi
 

Additional Inherited Members

- Public Attributes inherited from shkyera::Widget
std::string _name
 The name of the widget.
 

Detailed Description

A user interface widget for managing game object properties.

The PropertiesWidget class provides a graphical user interface for viewing and managing the properties and components of a selected game object.

Constructor & Destructor Documentation

◆ PropertiesWidget() [1/2]

shkyera::PropertiesWidget::PropertiesWidget ( std::shared_ptr< Registry registry)

◆ PropertiesWidget() [2/2]

shkyera::PropertiesWidget::PropertiesWidget ( std::shared_ptr< Registry registry,
const std::string &  title 
)

Member Function Documentation

◆ draw()

void shkyera::PropertiesWidget::draw ( )
overridevirtual

Implementation of the abstract draw method to render the properties widget.

Implements shkyera::Widget.

◆ drawExistingComponents()

void shkyera::PropertiesWidget::drawExistingComponents ( )
private

◆ drawNewComponentMenu()

void shkyera::PropertiesWidget::drawNewComponentMenu ( )
protectedvirtual

◆ setupComponentsUI()

void shkyera::PropertiesWidget::setupComponentsUI ( )
protected

◆ updateComponents()

void shkyera::PropertiesWidget::updateComponents ( )
protectedvirtual

◆ Widget()

shkyera::Widget::Widget ( std::string  name)

Constructor to create a widget with a specified name.

Parameters
nameThe name of the widget.

Member Data Documentation

◆ _componentsUi

std::vector<std::unique_ptr<ComponentUI> > shkyera::PropertiesWidget::_componentsUi
private

◆ _registry

std::shared_ptr<Registry> shkyera::PropertiesWidget::_registry
protected

◆ _selectedEntity

std::optional<Entity> shkyera::PropertiesWidget::_selectedEntity
protected

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