OpenLexocad  27.1
Core::Property Class Referenceabstract

#include <Property.h>

Inheritance diagram for Core::Property:
Base::Persistence Base::BaseClass Core::PropertyArrowheads Core::PropertyAxis1 Core::PropertyAxis2 Core::PropertyAxis22D Core::PropertyAxis2D Core::PropertyAxis2List Core::PropertyBoolean Core::PropertyBrepData Core::PropertyBrepDataSet Core::PropertyBrush Core::PropertyColor Core::PropertyColorList Core::PropertyCompoundPlaneAngle Core::PropertyDateTime Core::PropertyDateTimeList Core::PropertyDirection Core::PropertyDirection Core::PropertyDirection2d Core::PropertyDirection2d Core::PropertyDrawStyle Core::PropertyEmbeddedFile Core::PropertyFace Core::PropertyFcGeometry Core::PropertyFile Core::PropertyFont Core::PropertyGeometryList Core::PropertyGTransform Core::PropertyGUID Core::PropertyIndexList Core::PropertyInteger Core::PropertyLinkBaseBase Core::PropertyListPointList Core::PropertyLogical Core::PropertyLong Core::PropertyMD5 Core::PropertyMesh Core::PropertyMultiLineText Core::PropertyPen Core::PropertyPercent Core::PropertyPoint Core::PropertyPoint2d Core::PropertyPoint2dList Core::PropertyPointList Core::PropertyProxy Core::PropertyReal Core::PropertyRealList Core::PropertyRelaxation Core::PropertyRelaxationSet Core::PropertySearchSettings Core::PropertySearchSettingsVector Core::PropertySolverElementLinkVector Core::PropertySolverSolverLinkList Core::PropertyString Core::PropertyTextList Core::PropertyTexture2 Core::PropertyTexture2List Core::PropertyTexture2Transform Core::PropertyTextureCoordinateFunction Core::PropertyTextureCoordinateMapping Core::PropertyTransform Core::PropertyUInt32 Core::PropertyUInt64 Core::PropertyUInt8 Core::PropertyUInt8List Core::PropertyUser Core::PropertyVector Core::PropertyVectorList

Public Types

enum  Status { New = 1 << 1, Valid = 1 << 2, Updated = 1 << 3 }
 
enum  ExStatus {
  Touched = 0, Immutable = 1, ReadOnly = 2, Hidden = 3,
  Transient = 4, MaterialEdit = 5, NoMaterialListEdit = 6, Output = 7,
  LockDynamic = 8, NoModify = 9, PartialTrigger = 10, NoRecompute = 11,
  Single = 12, Ordered = 13, EvalOnRestore = 14, PropStaticBegin = 21,
  PropDynamic = 21, PropNoPersist = 22, PropNoRecompute = 23, PropReadOnly = 24,
  PropTransient = 25, PropHidden = 26, PropOutput = 27, PropStaticEnd = 28,
  User1 = 28, User2 = 29, User3 = 30, User4 = 31
}
 

Public Member Functions

 Property (void)
 
virtual ~Property (void)
 
void setName (const std::string &name)
 
std::string getName () const
 
Core::PropertyContainergetContainer () const
 
void setContainer (Core::PropertyContainer *container)
 
void addToContainer (const std::string &name)
 
virtual Core::Variant getVariant (void) const =0
 
virtual bool setValueFromVariant (const Core::Variant &value)=0
 
virtual Propertycopy (void) const =0
 Returns a new copy of the property (mainly for Undo/Redo and transactions). The copy has no container. More...
 
virtual void paste (const Property &from)=0
 Paste the value from the property (mainly for Undo/Redo and transactions) More...
 
virtual bool setKeyValue (const std::string &key, const Core::Variant &value)
 Sets a sub key in this property. More...
 
virtual std::map< std::string, Core::VariantgetKeyValueMap () const
 Returns all keys and their values of this property. More...
 
