diff options
Diffstat (limited to 'src/uml/qumlusecase.cpp')
-rw-r--r-- | src/uml/qumlusecase.cpp | 28 |
1 files changed, 8 insertions, 20 deletions
diff --git a/src/uml/qumlusecase.cpp b/src/uml/qumlusecase.cpp index 9d87aae5..a174972e 100644 --- a/src/uml/qumlusecase.cpp +++ b/src/uml/qumlusecase.cpp @@ -94,6 +94,14 @@ QUmlUseCase::QUmlUseCase(bool createQModelingObject) } /*! + Destroys the QUmlUseCase. + */ +QUmlUseCase::~QUmlUseCase() +{ + QModelingElement::deleteQModelingObject(); +} + +/*! Returns a deep-copied clone of the QUmlUseCase. */ QModelingElement *QUmlUseCase::clone() const @@ -101,8 +109,6 @@ QModelingElement *QUmlUseCase::clone() const QUmlUseCase *c = new QUmlUseCase; 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())); @@ -112,11 +118,7 @@ QModelingElement *QUmlUseCase::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())); @@ -130,20 +132,8 @@ QModelingElement *QUmlUseCase::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())); - if (classifierBehavior()) - c->setClassifierBehavior(dynamic_cast<QUmlBehavior *>(classifierBehavior()->clone())); foreach (QUmlInterfaceRealization *element, interfaceRealizations()) c->addInterfaceRealization(dynamic_cast<QUmlInterfaceRealization *>(element->clone())); foreach (QUmlBehavior *element, ownedBehaviors()) @@ -154,8 +144,6 @@ QModelingElement *QUmlUseCase::clone() const c->addExtensionPoint(dynamic_cast<QUmlExtensionPoint *>(element->clone())); foreach (QUmlInclude *element, includes()) c->addInclude(dynamic_cast<QUmlInclude *>(element->clone())); - foreach (QUmlClassifier *element, subjects()) - c->addSubject(dynamic_cast<QUmlClassifier *>(element->clone())); return c; } |