diff options
Diffstat (limited to 'src/uml/qumlexecutionspecification.cpp')
-rw-r--r-- | src/uml/qumlexecutionspecification.cpp | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/src/uml/qumlexecutionspecification.cpp b/src/uml/qumlexecutionspecification.cpp index 8739fdae..6c84e7d3 100644 --- a/src/uml/qumlexecutionspecification.cpp +++ b/src/uml/qumlexecutionspecification.cpp @@ -75,6 +75,14 @@ QUmlExecutionSpecification::QUmlExecutionSpecification() : } /*! + Destroys the QUmlExecutionSpecification. + */ +QUmlExecutionSpecification::~QUmlExecutionSpecification() +{ + QModelingElement::deleteQModelingObject(); +} + +/*! Returns a deep-copied clone of the QUmlExecutionSpecification. */ QModelingElement *QUmlExecutionSpecification::clone() const @@ -82,24 +90,12 @@ QModelingElement *QUmlExecutionSpecification::clone() const QUmlExecutionSpecification *c = new QUmlExecutionSpecification; 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())); c->setVisibility(visibility()); - foreach (QUmlLifeline *element, covered()) - c->addCovered(dynamic_cast<QUmlLifeline *>(element->clone())); - if (enclosingInteraction()) - c->setEnclosingInteraction(dynamic_cast<QUmlInteraction *>(enclosingInteraction()->clone())); - if (enclosingOperand()) - c->setEnclosingOperand(dynamic_cast<QUmlInteractionOperand *>(enclosingOperand()->clone())); foreach (QUmlGeneralOrdering *element, generalOrderings()) c->addGeneralOrdering(dynamic_cast<QUmlGeneralOrdering *>(element->clone())); - if (finish()) - c->setFinish(dynamic_cast<QUmlOccurrenceSpecification *>(finish()->clone())); - if (start()) - c->setStart(dynamic_cast<QUmlOccurrenceSpecification *>(start()->clone())); return c; } |