Moved Xml related functions from PdmDocument to XmlObjectHandle

Moved and renamed initAfterReadRecursively, setupBeforeSaveRecursively
and resolveReferencesRecursively to XmlObjectHandle. Updated unit tests.
Removed resolveReferences() from PdmPtrField.
This commit is contained in:
Magne Sjaastad
2015-08-27 11:43:27 +02:00
parent 4f5f50fb4f
commit 492bf96598
12 changed files with 165 additions and 174 deletions

View File

@@ -45,6 +45,10 @@ public:
/// Check if a string is a valid Xml element name
static bool isValidXmlElementName(const QString& name);
void initAfterReadRecursively() { initAfterReadRecursively(this->m_owner); };
void setupBeforeSaveRecursively() { setupBeforeSaveRecursively(this->m_owner); };
void resolveReferencesRecursively() { resolveReferencesRecursively(this->m_owner); };
protected: // Virtual
/// Method gets called from PdmDocument after all objects are read.
/// Re-implement to set up internal pointers etc. in your data structure
@@ -57,10 +61,13 @@ protected: // Virtual
// if user uses them on wrong type of objects
bool isInheritedFromPdmXmlSerializable() { return true; }
private:
void initAfterReadRecursively(PdmObjectHandle* object);
void setupBeforeSaveRecursively(PdmObjectHandle * object);
void resolveReferencesRecursively(PdmObjectHandle* object);
private:
friend class PdmObjectHandle ; // Only temporary for void PdmObject::addFieldNoDefault( ) accessing findField
friend class PdmDocument; // To access setupBeforeSave()
friend class PdmObjectGroup; // To access initAfterRead
PdmObjectHandle* m_owner;
};