diff --git a/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.cpp b/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.cpp index 13b20f681d..6851dd0ae5 100644 --- a/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.cpp +++ b/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.cpp @@ -146,6 +146,18 @@ PdmFieldHandle* PdmObjectHandle::parentField() const return m_parentField; } +// These two functions can be used when PdmCore is used standalone without PdmUi/PdmXml +/* +PdmUiObjectHandle* PdmObjectHandle::uiCapability() +{ +return NULL; +} + +PdmXmlObjectHandle* PdmObjectHandle::xmlCapability() +{ +return NULL; +} +*/ } // End namespace caf diff --git a/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.h b/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.h index 0cdb9e1c41..1536ba1c80 100644 --- a/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.h +++ b/Fwk/AppFwk/cafProjectDataModel/cafPdmCore/cafPdmObjectHandle.h @@ -13,7 +13,8 @@ namespace caf class PdmObjectCapability; class PdmFieldHandle; - +class PdmUiObjectHandle; +class PdmXmlObjectHandle; //================================================================================================== /// The base class of all objects @@ -55,6 +56,9 @@ public: return NULL; } + PdmUiObjectHandle* uiCapability(); // Implementation is in cafPdmUiObjectHandle.cpp + PdmXmlObjectHandle* xmlCapability(); // Implementation is in cafPdmXmlObjectHandle.cpp + protected: void addField(PdmFieldHandle* field, const QString& keyword); diff --git a/Fwk/AppFwk/cafProjectDataModel/cafPdmUiCore/cafPdmUiObjectHandle.cpp b/Fwk/AppFwk/cafProjectDataModel/cafPdmUiCore/cafPdmUiObjectHandle.cpp index 1692127ff8..3f067d8a9f 100644 --- a/Fwk/AppFwk/cafProjectDataModel/cafPdmUiCore/cafPdmUiObjectHandle.cpp +++ b/Fwk/AppFwk/cafProjectDataModel/cafPdmUiCore/cafPdmUiObjectHandle.cpp @@ -205,4 +205,15 @@ void PdmUiObjectHandle::updateUiIconFromToggleField() } } +//-------------------------------------------------------------------------------------------------- +/// Implementation of uiCapability() defined in cafPdmObjectHandle.h +//-------------------------------------------------------------------------------------------------- +PdmUiObjectHandle* PdmObjectHandle::uiCapability() +{ + PdmUiObjectHandle* uiField = capability(); + assert(uiField); + + return uiField; +} + } // End namespace caf diff --git a/Fwk/AppFwk/cafProjectDataModel/cafPdmXml/cafPdmXmlObjectHandle.cpp b/Fwk/AppFwk/cafProjectDataModel/cafPdmXml/cafPdmXmlObjectHandle.cpp index 4d9892723a..893f2fe807 100644 --- a/Fwk/AppFwk/cafProjectDataModel/cafPdmXml/cafPdmXmlObjectHandle.cpp +++ b/Fwk/AppFwk/cafProjectDataModel/cafPdmXml/cafPdmXmlObjectHandle.cpp @@ -229,6 +229,16 @@ bool PdmXmlObjectHandle::isValidXmlElementName(const QString& name) } +//-------------------------------------------------------------------------------------------------- +/// Implementation of xmlCapability() defined in cafPdmObjectHandle.h +//-------------------------------------------------------------------------------------------------- +PdmXmlObjectHandle* PdmObjectHandle::xmlCapability() + { + PdmXmlObjectHandle* xmlField = capability(); + assert(xmlField); + + return xmlField; +} } // end namespace caf