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

#include <i_property.hpp>

Inheritance diagram for neogfx::i_property:
neogfx::i_property_delegate neogfx::property< T, Category, Context, Calculator >

Classes

struct  no_calculator
 
struct  no_delegate
 
struct  no_new_value
 

Public Types

typedef i_property abstract_type
 

Public Member Functions

 declare_event (property_changed, const property_variant &) declare_event(property_changed_from_to
 
virtual ~i_property ()=default
 
virtual i_property_ownerowner () const =0
 
virtual const i_stringname () const =0
 
virtual const std::type_info & type () const =0
 
virtual const std::type_info & category () const =0
 
virtual bool optional () const =0
 
virtual property_variant get_as_variant () const =0
 
virtual void set_from_variant (const property_variant &aValue)=0
 
virtual bool read_only () const =0
 
virtual void set_read_only (bool aReadOnly)=0
 
virtual bool transition_set () const =0
 
virtual i_transitiontransition () const =0
 
virtual void set_transition (i_animator &aAnimator, easing aEasingFunction, double aDuration, bool aEnabled=true)=0
 
virtual void clear_transition ()=0
 
virtual bool transition_suppressed () const =0
 
virtual void suppress_transition (bool aSuppress)=0
 
virtual bool has_delegate () const =0
 
virtual i_property_delegate const & delegate () const =0
 
virtual i_property_delegatedelegate ()=0
 
virtual void set_delegate (i_property_delegate &aDelegate)=0
 
virtual void unset_delegate ()=0
 
template<typename T >
const T & get () const
 
template<typename T >
T & get ()
 
template<typename Context , typename Callable , typename... Args>
auto calculate (Args &&... aArgs) const
 
- Public Member Functions inherited from neogfx::i_property_delegate
virtual ~i_property_delegate ()=default
 
virtual property_variant get (const i_property &aProperty) const =0
 

Protected Member Functions

virtual const void * data () const =0
 
virtual void * data ()=0
 
virtual void *const * calculator_function () const =0
 

Friends

template<typename , typename >
class property_delegate
 

Detailed Description

Definition at line 110 of file i_property.hpp.

Member Typedef Documentation

◆ abstract_type

Definition at line 116 of file i_property.hpp.

Constructor & Destructor Documentation

◆ ~i_property()

virtual neogfx::i_property::~i_property ( )
virtualdefault

Member Function Documentation

◆ calculate()

template<typename Context , typename Callable , typename... Args>
auto neogfx::i_property::calculate ( Args &&...  aArgs) const
inline

Definition at line 171 of file i_property.hpp.

◆ calculator_function()

virtual void *const * neogfx::i_property::calculator_function ( ) const
protectedpure virtual

◆ category()

virtual const std::type_info & neogfx::i_property::category ( ) const
pure virtual

◆ clear_transition()

virtual void neogfx::i_property::clear_transition ( )
pure virtual

◆ data() [1/2]

virtual const void * neogfx::i_property::data ( ) const
protectedpure virtual

◆ data() [2/2]

virtual void * neogfx::i_property::data ( )
protectedpure virtual

◆ declare_event()

neogfx::i_property::declare_event ( property_changed  ,
const property_variant  
)

◆ delegate() [1/2]

virtual i_property_delegate const & neogfx::i_property::delegate ( ) const
pure virtual

◆ delegate() [2/2]

virtual i_property_delegate & neogfx::i_property::delegate ( )
pure virtual

◆ get() [1/2]

template<typename T >
T & neogfx::i_property::get ( )
inline

Definition at line 166 of file i_property.hpp.

◆ get() [2/2]

template<typename T >
const T & neogfx::i_property::get ( ) const
inline

Definition at line 161 of file i_property.hpp.

◆ get_as_variant()

virtual property_variant neogfx::i_property::get_as_variant ( ) const
pure virtual

◆ has_delegate()

virtual bool neogfx::i_property::has_delegate ( ) const
pure virtual

◆ name()

virtual const i_string & neogfx::i_property::name ( ) const
pure virtual

◆ optional()

virtual bool neogfx::i_property::optional ( ) const
pure virtual

◆ owner()

virtual i_property_owner & neogfx::i_property::owner ( ) const
pure virtual

◆ read_only()

virtual bool neogfx::i_property::read_only ( ) const
pure virtual

◆ set_delegate()

virtual void neogfx::i_property::set_delegate ( i_property_delegate aDelegate)
pure virtual

◆ set_from_variant()

virtual void neogfx::i_property::set_from_variant ( const property_variant aValue)
pure virtual

◆ set_read_only()

virtual void neogfx::i_property::set_read_only ( bool  aReadOnly)
pure virtual

◆ set_transition()

virtual void neogfx::i_property::set_transition ( i_animator aAnimator,
easing  aEasingFunction,
double  aDuration,
bool  aEnabled = true 
)
pure virtual

◆ suppress_transition()

virtual void neogfx::i_property::suppress_transition ( bool  aSuppress)
pure virtual

◆ transition()

virtual i_transition & neogfx::i_property::transition ( ) const
pure virtual

◆ transition_set()

virtual bool neogfx::i_property::transition_set ( ) const
pure virtual

◆ transition_suppressed()

virtual bool neogfx::i_property::transition_suppressed ( ) const
pure virtual

◆ type()

virtual const std::type_info & neogfx::i_property::type ( ) const
pure virtual

◆ unset_delegate()

virtual void neogfx::i_property::unset_delegate ( )
pure virtual

Friends And Related Symbol Documentation

◆ property_delegate

template<typename , typename >
friend class property_delegate
friend

Definition at line 113 of file i_property.hpp.


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