#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