| 
    KiCad PCB EDA Suite
    
   | 
 
Returns metadata for a specific type. More...
Public Member Functions | |
| CLASS_DESC (TYPE_ID aId) | |
| Unique type identifier (obtained using TYPE_HASH)   | |
| void | rebuild () | 
| Traverses the class inheritance hierarchy bottom-to-top, gathering all properties available to a type.   | |
| void | collectPropsRecur (std::vector< PROPERTY_BASE * > &aResult, std::set< std::pair< size_t, wxString > > &aReplaced, std::map< PROPERTY_BASE *, int > &aDisplayOrder, std::set< std::pair< size_t, wxString > > &aMasked) const | 
Public Attributes | |
| const TYPE_ID | m_id | 
| Types after which this type inherits.   | |
| std::vector< std::reference_wrapper< CLASS_DESC > > | m_bases | 
| Properties unique to this type (i.e. not inherited)   | |
| std::map< wxString, std::unique_ptr< PROPERTY_BASE > > | m_ownProperties | 
| Type converters available for this type.   | |
| std::map< TYPE_ID, std::unique_ptr< TYPE_CAST_BASE > > | m_typeCasts | 
| Properties from bases that should be masked (hidden) on this subclass.   | |
| std::set< std::pair< size_t, wxString > > | m_maskedBaseProperties | 
| Overrides for base class property availabilities.   | |
| std::map< std::pair< size_t, wxString >, std::function< bool(INSPECTABLE *)> > | m_availabilityOverrides | 
| Overrides for base class property writeable status.   | |
| std::map< std::pair< size_t, wxString >, std::function< bool(INSPECTABLE *)> > | m_writeabilityOverrides | 
| All properties (both unique to the type and inherited)   | |
| std::vector< PROPERTY_BASE * > | m_allProperties | 
| Compiled display order for all properties.   | |
| std::map< PROPERTY_BASE *, int > | m_displayOrder | 
| List of property groups provided by this class in display order.   | |
| std::vector< wxString > | m_groupDisplayOrder | 
| Non-owning list of classes's direct properties in display order.   | |
| std::vector< PROPERTY_BASE * > | m_ownDisplayOrder | 
| The property groups provided by this class.   | |
| std::set< wxString > | m_groups | 
| Replaced properties (TYPE_ID / name)   | |
| std::set< std::pair< size_t, wxString > > | m_replaced | 
| Recreates the list of properties.   | |
Returns metadata for a specific type.
Definition at line 274 of file property_mgr.h.
      
  | 
  inline | 
Unique type identifier (obtained using TYPE_HASH)
Definition at line 276 of file property_mgr.h.
References m_groupDisplayOrder, m_groups, and m_id.
Referenced by rebuild().
| void PROPERTY_MANAGER::CLASS_DESC::collectPropsRecur | ( | std::vector< PROPERTY_BASE * > & | aResult, | 
| std::set< std::pair< size_t, wxString > > & | aReplaced, | ||
| std::map< PROPERTY_BASE *, int > & | aDisplayOrder, | ||
| std::set< std::pair< size_t, wxString > > & | aMasked ) const | 
Definition at line 330 of file property_mgr.cpp.
References m_bases, m_maskedBaseProperties, m_ownDisplayOrder, m_ownProperties, and m_replaced.
Referenced by rebuild().
| void PROPERTY_MANAGER::CLASS_DESC::rebuild | ( | ) | 
Traverses the class inheritance hierarchy bottom-to-top, gathering all properties available to a type.
Definition at line 287 of file property_mgr.cpp.
References CLASS_DESC(), collectPropsRecur(), group, m_allProperties, m_displayOrder, and m_groupDisplayOrder.
| std::vector<PROPERTY_BASE*> PROPERTY_MANAGER::CLASS_DESC::m_allProperties | 
Compiled display order for all properties.
Definition at line 305 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::GetProperty(), and rebuild().
| std::map<std::pair<size_t, wxString>, std::function<bool( INSPECTABLE* )> > PROPERTY_MANAGER::CLASS_DESC::m_availabilityOverrides | 
Overrides for base class property writeable status.
Definition at line 299 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::IsAvailableFor(), and PROPERTY_MANAGER::OverrideAvailability().
| std::vector<std::reference_wrapper<CLASS_DESC> > PROPERTY_MANAGER::CLASS_DESC::m_bases | 
Properties unique to this type (i.e. not inherited)
Definition at line 287 of file property_mgr.h.
Referenced by collectPropsRecur(), PROPERTY_MANAGER::InheritsAfter(), and PROPERTY_MANAGER::PropertyChanged().
| std::map<PROPERTY_BASE*, int> PROPERTY_MANAGER::CLASS_DESC::m_displayOrder | 
List of property groups provided by this class in display order.
Definition at line 308 of file property_mgr.h.
Referenced by rebuild().
| std::vector<wxString> PROPERTY_MANAGER::CLASS_DESC::m_groupDisplayOrder | 
Non-owning list of classes's direct properties in display order.
Definition at line 311 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::AddProperty(), CLASS_DESC(), and rebuild().
| std::set<wxString> PROPERTY_MANAGER::CLASS_DESC::m_groups | 
Replaced properties (TYPE_ID / name)
Definition at line 317 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::AddProperty(), and CLASS_DESC().
| const TYPE_ID PROPERTY_MANAGER::CLASS_DESC::m_id | 
Types after which this type inherits.
Definition at line 284 of file property_mgr.h.
Referenced by CLASS_DESC(), and PROPERTY_MANAGER::PropertyChanged().
| std::set<std::pair<size_t, wxString> > PROPERTY_MANAGER::CLASS_DESC::m_maskedBaseProperties | 
Overrides for base class property availabilities.
Definition at line 296 of file property_mgr.h.
Referenced by collectPropsRecur(), and PROPERTY_MANAGER::Mask().
| std::vector<PROPERTY_BASE*> PROPERTY_MANAGER::CLASS_DESC::m_ownDisplayOrder | 
The property groups provided by this class.
Definition at line 314 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::AddProperty(), and collectPropsRecur().
| std::map<wxString, std::unique_ptr<PROPERTY_BASE> > PROPERTY_MANAGER::CLASS_DESC::m_ownProperties | 
Type converters available for this type.
Definition at line 290 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::AddProperty(), and collectPropsRecur().
| std::set<std::pair<size_t, wxString> > PROPERTY_MANAGER::CLASS_DESC::m_replaced | 
Recreates the list of properties.
Definition at line 320 of file property_mgr.h.
Referenced by collectPropsRecur(), and PROPERTY_MANAGER::ReplaceProperty().
| std::map<TYPE_ID, std::unique_ptr<TYPE_CAST_BASE> > PROPERTY_MANAGER::CLASS_DESC::m_typeCasts | 
Properties from bases that should be masked (hidden) on this subclass.
Definition at line 293 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::AddTypeCast(), and PROPERTY_MANAGER::InheritsAfter().
| std::map<std::pair<size_t, wxString>, std::function<bool( INSPECTABLE* )> > PROPERTY_MANAGER::CLASS_DESC::m_writeabilityOverrides | 
All properties (both unique to the type and inherited)
Definition at line 302 of file property_mgr.h.
Referenced by PROPERTY_MANAGER::IsWriteableFor(), and PROPERTY_MANAGER::OverrideWriteability().