Core::Variant getVariantFromKey (const std::string &key) const
 Gets the variant for a key. More...
 
std::vector< std::string > getKeys () const
 Returns all keys of this property. More...
 
virtual void copyValue (Core::Property *p)=0
 
virtual void deepCopy (Core::Property *p, Core::CoreDocument *dest_doc, DocObjectMap &copyMap)
 
bool enableNotify (bool on)
 
bool isNotifyEnabled (void) const
 
void touch ()
 
bool setWillChangeStatusOnChange (bool on)
 
long getTransactionNumber () const
 
bool isUpdated () const
 Checks if the property was updated. More...
 
bool isTheOnlyUpdatedPropertyInContainer () const
 Checks if this is the only updated property in the container. More...
 
virtual const Core::PropertyKind getPropertyKind (void) const
 
virtual void setPropertyKind (Core::PropertyKind p)
 
bool hasValue () const
 Returns 'true' if the property has a value. This is mainly for optional properties. More...
 
virtual bool isOptional () const
 Checks if this is an optional property. More...
 
void setHasValue (bool yesno)
 is called when a property holds a value. For optional properties. More...
 
virtual bool isEqual (const Property *) const =0
 compare properties More...
 
virtual bool isLink () const
 Check if Property is of type PropertyLink, LinkSet etc. For better performance. More...
 
virtual std::shared_ptr< Core::DbgInfogetDbgInfo () const
 Returns the debug information for this property. More...
 
void setStatus (const Property::Status &in)
 
Property::Status getStatus () const
 
bool isDefaultValue () const
 
void setDefaultValue (bool on)
 
void accept (Core::CoreVisitor *visitor)
 
virtual bool createSQL (Base::AbstractWriter &writer, Base::PersistenceVersion &save_version, bool data) override
 This method is used to save properties or very small amounts of data to an XML document. More...
 
short getType (void) const
 Get the type of the property in the container. More...
 
StatusBits
unsigned long getExStatus () const
 
bool testExStatus (ExStatus pos) const
 
void setExStatus (ExStatus pos, bool on)
 
void setExStatusValue (unsigned long status)
 
- Public Member Functions inherited from Base::Persistence
virtual void save (Base::AbstractWriter &, Base::PersistenceVersion &)=0
 This method is used to save properties or very small amounts of data to an XML document. More...
 
virtual void restore (Base::AbstractXMLReader &, Base::PersistenceVersion &)=0
 This method is used to restore properties from an XML document. More...
 
virtual void saveDocFile (Base::AbstractWriter &, const Base::String &, const Base::String &)
 This method is used to save large amounts of data to a binary file. More...
 
virtual void restoreDocFile (Base::Reader &, const Base::String &)
 This method is used to restore large amounts of data from a binary file. More...
 
virtual bool mustbeSaved () const
 Return 'true' if this object must always be saved in the file. More...
 
- Public Member Functions inherited from Base::BaseClass
virtual Type getTypeId (void) const
 
template<typename T >
bool isDerivedFrom () const
 
bool isDerivedFrom (const Type type) const
 
 BaseClass ()
 Construction. More...
 
virtual ~BaseClass ()
 Destruction. More...
 

Static Public Member Functions

static void registerProperties (Base::Type t, const Core::PropertyValueMap &pvm)
 Registers the properties with default values for type 't'. More...
 
static bool getRegisteredProperties (Base::Type t, Core::PropertyValueMap &pvm)
 Returns the properties with default values of type t;. More...
 
static const char * getXMLPropertyAttributeName ()
 
static const char * getXMLPropertyAttributeValue ()
 
static void setXMLPropertyAttributeName (const char *)
 
static void setXMLPropertyAttributeValue (const char *)
 
- Static Public Member Functions inherited from Base::Persistence
static std::string encodeAttribute (const std::string &)
 
- Static Public Member Functions inherited from Base::BaseClass
static Type getClassTypeId (void)
 
static void init (void)
 
static void * create (void)
 
