Divide Framework 0.1
A free and open-source 3D Framework under heavy development
Loading...
Searching...
No Matches
Divide::EditorComponent Class Referencefinal

#include <EditorComponent.h>

+ Inheritance diagram for Divide::EditorComponent:

Public Member Functions

 EditorComponent (PlatformContext &context, ComponentType type, std::string_view name)
 
 ~EditorComponent () override
 
void addHeader (const Str< 32 > &name)
 
void registerField (EditorComponentField &&field)
 
vector< EditorComponentField > & fields () noexcept
 
const vector< EditorComponentField > & fields () const noexcept
 
void onChangedCbk (const DELEGATE< void, std::string_view > &cbk)
 
void onChangedCbk (DELEGATE< void, std::string_view > &&cbk) noexcept
 
 PROPERTY_RW (Str< 128 >, name, "")
 
 PROPERTY_R (ComponentType, componentType, ComponentType::COUNT)
 
- Public Member Functions inherited from Divide::PlatformContextComponent
 PlatformContextComponent (PlatformContext &context) noexcept
 
virtual ~PlatformContextComponent ()=default
 
PlatformContextcontext () noexcept
 
const PlatformContextcontext () const noexcept
 
- Public Member Functions inherited from Divide::NonCopyable
 NonCopyable (const NonCopyable &)=delete
 
NonCopyableoperator= (const NonCopyable &)=delete
 
 NonCopyable (NonCopyable &&)=default
 
NonCopyableoperator= (NonCopyable &&)=default
 
- Public Member Functions inherited from Divide::GUIDWrapper
 GUIDWrapper () noexcept
 
 GUIDWrapper (const GUIDWrapper &old) noexcept
 
 GUIDWrapper (GUIDWrapper &&old) noexcept
 
virtual ~GUIDWrapper ()=default
 
FORCE_INLINE I64 getGUID () const noexcept
 
GUIDWrapperoperator= (const GUIDWrapper &old)=delete
 
GUIDWrapperoperator= (GUIDWrapper &&other)=delete
 

Protected Member Functions

void onChanged (const EditorComponentField &field) const
 
void saveToXML (boost::property_tree::ptree &pt) const
 
void loadFromXML (const boost::property_tree::ptree &pt)
 
bool saveCache (ByteBuffer &outputBuffer) const
 
bool loadCache (ByteBuffer &inputBuffer)
 
void saveFieldToXML (const EditorComponentField &field, boost::property_tree::ptree &pt) const
 
void loadFieldFromXML (EditorComponentField &field, const boost::property_tree::ptree &pt)
 
- Protected Member Functions inherited from Divide::NonCopyable
 NonCopyable ()=default
 
 ~NonCopyable ()=default
 

Protected Attributes

DELEGATE< void, std::string_view > _onChangedCbk
 
vector< EditorComponentField_fields
 
- Protected Attributes inherited from Divide::PlatformContextComponent
PlatformContext_context
 
- Protected Attributes inherited from Divide::GUIDWrapper
const I64 _guid
 

Friends

class Attorney::EditorComponentEditor
 
class Attorney::EditorComponentSceneGraphNode
 

Additional Inherited Members

- Static Public Member Functions inherited from Divide::GUIDWrapper
static I64 generateGUID () noexcept
 

Detailed Description

Definition at line 162 of file EditorComponent.h.

Constructor & Destructor Documentation

◆ EditorComponent()

Divide::EditorComponent::EditorComponent ( PlatformContext context,
ComponentType  type,
std::string_view  name 
)
explicit

Definition at line 53 of file EditorComponent.cpp.

◆ ~EditorComponent()

Divide::EditorComponent::~EditorComponent ( )
override

Definition at line 61 of file EditorComponent.cpp.

Member Function Documentation

◆ addHeader()

void Divide::EditorComponent::addHeader ( const Str< 32 > &  name)
inline

Definition at line 172 of file EditorComponent.h.

◆ fields() [1/2]

const vector< EditorComponentField > & Divide::EditorComponent::fields ( ) const
inlinenoexcept

Definition at line 183 of file EditorComponent.h.

◆ fields() [2/2]

vector< EditorComponentField > & Divide::EditorComponent::fields ( )
inlinenoexcept

Definition at line 182 of file EditorComponent.h.

◆ loadCache()

bool Divide::EditorComponent::loadCache ( ByteBuffer inputBuffer)
protected

Definition at line 94 of file EditorComponent.cpp.

◆ loadFieldFromXML()

void Divide::EditorComponent::loadFieldFromXML ( EditorComponentField field,
const boost::property_tree::ptree &  pt 
)
protected

Definition at line 810 of file EditorComponent.cpp.

◆ loadFromXML()

void Divide::EditorComponent::loadFromXML ( const boost::property_tree::ptree &  pt)
protected

Definition at line 188 of file EditorComponent.cpp.

◆ onChanged()

void Divide::EditorComponent::onChanged ( const EditorComponentField field) const
protected

Definition at line 77 of file EditorComponent.cpp.

◆ onChangedCbk() [1/2]

void Divide::EditorComponent::onChangedCbk ( const DELEGATE< void, std::string_view > &  cbk)
inline

Definition at line 185 of file EditorComponent.h.

◆ onChangedCbk() [2/2]

void Divide::EditorComponent::onChangedCbk ( DELEGATE< void, std::string_view > &&  cbk)
inlinenoexcept

Definition at line 186 of file EditorComponent.h.

◆ PROPERTY_R()

Divide::EditorComponent::PROPERTY_R ( ComponentType  ,
componentType  ,
ComponentType::COUNT   
)

◆ PROPERTY_RW()

Divide::EditorComponent::PROPERTY_RW ( Str< 128 >  ,
name  ,
""   
)

◆ registerField()

void Divide::EditorComponent::registerField ( EditorComponentField &&  field)

Definition at line 69 of file EditorComponent.cpp.

◆ saveCache()

bool Divide::EditorComponent::saveCache ( ByteBuffer outputBuffer) const
protected

Definition at line 86 of file EditorComponent.cpp.

◆ saveFieldToXML()

void Divide::EditorComponent::saveFieldToXML ( const EditorComponentField field,
boost::property_tree::ptree &  pt 
) const
protected

Definition at line 426 of file EditorComponent.cpp.

◆ saveToXML()

void Divide::EditorComponent::saveToXML ( boost::property_tree::ptree &  pt) const
protected

Definition at line 107 of file EditorComponent.cpp.

Friends And Related Function Documentation

◆ Attorney::EditorComponentEditor

friend class Attorney::EditorComponentEditor
friend

Definition at line 164 of file EditorComponent.h.

◆ Attorney::EditorComponentSceneGraphNode

Definition at line 165 of file EditorComponent.h.

Member Data Documentation

◆ _fields

vector<EditorComponentField> Divide::EditorComponent::_fields
protected

Definition at line 205 of file EditorComponent.h.

◆ _onChangedCbk

DELEGATE<void, std::string_view> Divide::EditorComponent::_onChangedCbk
protected

Definition at line 204 of file EditorComponent.h.


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