neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::DesignStudio::i_project Class Referenceabstract

#include <i_project.hpp>

Inheritance diagram for neogfx::DesignStudio::i_project:
neolib::i_reference_counted

Classes

struct  invalid_project_file
 

Public Types

typedef i_project abstract_type
 

Public Member Functions

 declare_event (element_added, i_element &)
 
 declare_event (element_removed, i_element &)
 
virtual i_project_managermanager () const =0
 
virtual void create (const i_string &aName, const i_string &aNamespace)=0
 
virtual void open (const i_string &aPath)=0
 
virtual const i_stringname () const =0
 
virtual const i_stringnamespace_ () const =0
 
virtual const i_elementroot () const =0
 
virtual i_elementroot ()=0
 
virtual i_elementcreate_element (i_element &aParent, const i_string &aType, const i_string &aElementId=string{})=0
 
virtual void remove_element (i_element &aElement)=0
 
- Public Member Functions inherited from neolib::i_reference_counted
virtual ~i_reference_counted ()=default
 
virtual void add_ref () const noexcept=0
 
virtual void release () const =0
 
virtual int32_t use_count () const noexcept=0
 
virtual const i_reference_countedrelease_and_take_ownership () const =0
 
virtual i_reference_countedrelease_and_take_ownership ()=0
 
virtual void pin () const noexcept=0
 
virtual void unpin () const =0
 
virtual i_ref_control_blockcontrol_block ()=0
 

Detailed Description

Definition at line 31 of file i_project.hpp.

Member Typedef Documentation

◆ abstract_type

Member Function Documentation

◆ create()

virtual void neogfx::DesignStudio::i_project::create ( const i_string aName,
const i_string aNamespace 
)
pure virtual

◆ create_element()

virtual i_element & neogfx::DesignStudio::i_project::create_element ( i_element aParent,
const i_string aType,
const i_string aElementId = string{} 
)
pure virtual

◆ declare_event() [1/2]

neogfx::DesignStudio::i_project::declare_event ( element_added  ,
i_element  
)

◆ declare_event() [2/2]

neogfx::DesignStudio::i_project::declare_event ( element_removed  ,
i_element  
)

◆ manager()

virtual i_project_manager & neogfx::DesignStudio::i_project::manager ( ) const
pure virtual

◆ name()

virtual const i_string & neogfx::DesignStudio::i_project::name ( ) const
pure virtual

◆ namespace_()

virtual const i_string & neogfx::DesignStudio::i_project::namespace_ ( ) const
pure virtual

◆ open()

virtual void neogfx::DesignStudio::i_project::open ( const i_string aPath)
pure virtual

◆ remove_element()

virtual void neogfx::DesignStudio::i_project::remove_element ( i_element aElement)
pure virtual

◆ root() [1/2]

virtual const i_element & neogfx::DesignStudio::i_project::root ( ) const
pure virtual

◆ root() [2/2]

virtual i_element & neogfx::DesignStudio::i_project::root ( )
pure virtual

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