diff options
Diffstat (limited to 'src/uml/qumlstatemachine.cpp')
-rw-r--r-- | src/uml/qumlstatemachine.cpp | 32 |
1 files changed, 8 insertions, 24 deletions
diff --git a/src/uml/qumlstatemachine.cpp b/src/uml/qumlstatemachine.cpp index 2931059c..ffb641ab 100644 --- a/src/uml/qumlstatemachine.cpp +++ b/src/uml/qumlstatemachine.cpp @@ -105,6 +105,14 @@ QUmlStateMachine::QUmlStateMachine(bool createQModelingObject) } /*! + Destroys the QUmlStateMachine. + */ +QUmlStateMachine::~QUmlStateMachine() +{ + QModelingElement::deleteQModelingObject(); +} + +/*! Returns a deep-copied clone of the QUmlStateMachine. */ QModelingElement *QUmlStateMachine::clone() const @@ -112,8 +120,6 @@ QModelingElement *QUmlStateMachine::clone() const QUmlStateMachine *c = new QUmlStateMachine; 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())); @@ -123,11 +129,7 @@ QModelingElement *QUmlStateMachine::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())); @@ -140,22 +142,10 @@ QModelingElement *QUmlStateMachine::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())); foreach (QUmlConnector *element, ownedConnectors()) c->addOwnedConnector(dynamic_cast<QUmlConnector *>(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()) @@ -179,16 +169,10 @@ QModelingElement *QUmlStateMachine::clone() const c->addPostcondition(dynamic_cast<QUmlConstraint *>(element->clone())); foreach (QUmlConstraint *element, preconditions()) c->addPrecondition(dynamic_cast<QUmlConstraint *>(element->clone())); - if (specification()) - c->setSpecification(dynamic_cast<QUmlBehavioralFeature *>(specification()->clone())); foreach (QUmlPseudostate *element, connectionPoints()) c->addConnectionPoint(dynamic_cast<QUmlPseudostate *>(element->clone())); - foreach (QUmlStateMachine *element, extendedStateMachines()) - c->addExtendedStateMachine(dynamic_cast<QUmlStateMachine *>(element->clone())); foreach (QUmlRegion *element, regions()) c->addRegion(dynamic_cast<QUmlRegion *>(element->clone())); - foreach (QUmlState *element, submachineStates()) - c->addSubmachineState(dynamic_cast<QUmlState *>(element->clone())); return c; } |