summaryrefslogtreecommitdiffstats
path: root/src/uml/qumlusecase.h
diff options
context:
space:
mode:
Diffstat (limited to 'src/uml/qumlusecase.h')
-rw-r--r--src/uml/qumlusecase.h316
1 files changed, 28 insertions, 288 deletions
diff --git a/src/uml/qumlusecase.h b/src/uml/qumlusecase.h
index 54d8ac1e..593835a1 100644
--- a/src/uml/qumlusecase.h
+++ b/src/uml/qumlusecase.h
@@ -43,10 +43,8 @@
#include <QtUml/QtUmlGlobal>
-#include <QtCore/QObject>
-#include "private/umlusecase_p.h"
+#include <QtUml/QUmlBehavioredClassifier>
-#include <QtUml/QtUmlNamespace>
QT_BEGIN_HEADER
@@ -54,302 +52,44 @@ QT_BEGIN_NAMESPACE
QT_MODULE(QtUml)
-class QUmlBehavior;
class QUmlClassifier;
-class QUmlClassifierTemplateParameter;
-class QUmlCollaborationUse;
-class QUmlComment;
-class QUmlConstraint;
-class QUmlDependency;
-class QUmlElement;
-class QUmlElementImport;
class QUmlExtend;
class QUmlExtensionPoint;
-class QUmlFeature;
-class QUmlGeneralization;
-class QUmlGeneralizationSet;
class QUmlInclude;
-class QUmlInterfaceRealization;
-class QUmlNamedElement;
-class QUmlNamespace;
-class QUmlPackage;
-class QUmlPackageableElement;
-class QUmlPackageImport;
-class QUmlParameterableElement;
-class QUmlProperty;
-class QUmlRedefinableElement;
-class QUmlRedefinableTemplateSignature;
-class QUmlStringExpression;
-class QUmlSubstitution;
-class QUmlTemplateBinding;
-class QUmlTemplateParameter;
-class QUmlTemplateSignature;
-class QUmlType;
-class Q_UML_EXPORT QUmlUseCase : public QObject, public UmlUseCase
+class Q_UML_EXPORT QUmlUseCase : public QUmlBehavioredClassifier
{
- Q_OBJECT
-
- // Properties [Element]
- Q_PROPERTY(QSet<QUmlComment *> ownedComment READ ownedComment)
- Q_PROPERTY(QSet<QUmlElement *> ownedElement READ ownedElement)
- Q_PROPERTY(QUmlElement * owner READ owner)
-
- // Properties [NamedElement]
- Q_PROPERTY(QSet<QUmlDependency *> clientDependency READ clientDependency)
- Q_PROPERTY(QString name READ name)
- Q_PROPERTY(QUmlStringExpression * nameExpression READ nameExpression)
- Q_PROPERTY(QUmlNamespace * namespace_ READ namespace_)
- Q_PROPERTY(QString qualifiedName READ qualifiedName)
-
- // Properties [Namespace]
- Q_PROPERTY(QSet<QUmlElementImport *> elementImport READ elementImport)
- Q_PROPERTY(QSet<QUmlPackageableElement *> importedMember READ importedMember)
- Q_PROPERTY(QSet<QUmlNamedElement *> member READ member)
- Q_PROPERTY(QSet<QUmlNamedElement *> ownedMember READ ownedMember)
- Q_PROPERTY(QSet<QUmlConstraint *> ownedRule READ ownedRule)
- Q_PROPERTY(QSet<QUmlPackageImport *> packageImport READ packageImport)
-
- // Properties [ParameterableElement]
- Q_PROPERTY(QUmlTemplateParameter * owningTemplateParameter READ owningTemplateParameter)
-
- // Properties [PackageableElement]
- Q_PROPERTY(QtUml::VisibilityKind visibility READ visibility)
-
- // Properties [Type]
- Q_PROPERTY(QUmlPackage * package READ package)
-
- // Properties [RedefinableElement]
- Q_PROPERTY(bool isLeaf READ isLeaf)
- Q_PROPERTY(QSet<QUmlRedefinableElement *> redefinedElement READ redefinedElement)
- Q_PROPERTY(QSet<QUmlClassifier *> redefinitionContext READ redefinitionContext)
-
- // Properties [TemplateableElement]
- Q_PROPERTY(QSet<QUmlTemplateBinding *> templateBinding READ templateBinding)
-
- // Properties [Classifier]
- Q_PROPERTY(QSet<QUmlProperty *> attribute READ attribute)
- Q_PROPERTY(QSet<QUmlCollaborationUse *> collaborationUse READ collaborationUse)
- Q_PROPERTY(QSet<QUmlFeature *> feature READ feature)
- Q_PROPERTY(QSet<QUmlClassifier *> general READ general)
- Q_PROPERTY(QSet<QUmlGeneralization *> generalization READ generalization)
- Q_PROPERTY(QSet<QUmlNamedElement *> inheritedMember READ inheritedMember)
- Q_PROPERTY(bool isAbstract READ isAbstract)
- Q_PROPERTY(bool isFinalSpecialization READ isFinalSpecialization)
- Q_PROPERTY(QUmlRedefinableTemplateSignature * ownedTemplateSignature READ ownedTemplateSignature)
- Q_PROPERTY(QSet<QUmlUseCase *> ownedUseCase READ ownedUseCase)
- Q_PROPERTY(QSet<QUmlGeneralizationSet *> powertypeExtent READ powertypeExtent)
- Q_PROPERTY(QSet<QUmlClassifier *> redefinedClassifier READ redefinedClassifier)
- Q_PROPERTY(QUmlCollaborationUse * representation READ representation)
- Q_PROPERTY(QSet<QUmlSubstitution *> substitution READ substitution)
- Q_PROPERTY(QUmlClassifierTemplateParameter * templateParameter READ templateParameter)
- Q_PROPERTY(QSet<QUmlUseCase *> useCase READ useCase)
-
- // Properties [BehavioredClassifier]
- Q_PROPERTY(QUmlBehavior * classifierBehavior READ classifierBehavior)
- Q_PROPERTY(QSet<QUmlInterfaceRealization *> interfaceRealization READ interfaceRealization)
- Q_PROPERTY(QSet<QUmlBehavior *> ownedBehavior READ ownedBehavior)
-
- // Properties [UseCase]
- Q_PROPERTY(QSet<QUmlExtend *> extend READ extend)
- Q_PROPERTY(QSet<QUmlExtensionPoint *> extensionPoint READ extensionPoint)
- Q_PROPERTY(QSet<QUmlInclude *> include READ include)
- Q_PROPERTY(QSet<QUmlClassifier *> subject READ subject)
-
public:
- Q_INVOKABLE explicit QUmlUseCase(QObject *parent = 0);
-
- // Owned attributes [Element]
- Q_INVOKABLE const QSet<QUmlComment *> ownedComment() const;
- Q_INVOKABLE const QSet<QUmlElement *> ownedElement() const;
- Q_INVOKABLE QUmlElement *owner() const;
-
- // Owned attributes [NamedElement]
- Q_INVOKABLE const QSet<QUmlDependency *> clientDependency() const;
- Q_INVOKABLE QString name() const;
- Q_INVOKABLE QUmlStringExpression *nameExpression() const;
- Q_INVOKABLE QUmlNamespace *namespace_() const;
- Q_INVOKABLE QString qualifiedName() const;
-
- // Owned attributes [Namespace]
- Q_INVOKABLE const QSet<QUmlElementImport *> elementImport() const;
- Q_INVOKABLE const QSet<QUmlPackageableElement *> importedMember() const;
- Q_INVOKABLE const QSet<QUmlNamedElement *> member() const;
- Q_INVOKABLE const QSet<QUmlNamedElement *> ownedMember() const;
- Q_INVOKABLE const QSet<QUmlConstraint *> ownedRule() const;
- Q_INVOKABLE const QSet<QUmlPackageImport *> packageImport() const;
-
- // Owned attributes [ParameterableElement]
- Q_INVOKABLE QUmlTemplateParameter *owningTemplateParameter() const;
-
- // Owned attributes [PackageableElement]
- Q_INVOKABLE QtUml::VisibilityKind visibility() const;
-
- // Owned attributes [Type]
- Q_INVOKABLE QUmlPackage *package() const;
-
- // Owned attributes [RedefinableElement]
- Q_INVOKABLE bool isLeaf() const;
- Q_INVOKABLE const QSet<QUmlRedefinableElement *> redefinedElement() const;
- Q_INVOKABLE const QSet<QUmlClassifier *> redefinitionContext() const;
-
- // Owned attributes [TemplateableElement]
- Q_INVOKABLE const QSet<QUmlTemplateBinding *> templateBinding() const;
-
- // Owned attributes [Classifier]
- Q_INVOKABLE const QSet<QUmlProperty *> attribute() const;
- Q_INVOKABLE const QSet<QUmlCollaborationUse *> collaborationUse() const;
- Q_INVOKABLE const QSet<QUmlFeature *> feature() const;
- Q_INVOKABLE const QSet<QUmlClassifier *> general() const;
- Q_INVOKABLE const QSet<QUmlGeneralization *> generalization() const;
- Q_INVOKABLE const QSet<QUmlNamedElement *> inheritedMember() const;
- Q_INVOKABLE bool isAbstract() const;
- Q_INVOKABLE bool isFinalSpecialization() const;
- Q_INVOKABLE QUmlRedefinableTemplateSignature *ownedTemplateSignature() const;
- Q_INVOKABLE const QSet<QUmlUseCase *> ownedUseCase() const;
- Q_INVOKABLE const QSet<QUmlGeneralizationSet *> powertypeExtent() const;
- Q_INVOKABLE const QSet<QUmlClassifier *> redefinedClassifier() const;
- Q_INVOKABLE QUmlCollaborationUse *representation() const;
- Q_INVOKABLE const QSet<QUmlSubstitution *> substitution() const;
- Q_INVOKABLE QUmlClassifierTemplateParameter *templateParameter() const;
- Q_INVOKABLE const QSet<QUmlUseCase *> useCase() const;
-
- // Owned attributes [BehavioredClassifier]
- Q_INVOKABLE QUmlBehavior *classifierBehavior() const;
- Q_INVOKABLE const QSet<QUmlInterfaceRealization *> interfaceRealization() const;
- Q_INVOKABLE const QSet<QUmlBehavior *> ownedBehavior() const;
-
- // Owned attributes [UseCase]
- Q_INVOKABLE const QSet<QUmlExtend *> extend() const;
- Q_INVOKABLE const QSet<QUmlExtensionPoint *> extensionPoint() const;
- Q_INVOKABLE const QSet<QUmlInclude *> include() const;
- Q_INVOKABLE const QSet<QUmlClassifier *> subject() const;
-
- // Operations [Element]
- Q_INVOKABLE QSet<QUmlElement *> allOwnedElements() const;
- Q_INVOKABLE bool mustBeOwned() const;
-
- // Operations [NamedElement]
- Q_INVOKABLE QList<QUmlNamespace *> allNamespaces() const;
- Q_INVOKABLE QSet<QUmlPackage *> allOwningPackages() const;
- Q_INVOKABLE bool isDistinguishableFrom(QUmlNamedElement *n, QUmlNamespace *ns) const;
- Q_INVOKABLE QString separator() const;
-
- // Operations [Namespace]
- Q_INVOKABLE QSet<QUmlPackageableElement *> excludeCollisions(QSet<QUmlPackageableElement *> imps) const;
- Q_INVOKABLE QSet<QString> getNamesOfMember(QUmlNamedElement *element) const;
- Q_INVOKABLE QSet<QUmlPackageableElement *> importMembers(QSet<QUmlPackageableElement *> imps) const;
- Q_INVOKABLE bool membersAreDistinguishable() const;
-
- // Operations [ParameterableElement]
- Q_INVOKABLE bool isCompatibleWith(QUmlParameterableElement *p) const;
- Q_INVOKABLE bool isTemplateParameter() const;
-
- // Operations [Type]
-
- // Operations [RedefinableElement]
- Q_INVOKABLE bool isConsistentWith(QUmlRedefinableElement *redefinee) const;
- Q_INVOKABLE bool isRedefinitionContextValid(QUmlRedefinableElement *redefined) const;
-
- // Operations [TemplateableElement]
- Q_INVOKABLE QSet<QUmlParameterableElement *> parameterableElements() const;
-
- // Operations [Classifier]
- Q_INVOKABLE QSet<QUmlFeature *> allFeatures() const;
- Q_INVOKABLE QSet<QUmlClassifier *> allParents() const;
- Q_INVOKABLE bool conformsTo(QUmlClassifier *other) const;
- Q_INVOKABLE bool hasVisibilityOf(QUmlNamedElement *n) const;
- Q_INVOKABLE QSet<QUmlNamedElement *> inherit(QSet<QUmlNamedElement *> inhs) const;
- Q_INVOKABLE QSet<QUmlNamedElement *> inheritableMembers(QUmlClassifier *c) const;
- Q_INVOKABLE bool isTemplate() const;
- Q_INVOKABLE bool maySpecializeType(QUmlClassifier *c) const;
- Q_INVOKABLE QSet<QUmlClassifier *> parents() const;
-
- // Operations [UseCase]
- Q_INVOKABLE QSet<QUmlUseCase *> allIncludedUseCases() const;
-
-public Q_SLOTS:
-
- // Slots for owned attributes [Element]
- void addOwnedComment(UmlComment *ownedComment);
- void removeOwnedComment(UmlComment *ownedComment);
-
- // Slots for owned attributes [NamedElement]
- void addClientDependency(UmlDependency *clientDependency);
- void removeClientDependency(UmlDependency *clientDependency);
- void setName(QString name);
- void setNameExpression(QUmlStringExpression *nameExpression);
-
- // Slots for owned attributes [Namespace]
- void addElementImport(UmlElementImport *elementImport);
- void removeElementImport(UmlElementImport *elementImport);
- void addOwnedRule(UmlConstraint *ownedRule);
- void removeOwnedRule(UmlConstraint *ownedRule);
- void addPackageImport(UmlPackageImport *packageImport);
- void removePackageImport(UmlPackageImport *packageImport);
-
- // Slots for owned attributes [ParameterableElement]
- void setOwningTemplateParameter(QUmlTemplateParameter *owningTemplateParameter);
-
- // Slots for owned attributes [PackageableElement]
- void setVisibility(QtUml::VisibilityKind visibility);
-
- // Slots for owned attributes [Type]
- void setPackage(QUmlPackage *package);
-
- // Slots for owned attributes [RedefinableElement]
- void setLeaf(bool isLeaf);
-
- // Slots for owned attributes [TemplateableElement]
- void addTemplateBinding(UmlTemplateBinding *templateBinding);
- void removeTemplateBinding(UmlTemplateBinding *templateBinding);
-
- // Slots for owned attributes [Classifier]
- void addCollaborationUse(UmlCollaborationUse *collaborationUse);
- void removeCollaborationUse(UmlCollaborationUse *collaborationUse);
- void addGeneral(UmlClassifier *general);
- void removeGeneral(UmlClassifier *general);
- void addGeneralization(UmlGeneralization *generalization);
- void removeGeneralization(UmlGeneralization *generalization);
- void setAbstract(bool isAbstract);
- void setFinalSpecialization(bool isFinalSpecialization);
- void setOwnedTemplateSignature(QUmlRedefinableTemplateSignature *ownedTemplateSignature);
- void addOwnedUseCase(UmlUseCase *ownedUseCase);
- void removeOwnedUseCase(UmlUseCase *ownedUseCase);
- void addPowertypeExtent(UmlGeneralizationSet *powertypeExtent);
- void removePowertypeExtent(UmlGeneralizationSet *powertypeExtent);
- void addRedefinedClassifier(UmlClassifier *redefinedClassifier);
- void removeRedefinedClassifier(UmlClassifier *redefinedClassifier);
- void setRepresentation(QUmlCollaborationUse *representation);
- void addSubstitution(UmlSubstitution *substitution);
- void removeSubstitution(UmlSubstitution *substitution);
- void setTemplateParameter(QUmlClassifierTemplateParameter *templateParameter);
- void addUseCase(UmlUseCase *useCase);
- void removeUseCase(UmlUseCase *useCase);
-
- // Slots for owned attributes [BehavioredClassifier]
- void setClassifierBehavior(QUmlBehavior *classifierBehavior);
- void addInterfaceRealization(UmlInterfaceRealization *interfaceRealization);
- void removeInterfaceRealization(UmlInterfaceRealization *interfaceRealization);
- void addOwnedBehavior(UmlBehavior *ownedBehavior);
- void removeOwnedBehavior(UmlBehavior *ownedBehavior);
-
- // Slots for owned attributes [UseCase]
- void addExtend(UmlExtend *extend);
- void removeExtend(UmlExtend *extend);
- void addExtensionPoint(UmlExtensionPoint *extensionPoint);
- void removeExtensionPoint(UmlExtensionPoint *extensionPoint);
- void addInclude(UmlInclude *include);
- void removeInclude(UmlInclude *include);
- void addSubject(UmlClassifier *subject);
- void removeSubject(UmlClassifier *subject);
+ explicit QUmlUseCase(bool createQObject = true);
+ virtual ~QUmlUseCase();
+
+ // Owned attributes
+ const QSet<QUmlExtend *> extend() const;
+ void addExtend(QUmlExtend *extend);
+ void removeExtend(QUmlExtend *extend);
+ const QSet<QUmlExtensionPoint *> extensionPoint() const;
+ void addExtensionPoint(QUmlExtensionPoint *extensionPoint);
+ void removeExtensionPoint(QUmlExtensionPoint *extensionPoint);
+ const QSet<QUmlInclude *> include() const;
+ void addInclude(QUmlInclude *include);
+ void removeInclude(QUmlInclude *include);
+ const QSet<QUmlClassifier *> subject() const;
+ void addSubject(QUmlClassifier *subject);
+ void removeSubject(QUmlClassifier *subject);
+
+ // Operations
+ QSet<QUmlUseCase *> allIncludedUseCases() const;
+
+protected:
+ QSet<QUmlExtend *> _extend;
+ QSet<QUmlExtensionPoint *> _extensionPoint;
+ QSet<QUmlInclude *> _include;
+ QSet<QUmlClassifier *> _subject;
};
QT_END_NAMESPACE
-Q_DECLARE_METATYPE(QUmlUseCase *)
-Q_DECLARE_METATYPE(QList<QUmlUseCase *> *)
-Q_DECLARE_METATYPE(QSet<QUmlUseCase *> *)
+Q_DECLARE_METATYPE(QT_PREPEND_NAMESPACE(QUmlUseCase) *)
QT_END_HEADER