#include <PropertyContainer.h>
Classes | |
struct OffsetBase | |
struct PropertySpec | |
Public Member Functions | |
void addProperty (OffsetBase offsetBase, const char *PropName, Property *Prop, const char *PropertyGroup=0, PropertyType=Prop_None, const char *PropertyDocu=0) | |
const PropertySpec * findProperty (OffsetBase offsetBase, const char *PropName) const | |
const PropertySpec * findProperty (OffsetBase offsetBase, const Property *prop) const | |
const char * getDocumentation (OffsetBase offsetBase, const char *name) const | |
const char * getDocumentation (OffsetBase offsetBase, const Property *prop) const | |
const char * getGroup (OffsetBase offsetBase, const char *name) const | |
const char * getGroup (OffsetBase offsetBase, const Property *prop) const | |
const char * getName (OffsetBase offsetBase, const Property *prop) const | |
Property * getPropertyByName (OffsetBase offsetBase, const char *name) const | |
void getPropertyList (OffsetBase offsetBase, std::vector< Property * > &List) const | |
void getPropertyMap (OffsetBase offsetBase, std::map< std::string, Property * > &Map) const | |
short getType (OffsetBase offsetBase, const char *name) const | |
short getType (OffsetBase offsetBase, const Property *prop) const | |
void merge (PropertyData *other=0) const | |
void split (PropertyData *other) | |
Public Attributes | |
bool parentMerged = false | |
const PropertyData * parentPropertyData | |
bmi::multi_index_container< PropertySpec, bmi::indexed_by< bmi::sequenced<>, bmi::hashed_unique< bmi::member< PropertySpec, const char *, &PropertySpec::Name >, CStringHasher, CStringHasher >, bmi::hashed_unique< bmi::member< PropertySpec, short, &PropertySpec::Offset > > > > propertyData | |
Member Function Documentation
◆ addProperty()
void PropertyData::addProperty | ( | OffsetBase | offsetBase, |
const char * | PropName, | ||
Property * | Prop, | ||
const char * | PropertyGroup = 0 , |
||
PropertyType | Type = Prop_None , |
||
const char * | PropertyDocu = 0 |
||
) |
References App::PropertyData::OffsetBase::getOffsetTo(), parentMerged, and propertyData.
Referenced by DocumentObject.Box::init(), and DocumentObject.DocumentObject::onChanged().
◆ findProperty() [1/2]
const PropertyData::PropertySpec * PropertyData::findProperty | ( | OffsetBase | offsetBase, |
const char * | PropName | ||
) | const |
References merge(), and propertyData.
Referenced by getDocumentation(), getGroup(), getName(), getPropertyByName(), and getType().
◆ findProperty() [2/2]
const PropertyData::PropertySpec * PropertyData::findProperty | ( | OffsetBase | offsetBase, |
const Property * | prop | ||
) | const |
References App::PropertyData::OffsetBase::getOffsetTo(), merge(), and propertyData.
◆ getDocumentation() [1/2]
const char * PropertyData::getDocumentation | ( | OffsetBase | offsetBase, |
const char * | name | ||
) | const |
References App::PropertyData::PropertySpec::Docu, and findProperty().
Referenced by App::PropertyContainer::getPropertyDocumentation().
◆ getDocumentation() [2/2]
const char * PropertyData::getDocumentation | ( | OffsetBase | offsetBase, |
const Property * | prop | ||
) | const |
References App::PropertyData::PropertySpec::Docu, and findProperty().
◆ getGroup() [1/2]
const char * PropertyData::getGroup | ( | OffsetBase | offsetBase, |
const char * | name | ||
) | const |
References findProperty(), and App::PropertyData::PropertySpec::Group.
Referenced by App::PropertyContainer::getPropertyGroup().
◆ getGroup() [2/2]
const char * PropertyData::getGroup | ( | OffsetBase | offsetBase, |
const Property * | prop | ||
) | const |
References findProperty(), and App::PropertyData::PropertySpec::Group.
◆ getName()
const char * PropertyData::getName | ( | OffsetBase | offsetBase, |
const Property * | prop | ||
) | const |
References findProperty(), and App::PropertyData::PropertySpec::Name.
Referenced by App::PropertyContainer::getPropertyName().
◆ getPropertyByName()
Property * PropertyData::getPropertyByName | ( | OffsetBase | offsetBase, |
const char * | name | ||
) | const |
References findProperty(), App::PropertyData::OffsetBase::getOffset(), and App::PropertyData::PropertySpec::Offset.
Referenced by App::PropertyContainer::getPropertyByName().
◆ getPropertyList()
void PropertyData::getPropertyList | ( | OffsetBase | offsetBase, |
std::vector< Property * > & | List | ||
) | const |
References App::PropertyData::OffsetBase::getOffset(), merge(), and propertyData.
Referenced by App::PropertyContainer::getPropertyList().
◆ getPropertyMap()
void PropertyData::getPropertyMap | ( | OffsetBase | offsetBase, |
std::map< std::string, Property * > & | Map | ||
) | const |
References App::PropertyData::OffsetBase::getOffset(), merge(), and propertyData.
Referenced by App::PropertyContainer::getPropertyMap().
◆ getType() [1/2]
short PropertyData::getType | ( | OffsetBase | offsetBase, |
const char * | name | ||
) | const |
References findProperty(), and App::PropertyData::PropertySpec::Type.
Referenced by PathScripts.PathToolEdit.ToolEditor::updateToolType(), and PathScripts.PathToolEdit.ToolEditor::updateUI().
◆ getType() [2/2]
short PropertyData::getType | ( | OffsetBase | offsetBase, |
const Property * | prop | ||
) | const |
References findProperty(), and App::PropertyData::PropertySpec::Type.
Referenced by PathScripts.PathToolEdit.ToolEditor::updateToolType(), and PathScripts.PathToolEdit.ToolEditor::updateUI().
◆ merge()
void PropertyData::merge | ( | PropertyData * | other = 0 | ) | const |
References merge(), parentMerged, parentPropertyData, and propertyData.
Referenced by findProperty(), getPropertyList(), getPropertyMap(), and merge().
◆ split()
void PropertyData::split | ( | PropertyData * | other | ) |
References parentMerged, parentPropertyData, and propertyData.
Member Data Documentation
◆ parentMerged
|
mutable |
Referenced by addProperty(), merge(), and split().
◆ parentPropertyData
const PropertyData* App::PropertyData::parentPropertyData |
◆ propertyData
|
mutable |
Referenced by addProperty(), findProperty(), getPropertyList(), getPropertyMap(), merge(), and split().
The documentation for this struct was generated from the following files:
- src/App/PropertyContainer.h
- src/App/PropertyContainer.cpp