summaryrefslogtreecommitdiffstats
path: root/src/mof/qmofdatatype.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/mof/qmofdatatype.cpp')
-rw-r--r--src/mof/qmofdatatype.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/src/mof/qmofdatatype.cpp b/src/mof/qmofdatatype.cpp
index 58345801..f2751934 100644
--- a/src/mof/qmofdatatype.cpp
+++ b/src/mof/qmofdatatype.cpp
@@ -80,6 +80,14 @@ QMofDataType::QMofDataType(bool createQModelingObject)
}
/*!
+ Destroys the QMofDataType.
+ */
+QMofDataType::~QMofDataType()
+{
+ QModelingElement::deleteQModelingObject();
+}
+
+/*!
Returns a deep-copied clone of the QMofDataType.
*/
QModelingElement *QMofDataType::clone() const
@@ -89,8 +97,6 @@ QModelingElement *QMofDataType::clone() const
c->addOwnedComment(dynamic_cast<QMofComment *>(element->clone()));
c->setName(name());
c->setVisibility(visibility());
- if (package())
- c->setPackage(dynamic_cast<QMofPackage *>(package()->clone()));
c->setLeaf(isLeaf());
foreach (QMofElementImport *element, elementImports())
c->addElementImport(dynamic_cast<QMofElementImport *>(element->clone()));
@@ -102,8 +108,6 @@ QModelingElement *QMofDataType::clone() const
c->addGeneralization(dynamic_cast<QMofGeneralization *>(element->clone()));
c->setAbstract(isAbstract());
c->setFinalSpecialization(isFinalSpecialization());
- foreach (QMofClassifier *element, redefinedClassifiers())
- c->addRedefinedClassifier(dynamic_cast<QMofClassifier *>(element->clone()));
foreach (QMofProperty *element, ownedAttributes())
c->addOwnedAttribute(dynamic_cast<QMofProperty *>(element->clone()));
foreach (QMofOperation *element, ownedOperations())