KiCad PCB EDA Suite
|
#include <property.h>
Public Types | |
using | BASE_TYPE = typename std::decay< T >::type |
Public Member Functions | |
template<typename SetType , typename GetType > | |
PROPERTY_ENUM (const wxString &aName, void(Base::*aSetter)(SetType), GetType(Base::*aGetter)(), PROPERTY_DISPLAY aDisplay=PT_DEFAULT) | |
template<typename SetType , typename GetType > | |
PROPERTY_ENUM (const wxString &aName, void(Base::*aSetter)(SetType), GetType(Base::*aGetter)() const, PROPERTY_DISPLAY aDisplay=PT_DEFAULT, ORIGIN_TRANSFORMS::COORD_TYPES_T aCoordType=ORIGIN_TRANSFORMS::NOT_A_COORD) | |
void | setter (void *obj, wxAny &v) override |
wxAny | getter (const void *obj) const override |
Set method. More... | |
const wxPGChoices & | Choices () const override |
Return a limited set of possible values (e.g. More... | |
void | SetChoices (const wxPGChoices &aChoices) override |
Set the possible values for for the property. More... | |
bool | HasChoices () const override |
Return true if this PROPERTY has a limited set of possible values. More... | |
size_t | OwnerHash () const override |
Return type-id of the Owner class. More... | |
size_t | BaseHash () const override |
Return type-id of the Base class. More... | |
size_t | TypeHash () const override |
Return type-id of the property type. More... | |
bool | Writeable (INSPECTABLE *aObject) const override |
const wxString & | Name () const |
bool | Available (INSPECTABLE *aObject) const |
Return true if aObject offers this PROPERTY. More... | |
PROPERTY_BASE & | SetAvailableFunc (std::function< bool(INSPECTABLE *)> aFunc) |
Set a callback function to determine whether an object provides this property. More... | |
PROPERTY_BASE & | SetWriteableFunc (std::function< bool(INSPECTABLE *)> aFunc) |
PROPERTY_DISPLAY | Display () const |
PROPERTY_BASE & | SetDisplay (PROPERTY_DISPLAY aDisplay) |
ORIGIN_TRANSFORMS::COORD_TYPES_T | CoordType () const |
PROPERTY_BASE & | SetCoordType (ORIGIN_TRANSFORMS::COORD_TYPES_T aType) |
bool | IsHiddenFromPropertiesManager () const |
PROPERTY_BASE & | SetIsHiddenFromPropertiesManager (bool aHide=true) |
bool | IsHiddenFromRulesEditor () const |
PROPERTY_BASE & | SetIsHiddenFromRulesEditor (bool aHide=true) |
bool | IsHiddenFromLibraryEditors () const |
PROPERTY_BASE & | SetIsHiddenFromLibraryEditors (bool aIsHidden=true) |
wxString | Group () const |
PROPERTY_BASE & | SetGroup (const wxString &aGroup) |
PROPERTY_BASE & | SetValidator (PROPERTY_VALIDATOR_FN &&aValidator) |
VALIDATOR_RESULT | Validate (const wxAny &&aValue, EDA_ITEM *aItem) |
Static Public Member Functions | |
static VALIDATOR_RESULT | NullValidator (const wxAny &&aValue, EDA_ITEM *aItem) |
Protected Member Functions | |
template<typename T > | |
void | set (void *aObject, T aValue) |
template<typename T > | |
T | get (const void *aObject) const |
Protected Attributes | |
wxPGChoices | m_choices |
std::unique_ptr< SETTER_BASE< Owner, T > > | m_setter |
Get method. More... | |
std::unique_ptr< GETTER_BASE< Owner, T > > | m_getter |
Owner class type-id. More... | |
const size_t | m_ownerHash |
Base class type-id. More... | |
const size_t | m_baseHash |
Property value type-id. More... | |
const size_t | m_typeHash |
Private Attributes | |
const wxString | m_name |
Permanent identifier for this property. More... | |
PROPERTY_DISPLAY | m_display |
The display style controls how properties are edited in the properties manager GUI. More... | |
ORIGIN_TRANSFORMS::COORD_TYPES_T | m_coordType |
The coordinate type controls how distances are mapped to the user coordinate system. More... | |
bool | m_hideFromPropertiesManager |
Some properties should not be shown in the Properties Manager GUI. More... | |
bool | m_hideFromRulesEditor |
Some properties should not be shown in the Custom Rules editor autocomplete. More... | |
bool | m_hideFromLibraryEditors |
This property should only be shown in the design editor, not the library editor. More... | |
wxString | m_group |
Optional group identifier. More... | |
std::function< bool(INSPECTABLE *)> | m_availFunc |
Eval to determine if prop is available. More... | |
std::function< bool(INSPECTABLE *)> | m_writeableFunc |
Eval to determine if prop is read-only. More... | |
PROPERTY_VALIDATOR_FN | m_validator |
Definition at line 500 of file property.h.
|
inherited |
Definition at line 410 of file property.h.
|
inline |
Definition at line 504 of file property.h.
References ENUM_MAP< T >::Instance(), and PROPERTY_ENUM< Owner, T, Base >::m_choices.
|
inline |
Definition at line 518 of file property.h.
References ENUM_MAP< T >::Instance(), and PROPERTY_ENUM< Owner, T, Base >::m_choices.
|
inlineinherited |
Return true if aObject offers this PROPERTY.
Definition at line 233 of file property.h.
Referenced by BOOST_AUTO_TEST_CASE(), and PROPERTY_MANAGER::IsAvailableFor().
|
inlineoverridevirtualinherited |
Return type-id of the Base class.
Implements PROPERTY_BASE.
Definition at line 437 of file property.h.
References PROPERTY< Owner, T, Base >::m_baseHash.
|
inlineoverridevirtual |
Return a limited set of possible values (e.g.
enum). Check with HasChoices() if a particular PROPERTY provides such set.
Reimplemented from PROPERTY_BASE.
Definition at line 560 of file property.h.
References ENUM_MAP< T >::Instance(), and PROPERTY_ENUM< Owner, T, Base >::m_choices.
Referenced by PROPERTY_ENUM< Owner, T, Base >::HasChoices().
|
inlineinherited |
Definition at line 276 of file property.h.
Referenced by PGPropertyFactory().
|
inlineinherited |
Definition at line 273 of file property.h.
Referenced by PGPropertyFactory().
|
inlineprotectedinherited |
Definition at line 352 of file property.h.
Referenced by INSPECTABLE::Get().
|
inlineoverridevirtual |
Set method.
Reimplemented from PROPERTY< Owner, T, Base >.
Definition at line 553 of file property.h.
References res.
|
inlineinherited |
Definition at line 304 of file property.h.
|
inlineoverridevirtual |
Return true if this PROPERTY has a limited set of possible values.
Reimplemented from PROPERTY_BASE.
Definition at line 570 of file property.h.
References PROPERTY_ENUM< Owner, T, Base >::Choices().
|
inlineinherited |
Definition at line 297 of file property.h.
|
inlineinherited |
Definition at line 283 of file property.h.
|
inlineinherited |
Definition at line 290 of file property.h.
|
inlineinherited |
Definition at line 201 of file property.h.
Referenced by PROPERTY_MANAGER::AddProperty(), PCB_PROPERTIES_PANEL::createPGProperty(), PROPERTY_MANAGER::GetProperty(), PROPERTY_MANAGER::IsAvailableFor(), and PGPropertyFactory().
|
inlinestaticinherited |
Definition at line 318 of file property.h.
|
inlineoverridevirtualinherited |
Return type-id of the Owner class.
Implements PROPERTY_BASE.
Definition at line 432 of file property.h.
References PROPERTY< Owner, T, Base >::m_ownerHash.
|
inlineprotectedinherited |
Definition at line 325 of file property.h.
References EDA_ANGLE_VARIANT_DATA::Angle().
Referenced by INSPECTABLE::Set().
|
inlineinherited |
Set a callback function to determine whether an object provides this property.
Definition at line 241 of file property.h.
Referenced by DIMENSION_DESC::DIMENSION_DESC(), and EDA_SHAPE_DESC::EDA_SHAPE_DESC().
|
inlineoverridevirtual |
Set the possible values for for the property.
Reimplemented from PROPERTY_BASE.
Definition at line 565 of file property.h.
References PROPERTY_ENUM< Owner, T, Base >::m_choices.
|
inlineinherited |
Definition at line 277 of file property.h.
|
inlineinherited |
Definition at line 274 of file property.h.
|
inlineinherited |
Definition at line 305 of file property.h.
Referenced by PROPERTY_MANAGER::AddProperty().
|
inlineinherited |
Definition at line 298 of file property.h.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), and PAD_DESC::PAD_DESC().
|
inlineinherited |
Definition at line 284 of file property.h.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC(), and EDA_ITEM_DESC::EDA_ITEM_DESC().
|
inlineinherited |
Definition at line 291 of file property.h.
Referenced by BOARD_CONNECTED_ITEM_DESC::BOARD_CONNECTED_ITEM_DESC().
|
inlineoverridevirtual |
Reimplemented from PROPERTY< Owner, T, Base >.
Definition at line 532 of file property.h.
|
inlineinherited |
Definition at line 307 of file property.h.
Referenced by EDA_TEXT_DESC::EDA_TEXT_DESC(), PAD_DESC::PAD_DESC(), and ZONE_DESC::ZONE_DESC().
|
inlineinherited |
Definition at line 252 of file property.h.
Referenced by PAD_DESC::PAD_DESC(), and ZONE_DESC::ZONE_DESC().
|
inlineoverridevirtualinherited |
Return type-id of the property type.
Implements PROPERTY_BASE.
Definition at line 442 of file property.h.
References PROPERTY< Owner, T, Base >::m_typeHash.
|
inlineinherited |
Definition at line 313 of file property.h.
|
inlineoverridevirtualinherited |
Reimplemented from PROPERTY_BASE.
Definition at line 447 of file property.h.
References PROPERTY< Owner, T, Base >::m_setter, and PROPERTY_BASE::Writeable().
|
privateinherited |
Eval to determine if prop is available.
Definition at line 396 of file property.h.
|
protectedinherited |
Property value type-id.
Definition at line 492 of file property.h.
Referenced by PROPERTY< Owner, T, Base >::BaseHash().
|
protected |
Definition at line 576 of file property.h.
Referenced by PROPERTY_ENUM< Owner, T, Base >::Choices(), PROPERTY_ENUM< Owner, T, Base >::PROPERTY_ENUM(), and PROPERTY_ENUM< Owner, T, Base >::SetChoices().
|
privateinherited |
The coordinate type controls how distances are mapped to the user coordinate system.
Definition at line 382 of file property.h.
|
privateinherited |
The display style controls how properties are edited in the properties manager GUI.
Definition at line 379 of file property.h.
|
protectedinherited |
Owner class type-id.
Definition at line 486 of file property.h.
|
privateinherited |
Optional group identifier.
Definition at line 394 of file property.h.
|
privateinherited |
This property should only be shown in the design editor, not the library editor.
Definition at line 391 of file property.h.
|
privateinherited |
Some properties should not be shown in the Properties Manager GUI.
Definition at line 385 of file property.h.
|
privateinherited |
Some properties should not be shown in the Custom Rules editor autocomplete.
Definition at line 388 of file property.h.
|
privateinherited |
Permanent identifier for this property.
Property names are an API contract; changing them after release will impact the Custom DRC Rules system as well as the automatic API binding system. Never rename properties; instead deprecate them and hide them from the GUI.
Definition at line 376 of file property.h.
|
protectedinherited |
Base class type-id.
Definition at line 489 of file property.h.
Referenced by PROPERTY< Owner, T, Base >::OwnerHash().
|
protectedinherited |
Get method.
Definition at line 483 of file property.h.
Referenced by PROPERTY< Owner, T, Base >::setter(), and PROPERTY< Owner, T, Base >::Writeable().
|
protectedinherited |
Definition at line 495 of file property.h.
Referenced by PROPERTY< Owner, T, Base >::TypeHash().
|
privateinherited |
Definition at line 400 of file property.h.
|
privateinherited |
Eval to determine if prop is read-only.
Definition at line 398 of file property.h.