neoGFX
Cross-platform C++ app/game engine
Loading...
Searching...
No Matches
neogfx::DesignStudio::element< Type, Base > Class Template Reference

#include <element.hpp>

Inheritance diagram for neogfx::DesignStudio::element< Type, Base >:
neolib::reference_counted< Base, DeallocateOnRelease >

Public Types

typedef abstract_t< Baseabstract_type
 
typedef neolib::vector< ref_ptr< abstract_type > > children_t
 

Public Member Functions

 define_declared_event (ModeChanged, mode_changed) define_declared_event(SelectionChanged
 
 element (i_element_library const &aLibrary, i_project &aProject, std::string const &aType, element_group aGroup=default_element_group< Type >())
 
 element (i_element_library const &aLibrary, i_project &aProject, std::string const &aType, std::string const &aId, element_group aGroup=default_element_group< Type >())
 
 element (i_element_library const &aLibrary, i_element &aParent, std::string const &aType, element_group aGroup=default_element_group< Type >())
 
 element (i_element_library const &aLibrary, i_element &aParent, std::string const &aType, std::string const &aId, element_group aGroup=default_element_group< Type >())
 
 ~element ()
 
i_element_library const & library () const override
 
i_projectproject () const override
 
element_group group () const override
 
neolib::i_string const & type () const override
 
neolib::i_string const & id () const override
 
i_element const & root () const override
 
i_elementroot () override
 
bool has_parent () const override
 
i_element const & parent () const override
 
i_elementparent () override
 
void set_parent (i_element &aParent) override
 
children_t const & children () const override
 
children_tchildren () override
 
void add_child (i_element &aChild) override
 
void remove_child (i_element &aChild) override
 
void create_default_children () override
 
bool needs_caddy () const override
 
bool has_caddy () const override
 
i_element_caddycaddy () const override
 
void set_caddy (i_element_caddy &aCaddy) override
 
bool has_layout_item () const override
 
void create_layout_item (i_widget &aParent) override
 
i_layout_itemlayout_item () const override
 
element_mode mode () const override
 
void set_mode (element_mode aMode) override
 
bool is_selected () const override
 
void select (bool aSelected=true, bool aDeselectRest=true) override
 
- Public Member Functions inherited from neolib::reference_counted< Base, DeallocateOnRelease >
 reference_counted () noexcept
 
 reference_counted (const reference_counted &aOther) noexcept
 
 ~reference_counted ()
 
reference_countedoperator= (const reference_counted &)
 
void add_ref () const noexcept override
 
void release () const override
 
int32_t use_count () const noexcept override
 
const base_type * release_and_take_ownership () const override
 
base_type * release_and_take_ownership () override
 
void pin () const noexcept override
 
void unpin () const override
 
i_ref_control_blockcontrol_block () override
 

Detailed Description

template<typename Type, typename Base = typename element_traits<Type>::base>
class neogfx::DesignStudio::element< Type, Base >

Definition at line 75 of file element.hpp.

Member Typedef Documentation

◆ abstract_type

template<typename Type , typename Base = typename element_traits<Type>::base>
typedef abstract_t<Base> neogfx::DesignStudio::element< Type, Base >::abstract_type

Definition at line 88 of file element.hpp.

◆ children_t

template<typename Type , typename Base = typename element_traits<Type>::base>
typedef neolib::vector<ref_ptr<abstract_type> > neogfx::DesignStudio::element< Type, Base >::children_t

Definition at line 89 of file element.hpp.

Constructor & Destructor Documentation

◆ element() [1/4]

template<typename Type , typename Base = typename element_traits<Type>::base>
neogfx::DesignStudio::element< Type, Base >::element ( i_element_library const &  aLibrary,
i_project aProject,
std::string const &  aType,
element_group  aGroup = default_element_group<Type>() 
)
inline

Definition at line 91 of file element.hpp.

◆ element() [2/4]

template<typename Type , typename Base = typename element_traits<Type>::base>
neogfx::DesignStudio::element< Type, Base >::element ( i_element_library const &  aLibrary,
i_project aProject,
std::string const &  aType,
std::string const &  aId,
element_group  aGroup = default_element_group<Type>() 
)
inline

Definition at line 99 of file element.hpp.

◆ element() [3/4]

template<typename Type , typename Base = typename element_traits<Type>::base>
neogfx::DesignStudio::element< Type, Base >::element ( i_element_library const &  aLibrary,
i_element< Type, Base > &  aParent,
std::string const &  aType,
element_group  aGroup = default_element_group<Type>() 
)
inline

Definition at line 108 of file element.hpp.

◆ element() [4/4]

template<typename Type , typename Base = typename element_traits<Type>::base>
neogfx::DesignStudio::element< Type, Base >::element ( i_element_library const &  aLibrary,
i_element< Type, Base > &  aParent,
std::string const &  aType,
std::string const &  aId,
element_group  aGroup = default_element_group<Type>() 
)
inline

Definition at line 117 of file element.hpp.

◆ ~element()

template<typename Type , typename Base = typename element_traits<Type>::base>
neogfx::DesignStudio::element< Type, Base >::~element ( )
inline

Definition at line 127 of file element.hpp.

Member Function Documentation

◆ add_child()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::add_child ( i_element< Type, Base > &  aChild)
inlineoverride

Definition at line 189 of file element.hpp.

◆ caddy()

template<typename Type , typename Base = typename element_traits<Type>::base>
i_element_caddy & neogfx::DesignStudio::element< Type, Base >::caddy ( ) const
inlineoverride

Definition at line 219 of file element.hpp.

◆ children() [1/2]

template<typename Type , typename Base = typename element_traits<Type>::base>
children_t const & neogfx::DesignStudio::element< Type, Base >::children ( ) const
inlineoverride

Definition at line 181 of file element.hpp.

◆ children() [2/2]

template<typename Type , typename Base = typename element_traits<Type>::base>
children_t & neogfx::DesignStudio::element< Type, Base >::children ( )
inlineoverride

Definition at line 185 of file element.hpp.

◆ create_default_children()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::create_default_children ( )
inlineoverride

Definition at line 206 of file element.hpp.

◆ create_layout_item()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::create_layout_item ( i_widget aParent)
inlineoverride

Definition at line 233 of file element.hpp.

◆ define_declared_event()

template<typename Type , typename Base = typename element_traits<Type>::base>
neogfx::DesignStudio::element< Type, Base >::define_declared_event ( ModeChanged  ,
mode_changed   
)

◆ group()

template<typename Type , typename Base = typename element_traits<Type>::base>
element_group neogfx::DesignStudio::element< Type, Base >::group ( ) const
inlineoverride

Definition at line 139 of file element.hpp.

◆ has_caddy()

template<typename Type , typename Base = typename element_traits<Type>::base>
bool neogfx::DesignStudio::element< Type, Base >::has_caddy ( ) const
inlineoverride

Definition at line 215 of file element.hpp.

◆ has_layout_item()

template<typename Type , typename Base = typename element_traits<Type>::base>
bool neogfx::DesignStudio::element< Type, Base >::has_layout_item ( ) const
inlineoverride

Definition at line 229 of file element.hpp.

◆ has_parent()

template<typename Type , typename Base = typename element_traits<Type>::base>
bool neogfx::DesignStudio::element< Type, Base >::has_parent ( ) const
inlineoverride

Definition at line 163 of file element.hpp.

◆ id()

template<typename Type , typename Base = typename element_traits<Type>::base>
neolib::i_string const & neogfx::DesignStudio::element< Type, Base >::id ( ) const
inlineoverride

Definition at line 147 of file element.hpp.

◆ is_selected()

template<typename Type , typename Base = typename element_traits<Type>::base>
bool neogfx::DesignStudio::element< Type, Base >::is_selected ( ) const
inlineoverride

Definition at line 317 of file element.hpp.

◆ layout_item()

template<typename Type , typename Base = typename element_traits<Type>::base>
i_layout_item & neogfx::DesignStudio::element< Type, Base >::layout_item ( ) const
inlineoverride

Definition at line 290 of file element.hpp.

◆ library()

template<typename Type , typename Base = typename element_traits<Type>::base>
i_element_library const & neogfx::DesignStudio::element< Type, Base >::library ( ) const
inlineoverride

Definition at line 131 of file element.hpp.

◆ mode()

template<typename Type , typename Base = typename element_traits<Type>::base>
element_mode neogfx::DesignStudio::element< Type, Base >::mode ( ) const
inlineoverride

Definition at line 297 of file element.hpp.

◆ needs_caddy()

template<typename Type , typename Base = typename element_traits<Type>::base>
bool neogfx::DesignStudio::element< Type, Base >::needs_caddy ( ) const
inlineoverride

Definition at line 211 of file element.hpp.

◆ parent() [1/2]

template<typename Type , typename Base = typename element_traits<Type>::base>
i_element const & neogfx::DesignStudio::element< Type, Base >::parent ( ) const
inlineoverride

Definition at line 167 of file element.hpp.

◆ parent() [2/2]

template<typename Type , typename Base = typename element_traits<Type>::base>
i_element & neogfx::DesignStudio::element< Type, Base >::parent ( )
inlineoverride

Definition at line 173 of file element.hpp.

◆ project()

template<typename Type , typename Base = typename element_traits<Type>::base>
i_project & neogfx::DesignStudio::element< Type, Base >::project ( ) const
inlineoverride

Definition at line 135 of file element.hpp.

◆ remove_child()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::remove_child ( i_element< Type, Base > &  aChild)
inlineoverride

Definition at line 199 of file element.hpp.

◆ root() [1/2]

template<typename Type , typename Base = typename element_traits<Type>::base>
i_element const & neogfx::DesignStudio::element< Type, Base >::root ( ) const
inlineoverride

Definition at line 152 of file element.hpp.

◆ root() [2/2]

template<typename Type , typename Base = typename element_traits<Type>::base>
i_element & neogfx::DesignStudio::element< Type, Base >::root ( )
inlineoverride

Definition at line 159 of file element.hpp.

◆ select()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::select ( bool  aSelected = true,
bool  aDeselectRest = true 
)
inlineoverride

Definition at line 321 of file element.hpp.

◆ set_caddy()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::set_caddy ( i_element_caddy aCaddy)
inlineoverride

Definition at line 225 of file element.hpp.

◆ set_mode()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::set_mode ( element_mode  aMode)
inlineoverride

Definition at line 301 of file element.hpp.

◆ set_parent()

template<typename Type , typename Base = typename element_traits<Type>::base>
void neogfx::DesignStudio::element< Type, Base >::set_parent ( i_element< Type, Base > &  aParent)
inlineoverride

Definition at line 177 of file element.hpp.

◆ type()

template<typename Type , typename Base = typename element_traits<Type>::base>
neolib::i_string const & neogfx::DesignStudio::element< Type, Base >::type ( ) const
inlineoverride

Definition at line 143 of file element.hpp.


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