Shkyera Engine
Easy to use, game engine for Python
Loading...
Searching...
No Matches
shkyera::AssetSelector< AssetType > Class Template Reference

#include <AssetSelector.hpp>

Public Member Functions

 AssetSelector ()=default
 
 AssetSelector (const std::string &title)
 
 AssetSelector (const std::string &title, Registry *registry, std::optional< AssetHandle > asset)
 
virtual ~AssetSelector ()=default
 
void setUpdateCallback (std::function< void(AssetHandle file)> callback)
 
void setClearCallback (std::function< void()> callback)
 
void draw ()
 

Protected Member Functions

virtual void drawAsset (Registry *registry, AssetHandle handle)
 
virtual void clearAsset ()
 

Private Attributes

std::string _title {}
 
Registry_registry
 
std::optional< AssetHandle_asset
 
std::function< void(AssetHandle)> _updateCallback
 
std::function< void()> _clearCallback
 

Constructor & Destructor Documentation

◆ AssetSelector() [1/3]

template<typename AssetType >
shkyera::AssetSelector< AssetType >::AssetSelector ( )
default

◆ AssetSelector() [2/3]

template<typename AssetType >
shkyera::AssetSelector< AssetType >::AssetSelector ( const std::string &  title)
inline

◆ AssetSelector() [3/3]

template<typename AssetType >
shkyera::AssetSelector< AssetType >::AssetSelector ( const std::string &  title,
Registry registry,
std::optional< AssetHandle asset 
)
inline

◆ ~AssetSelector()

Member Function Documentation

◆ clearAsset()

template<typename AssetType >
virtual void shkyera::AssetSelector< AssetType >::clearAsset ( )
inlineprotectedvirtual

Reimplemented in shkyera::TextureAssetSelector.

◆ draw()

template<typename AssetType >
void shkyera::AssetSelector< AssetType >::draw ( )
inline

◆ drawAsset()

template<typename AssetType >
virtual void shkyera::AssetSelector< AssetType >::drawAsset ( Registry registry,
AssetHandle  handle 
)
inlineprotectedvirtual

Reimplemented in shkyera::TextureAssetSelector.

◆ setClearCallback()

template<typename AssetType >
void shkyera::AssetSelector< AssetType >::setClearCallback ( std::function< void()>  callback)
inline

◆ setUpdateCallback()

template<typename AssetType >
void shkyera::AssetSelector< AssetType >::setUpdateCallback ( std::function< void(AssetHandle file)>  callback)
inline

Member Data Documentation

◆ _asset

template<typename AssetType >
std::optional<AssetHandle> shkyera::AssetSelector< AssetType >::_asset
private

◆ _clearCallback

template<typename AssetType >
std::function<void()> shkyera::AssetSelector< AssetType >::_clearCallback
private

◆ _registry

template<typename AssetType >
Registry* shkyera::AssetSelector< AssetType >::_registry
private

◆ _title

template<typename AssetType >
std::string shkyera::AssetSelector< AssetType >::_title {}
private

◆ _updateCallback

template<typename AssetType >
std::function<void(AssetHandle)> shkyera::AssetSelector< AssetType >::_updateCallback
private

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