diff options
Diffstat (limited to 'src/uml/qumlartifact.cpp')
-rw-r--r-- | src/uml/qumlartifact.cpp | 24 |
1 files changed, 8 insertions, 16 deletions
diff --git a/src/uml/qumlartifact.cpp b/src/uml/qumlartifact.cpp index 8fd989d7..e254be70 100644 --- a/src/uml/qumlartifact.cpp +++ b/src/uml/qumlartifact.cpp @@ -91,6 +91,14 @@ QUmlArtifact::QUmlArtifact(bool createQModelingObject) } /*! + Destroys the QUmlArtifact. + */ +QUmlArtifact::~QUmlArtifact() +{ + QModelingElement::deleteQModelingObject(); +} + +/*! Returns a deep-copied clone of the QUmlArtifact. */ QModelingElement *QUmlArtifact::clone() const @@ -98,8 +106,6 @@ QModelingElement *QUmlArtifact::clone() const QUmlArtifact *c = new QUmlArtifact; foreach (QUmlComment *element, ownedComments()) c->addOwnedComment(dynamic_cast<QUmlComment *>(element->clone())); - foreach (QUmlDependency *element, clientDependencies()) - c->addClientDependency(dynamic_cast<QUmlDependency *>(element->clone())); c->setName(name()); if (nameExpression()) c->setNameExpression(dynamic_cast<QUmlStringExpression *>(nameExpression()->clone())); @@ -109,11 +115,7 @@ QModelingElement *QUmlArtifact::clone() const c->addOwnedRule(dynamic_cast<QUmlConstraint *>(element->clone())); foreach (QUmlPackageImport *element, packageImports()) c->addPackageImport(dynamic_cast<QUmlPackageImport *>(element->clone())); - if (owningTemplateParameter()) - c->setOwningTemplateParameter(dynamic_cast<QUmlTemplateParameter *>(owningTemplateParameter()->clone())); c->setVisibility(visibility()); - if (package()) - c->setPackage(dynamic_cast<QUmlPackage *>(package()->clone())); c->setLeaf(isLeaf()); foreach (QUmlTemplateBinding *element, templateBindings()) c->addTemplateBinding(dynamic_cast<QUmlTemplateBinding *>(element->clone())); @@ -127,18 +129,8 @@ QModelingElement *QUmlArtifact::clone() const c->setOwnedTemplateSignature(dynamic_cast<QUmlRedefinableTemplateSignature *>(ownedTemplateSignature()->clone())); foreach (QUmlUseCase *element, ownedUseCases()) c->addOwnedUseCase(dynamic_cast<QUmlUseCase *>(element->clone())); - foreach (QUmlGeneralizationSet *element, powertypeExtents()) - c->addPowertypeExtent(dynamic_cast<QUmlGeneralizationSet *>(element->clone())); - foreach (QUmlClassifier *element, redefinedClassifiers()) - c->addRedefinedClassifier(dynamic_cast<QUmlClassifier *>(element->clone())); - if (representation()) - c->setRepresentation(dynamic_cast<QUmlCollaborationUse *>(representation()->clone())); foreach (QUmlSubstitution *element, substitutions()) c->addSubstitution(dynamic_cast<QUmlSubstitution *>(element->clone())); - if (templateParameter()) - c->setTemplateParameter(dynamic_cast<QUmlClassifierTemplateParameter *>(templateParameter()->clone())); - foreach (QUmlUseCase *element, useCases()) - c->addUseCase(dynamic_cast<QUmlUseCase *>(element->clone())); c->setFileName(fileName()); foreach (QUmlManifestation *element, manifestations()) c->addManifestation(dynamic_cast<QUmlManifestation *>(element->clone())); |