static void setIfcNameAndID (const std::string &n, int id)
 

Protected Member Functions

void hasSetValue (void)
 Should be called by all setValue() methods after the value was changed. More...
 
bool aboutToSetValue (const Core::Variant &newValue=Core::Variant())
 

Protected Attributes

std::bitset< 32 > StatusBits
 

Friends

class DynamicProperty
 

Additional Inherited Members

- Public Attributes inherited from Base::BaseClass
long ____deadVal = 0xBADEAFFE
 
- Static Protected Member Functions inherited from Base::BaseClass
static void initSubclass (Base::Type &toInit, const char *ClassName, const char *ParentName, Type::instantiationMethod method=0)
 
static void initIfcTypes (const std::string &s, Base::Type classTypeId, int id)
 

Member Enumeration Documentation

◆ ExStatus

Enumerator
Touched 
Immutable 
ReadOnly 
Hidden 
Transient 
MaterialEdit 
NoMaterialListEdit 
Output 
LockDynamic 
NoModify 
PartialTrigger 
NoRecompute 
Single 
Ordered 
EvalOnRestore 
PropStaticBegin 
PropDynamic 
PropNoPersist 
PropNoRecompute 
PropReadOnly 
PropTransient 
PropHidden 
PropOutput 
PropStaticEnd 
User1 
User2 
User3 
User4 

◆ Status

Enumerator
New 
Valid 
Updated 

Constructor & Destructor Documentation

◆ Property()

Core::Property::Property ( void  )

◆ ~Property()

virtual Core::Property::~Property ( void  )
virtual

Member Function Documentation

◆ aboutToSetValue()

bool Core::Property::aboutToSetValue ( const Core::Variant newValue = Core::Variant())
protected

Should be called by all setValue() methods before the value is changed, returns true if the change is validated by container (false otherwise), so far only properties (and only their setValue() methods, copyValue() doesn't use it) in the following files use the container validation functionality: PropertyReal, PropertyInteger, PropertyLogical, PropertyDrawStyle

◆ accept()

void Core::Property::accept ( Core::CoreVisitor visitor)

◆ addToContainer()

void Core::Property::addToContainer ( const std::string &  name)

◆ copy()

virtual Property* Core::Property::copy ( void  ) const
pure virtual

Returns a new copy of the property (mainly for Undo/Redo and transactions). The copy has no container.

Implemented in Core::PropertyUInt8List, Core::PropertyIndexList, Core::PropertyPoint2dList, Core::PropertyTexture2List, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyTextureCoordinateFunction, Core::PropertyListPointList, Core::PropertyUInt32, Core::PropertyAxis2List, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::PropertyAxis22D, Core::PropertyPointList, Core::PropertyColorList, Core::PropertyRealList, Core::PropertyTexture2Transform, Core::PropertyArrowheads, Core::PropertyGTransform, Core::PropertyAxis2D, Core::PropertyBrepDataSet, Core::PropertyDirection2d, Core::PropertyDateTimeList, Core::PropertyVectorList, Core::PropertyRelaxationSet, Core::PropertyGUID, Core::PropertySearchSettingsVector, Core::PropertyMD5, Core::PropertyLong, Core::PropertyTextList, Core::PropertyLinkSetBase, Core::PropertyBackLinkBase, Core::PropertyLinkBase, Core::PropertyLinkListBase, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyAxis2, Core::PropertyString, Core::PropertyGeometryList, Core::PropertyProxy, Core::PropertyAxis1, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyPoint, Core::PropertyColor, Core::PropertyDirection, Core::PropertyLogical, Core::PropertyTransform, Core::PropertyDrawStyle, Core::PropertyMesh, Core::PropertySearchSettings, Core::PropertyBrepData, Core::PropertyCompoundPlaneAngle, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyBoolean, Core::PropertyReal, Core::PropertyDateTime, Core::PropertyInteger, Core::PropertyVector, Core::PropertyFile, Core::PropertyPen, and Core::PropertyPercent.

◆ copyValue()

virtual void Core::Property::copyValue ( Core::Property p)
pure virtual

Implemented in Core::PropertyUInt8List, Core::PropertyEnum, Core::PropertyIndexList, Core::PropertyPoint2dList, Core::PropertyTexture2List, Core::PropertyTypedLinkList< T >, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyTextureCoordinateFunction, Core::PropertyLinkList, Core::PropertyUInt32, Core::PropertyAxis2List, Core::PropertyListPointList, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::PropertyAxis22D, Core::PropertyRealList, Core::PropertyArrowheads, Core::PropertyDirection2d, Core::PropertyAxis2D, Core::PropertyTexture2Transform, Core::PropertyColorList, Core::PropertyPointList, Core::PropertyGTransform, Core::PropertyBrepDataSet, Core::PropertyDirection2d, Core::PropertySearchSettingsVector, Core::PropertyRelaxationSet, Core::PropertyDateTimeList, Core::PropertyMD5, Core::PropertyVectorList, Core::PropertyLong, Core::PropertyGUID, Core::PropertyGeometryList, Core::PropertyBackLinkBase, Core::PropertyLinkBase, Core::PropertyTextList, Core::PropertyAxis2, Core::PropertyDirection, Core::PropertyString, Core::PropertyLinkSetBase, Core::PropertyProxy, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyAxis1, Core::PropertyColor, Core::PropertyLinkListBase, Core::PropertyLogical, Core::PropertyPoint, Core::PropertySearchSettings, Core::PropertyDirection, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyMesh, Core::PropertyBrepData, Core::PropertyCompoundPlaneAngle, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyBoolean, Core::PropertyDrawStyle, Core::PropertyFace, Core::PropertyReal, Core::PropertyTransform, Core::PropertyVector, Core::PropertyDateTime, Core::PropertyInteger, Core::PropertyPen, Core::PropertyFile, and Core::PropertyPercent.

◆ createSQL()

virtual bool Core::Property::createSQL ( Base::AbstractWriter ,
Base::PersistenceVersion ,
bool   
)
overridevirtual

This method is used to save properties or very small amounts of data to an XML document.

Reimplemented from Base::Persistence.

Reimplemented in Core::PropertyGUID, Core::PropertyString, Core::PropertyLinkBase, Core::PropertyInteger, Core::PropertyBoolean, Core::PropertyReal, and Core::PropertyDateTime.

◆ deepCopy()

virtual void Core::Property::deepCopy ( Core::Property p,
Core::CoreDocument dest_doc,
DocObjectMap copyMap 
)
virtual

◆ enableNotify()

bool Core::Property::enableNotify ( bool  on)
inline

Controls whether to call container's aboutToSetValue() and hasSetValue(), if the parameter is false the integrity of the container is lost, when the parameter is true and the integrity isn't intact ensureIntegrity is called to resolve this

◆ getContainer()

Core::PropertyContainer* Core::Property::getContainer ( ) const

◆ getDbgInfo()

◆ getExStatus()

unsigned long Core::Property::getExStatus ( ) const
inline

◆ getKeys()

std::vector<std::string> Core::Property::getKeys ( ) const

Returns all keys of this property.

◆ getKeyValueMap()

virtual std::map<std::string, Core::Variant> Core::Property::getKeyValueMap ( ) const
virtual

◆ getName()

std::string Core::Property::getName ( ) const
inline

◆ getPropertyKind()

◆ getRegisteredProperties()

static bool Core::Property::getRegisteredProperties ( Base::Type  t,
Core::PropertyValueMap pvm 
)
static

Returns the properties with default values of type t;.

◆ getStatus()

Property::Status Core::Property::getStatus ( ) const
inline

◆ getTransactionNumber()

long Core::Property::getTransactionNumber ( ) const
inline

◆ getType()

short Core::Property::getType ( void  ) const

Get the type of the property in the container.

◆ getVariant()

virtual Core::Variant Core::Property::getVariant ( void  ) const
pure virtual

Implemented in Core::PropertyUInt8List, Core::PropertyIndexList, Core::PropertyPoint2dList, Core::PropertyTexture2List, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyTextureCoordinateFunction, Core::PropertyLinkList, Core::PropertyUInt32, Core::PropertyListPointList, Core::PropertyAxis2List, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::PropertyAxis22D, Core::PropertyPointList, Core::PropertyColorList, Core::PropertyRealList, Core::PropertyBrepDataSet, Core::PropertyArrowheads, Core::PropertyDirection2d, Core::PropertyGTransform, Core::PropertyAxis2D, Core::PropertyTexture2Transform, Core::PropertyDateTimeList, Core::PropertyVectorList, Core::PropertyDirection2d, Core::PropertyRelaxationSet, Core::PropertySearchSettingsVector, Core::PropertyMD5, Core::PropertyLong, Core::PropertyGUID, Core::PropertyTextList, Core::PropertyBackLinkBase, Core::PropertyGeometryList, Core::PropertyAxis2, Core::PropertyDirection, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyString, Core::PropertyProxy, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyAxis1, Core::PropertyColor, Core::PropertyLinkBase, Core::PropertyLogical, Core::PropertyMesh, Core::PropertyPoint, Core::PropertySearchSettings, Core::PropertyBrepData, Core::PropertyDirection, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyLinkSetBase, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyTransform, Core::PropertyCompoundPlaneAngle, Core::PropertyBoolean, Core::PropertyDrawStyle, Core::PropertyFace, Core::PropertyLinkListBase, Core::PropertyReal, Core::PropertyVector, Core::PropertyDateTime, Core::PropertyFile, Core::PropertyInteger, Core::PropertyPen, and Core::PropertyPercent.

◆ getVariantFromKey()

Core::Variant Core::Property::getVariantFromKey ( const std::string &  key) const

Gets the variant for a key.

◆ getXMLPropertyAttributeName()

static const char* Core::Property::getXMLPropertyAttributeName ( )
static

◆ getXMLPropertyAttributeValue()

static const char* Core::Property::getXMLPropertyAttributeValue ( )
static

◆ hasSetValue()

void Core::Property::hasSetValue ( void  )
protected

Should be called by all setValue() methods after the value was changed.

◆ hasValue()

bool Core::Property::hasValue ( ) const

Returns 'true' if the property has a value. This is mainly for optional properties.

◆ isDefaultValue()

bool Core::Property::isDefaultValue ( ) const
inline

◆ isEqual()

virtual bool Core::Property::isEqual ( const Property ) const
pure virtual

compare properties

Implemented in Core::PropertyUInt8List, Core::PropertyEnum, Core::PropertyIndexList, Core::PropertyPoint2dList, Core::PropertyTexture2List, Core::PropertyTypedLinkList< T >, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyTextureCoordinateFunction, Core::PropertyLinkList, Core::PropertyListPointList, Core::PropertyUInt32, Core::PropertyAxis2List, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::PropertyAxis22D, Core::PropertyPointList, Core::PropertyColorList, Core::PropertyRealList, Core::PropertyArrowheads, Core::PropertyTexture2Transform, Core::PropertyGTransform, Core::PropertyAxis2D, Core::PropertyBrepDataSet, Core::PropertyDirection2d, Core::PropertyDateTimeList, Core::PropertyVectorList, Core::PropertyRelaxationSet, Core::PropertyGUID, Core::PropertySearchSettingsVector, Core::PropertyMD5, Core::PropertyLong, Core::PropertyTextList, Core::PropertyLinkSetBase, Core::PropertyAxis2, Core::PropertyBackLinkBase, Core::PropertyLinkBase, Core::PropertyLinkListBase, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyString, Core::PropertyGeometryList, Core::PropertyProxy, Core::PropertyAxis1, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyPoint, Core::PropertyColor, Core::PropertyDirection, Core::PropertyLogical, Core::PropertyMesh, Core::PropertySearchSettings, Core::PropertyTransform, Core::PropertyBrepData, Core::PropertyCompoundPlaneAngle, Core::PropertyDrawStyle, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyBoolean, Core::PropertyReal, Core::PropertyDateTime, Core::PropertyFace, Core::PropertyVector, Core::PropertyFile, Core::PropertyInteger, Core::PropertyPen, and Core::PropertyPercent.

◆ isLink()

virtual bool Core::Property::isLink ( ) const
inlinevirtual

◆ isNotifyEnabled()

bool Core::Property::isNotifyEnabled ( void  ) const
inline

◆ isOptional()

virtual bool Core::Property::isOptional ( ) const
inlinevirtual

Checks if this is an optional property.

Reimplemented in Core::PropertyLengthOpt.

◆ isTheOnlyUpdatedPropertyInContainer()

bool Core::Property::isTheOnlyUpdatedPropertyInContainer ( ) const

Checks if this is the only updated property in the container.

◆ isUpdated()

bool Core::Property::isUpdated ( ) const

Checks if the property was updated.

◆ paste()

virtual void Core::Property::paste ( const Property from)
pure virtual

Paste the value from the property (mainly for Undo/Redo and transactions)

Implemented in Core::PropertyUInt8List, Core::PropertyIndexList, Core::PropertyPoint2dList, Core::PropertyTexture2List, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyTextureCoordinateFunction, Core::PropertyListPointList, Core::PropertyUInt32, Core::PropertyAxis2List, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::PropertyAxis22D, Core::PropertyPointList, Core::PropertyColorList, Core::PropertyRealList, Core::PropertyTexture2Transform, Core::PropertyArrowheads, Core::PropertyGTransform, Core::PropertyAxis2D, Core::PropertyBrepDataSet, Core::PropertyDirection2d, Core::PropertyDateTimeList, Core::PropertyVectorList, Core::PropertyRelaxationSet, Core::PropertyGUID, Core::PropertySearchSettingsVector, Core::PropertyMD5, Core::PropertyLong, Core::PropertyTextList, Core::PropertyLinkSetBase, Core::PropertyBackLinkBase, Core::PropertyLinkBase, Core::PropertyLinkListBase, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyAxis2, Core::PropertyString, Core::PropertyGeometryList, Core::PropertyProxy, Core::PropertyAxis1, Core::PropertyTexture2, Core::PropertyUser, Core::PropertyPoint, Core::PropertyColor, Core::PropertyDirection, Core::PropertyLogical, Core::PropertyTransform, Core::PropertyDrawStyle, Core::PropertyMesh, Core::PropertySearchSettings, Core::PropertyBrepData, Core::PropertyCompoundPlaneAngle, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyBrush, Core::PropertyBoolean, Core::PropertyReal, Core::PropertyDateTime, Core::PropertyInteger, Core::PropertyVector, Core::PropertyFile, Core::PropertyPen, and Core::PropertyPercent.

◆ registerProperties()

static void Core::Property::registerProperties ( Base::Type  t,
const Core::PropertyValueMap pvm 
)
static

Registers the properties with default values for type 't'.

◆ setContainer()

void Core::Property::setContainer ( Core::PropertyContainer container)

◆ setDefaultValue()

void Core::Property::setDefaultValue ( bool  on)
inline

◆ setExStatus()

void Core::Property::setExStatus ( ExStatus  pos,
bool  on 
)

◆ setExStatusValue()

void Core::Property::setExStatusValue ( unsigned long  status)

◆ setHasValue()

void Core::Property::setHasValue ( bool  yesno)

is called when a property holds a value. For optional properties.

◆ setKeyValue()

virtual bool Core::Property::setKeyValue ( const std::string &  key,
const Core::Variant value 
)
virtual

◆ setName()

void Core::Property::setName ( const std::string &  name)
inline

◆ setPropertyKind()

virtual void Core::Property::setPropertyKind ( Core::PropertyKind  p)
virtual

◆ setStatus()

void Core::Property::setStatus ( const Property::Status in)
inline

◆ setValueFromVariant()

virtual bool Core::Property::setValueFromVariant ( const Core::Variant value)
pure virtual

Implemented in Core::PropertyUInt8List, Core::PropertyIndexList, Core::PropertyPoint2dList, Core::PropertyTexture2List, Core::PropertyTypedLinkList< T >, Core::PropertyUInt8, Core::PropertyPoint2d, Core::PropertyTextureCoordinateFunction, Core::PropertyLinkList, Core::PropertyUInt32, Core::PropertyAxis2List, Core::PropertyListPointList, Core::PropertyBackLinkSetBase, Core::PropertyTextureCoordinateMapping, Core::PropertyUInt64, Core::PropertyMultiLineText, Core::PropertyAxis22D, Core::PropertyRealList, Core::PropertyArrowheads, Core::PropertyDirection2d, Core::PropertyAxis2D, Core::PropertyTexture2Transform, Core::PropertyColorList, Core::PropertyPointList, Core::PropertyGTransform, Core::PropertyBrepDataSet, Core::PropertyDirection2d, Core::PropertySearchSettingsVector, Core::PropertyRelaxationSet, Core::PropertyDateTimeList, Core::PropertyMD5, Core::PropertyVectorList, Core::PropertyLong, Core::PropertyGUID, Core::PropertyGeometryList, Core::PropertyBackLinkBase, Core::PropertyTextList, Core::PropertyDirection, Core::PropertyString, Core::PropertyProxy, Core::PropertyTexture2, Core::PropertyLogical, Core::PropertyUser, Core::PropertyLinkBase, Core::PropertySearchSettings, Core::PropertyDirection, Core::PropertyEmbeddedFile, Core::PropertyFont, Core::PropertyRelaxation, Core::PropertyAxis2, Core::PropertyBrush, Core::PropertyMesh, Core::PropertyPoint, Core::PropertyAxis1, Core::PropertyBrepData, Core::PropertyCompoundPlaneAngle, Core::PropertyLinkListBase, Core::PropertySolverElementLinkVector, Core::PropertySolverSolverLinkList, Core::PropertyBoolean, Core::PropertyLinkSetBase, Core::PropertyReal, Core::PropertyTransform, Core::PropertyVector, Core::PropertyColor, Core::PropertyDateTime, Core::PropertyDrawStyle, Core::PropertyFace, Core::PropertyInteger, Core::PropertyPen, Core::PropertyFile, and Core::PropertyPercent.

◆ setWillChangeStatusOnChange()

bool Core::Property::setWillChangeStatusOnChange ( bool  on)
inline

◆ setXMLPropertyAttributeName()

static void Core::Property::setXMLPropertyAttributeName ( const char *  )
static

◆ setXMLPropertyAttributeValue()

static void Core::Property::setXMLPropertyAttributeValue ( const char *  )
static

◆ testExStatus()

bool Core::Property::testExStatus ( ExStatus  pos) const
inline

◆ touch()

void Core::Property::touch ( )
inline

Simulates the value being changed - calls aboutToSetValue() and hasSetValue(), aboutToSetValue() is called without the optional argument Core::Variant &newValue,

Friends And Related Function Documentation

◆ DynamicProperty

friend class DynamicProperty
friend

Member Data Documentation

◆ StatusBits

std::bitset<32> Core::Property::StatusBits
protected

Status bits of the property The first 8 bits are used for the base system the rest can be used in descendant classes to mark special statuses on the objects. The bits and their meaning are listed below: 0 - object is marked as 'touched' 1 - object is marked as 'immutable' 2 - object is marked as 'read-only' (for property editor) 3 - object is marked as 'hidden' (for property editor)


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