umbrello  2.31.80
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
operation.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2002-2020 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef OPERATION_H
7 #define OPERATION_H
8 
9 #include "umlattributelist.h"
10 #include "classifierlistitem.h"
11 
12 class UMLClassifier;
13 
20 {
21  Q_OBJECT
22 public:
23  UMLOperation(UMLClassifier * parent, const QString& name,
26  UMLObject *rt = 0);
27  explicit UMLOperation(UMLClassifier * parent);
28  virtual ~UMLOperation();
29 
30  bool operator==(const UMLOperation & rhs) const;
31 
32  virtual void copyInto(UMLObject *lhs) const;
33 
34  virtual UMLObject* clone() const;
35 
36  void setType(UMLObject* type);
37 
40 
41  void removeParm(UMLAttribute *a, bool emitModifiedSignal = true);
42 
44 
45  UMLAttribute * findParm(const QString &name);
46 
47  QString toString(Uml::SignatureType::Enum sig = Uml::SignatureType::NoSig, bool withStereotype=false);
48 
49  void addParm(UMLAttribute *parameter, int position = -1);
50 
51  bool resolveRef();
52 
53  QString getUniqueParameterName();
54 
55  virtual bool showPropertiesDialog(QWidget* parent = 0);
56 
58  bool isDestructorOperation();
59  bool isLifeOperation();
60 
61  void setConst(bool b);
62  bool getConst() const;
63  void setOverride(bool b);
64  bool getOverride() const;
65  void setVirtual(bool b);
66  bool isVirtual() const;
67  void setInline(bool b);
68  bool isInline() const;
69 
70  void setSourceCode(const QString& code);
71  QString getSourceCode() const;
72 
73  void saveToXMI1(QXmlStreamWriter& writer);
74 
75 protected:
76  bool load1(QDomElement & element);
77 
78 private:
81  bool m_bConst;
82  bool m_Override;
83  bool m_virtual;
84  bool m_inline;
85  QString m_Code;
86 };
87 
88 #endif
Definition: umlattributelist.h:21
Sets up attribute information.
Definition: attribute.h:23
A base class for classifier list items (e.g. attributes)
Definition: classifierlistitem.h:25
Information for a non-graphical Concept/Class.
Definition: classifier.h:35
The base class for UML objects.
Definition: umlobject.h:70
QString name() const
Definition: umlobject.cpp:206
Definition: operation.h:20
bool m_bConst
Holds the isQuery attribute of the <UML:Operation>
Definition: operation.h:81
bool isConstructorOperation()
Definition: operation.cpp:364
void setType(UMLObject *type)
Definition: operation.cpp:89
void saveToXMI1(QXmlStreamWriter &writer)
Definition: operation.cpp:510
bool resolveRef()
Definition: operation.cpp:348
UMLAttributeList getParmList() const
Definition: operation.cpp:173
UMLOperation(UMLClassifier *parent, const QString &name, Uml::ID::Type id=Uml::ID::None, Uml::Visibility::Enum s=Uml::Visibility::Public, UMLObject *rt=0)
Definition: operation.cpp:40
void addParm(UMLAttribute *parameter, int position=-1)
Definition: operation.cpp:271
virtual void copyInto(UMLObject *lhs) const
Definition: operation.cpp:321
void setConst(bool b)
Definition: operation.cpp:417
void setVirtual(bool b)
Definition: operation.cpp:449
bool load1(QDomElement &element)
Definition: operation.cpp:563
void moveParmLeft(UMLAttribute *a)
Definition: operation.cpp:101
void setInline(bool b)
Definition: operation.cpp:465
void setSourceCode(const QString &code)
Definition: operation.cpp:494
UMLAttributeList m_List
Parameter list.
Definition: operation.h:80
bool isLifeOperation()
Definition: operation.cpp:409
void setOverride(bool b)
Definition: operation.cpp:433
bool isInline() const
Definition: operation.cpp:473
bool isDestructorOperation()
Definition: operation.cpp:386
QString getSourceCode() const
Definition: operation.cpp:502
virtual bool showPropertiesDialog(QWidget *parent=0)
Definition: operation.cpp:483
void removeParm(UMLAttribute *a, bool emitModifiedSignal=true)
Definition: operation.cpp:153
bool getOverride() const
Definition: operation.cpp:441
bool m_inline
Holds the inline attribute of the <UML:Operation>
Definition: operation.h:84
bool m_Override
Holds the override attribute of the <UML:Operation>
Definition: operation.h:82
virtual UMLObject * clone() const
Definition: operation.cpp:333
bool isVirtual() const
Definition: operation.cpp:457
bool getConst() const
Definition: operation.cpp:425
QString m_Code
Holds the entered source code.
Definition: operation.h:85
bool m_virtual
Holds the virtual attribute of the <UML:Operation>
Definition: operation.h:83
void moveParmRight(UMLAttribute *a)
Definition: operation.cpp:125
QString getUniqueParameterName()
Definition: operation.cpp:284
virtual ~UMLOperation()
Definition: operation.cpp:80
bool operator==(const UMLOperation &rhs) const
Definition: operation.cpp:297
UMLAttribute * findParm(const QString &name)
Definition: operation.cpp:184
QString toString(Uml::SignatureType::Enum sig=Uml::SignatureType::NoSig, bool withStereotype=false)
Definition: operation.cpp:200
Uml::ID::Type m_returnId
Holds the xmi.id of the <UML:Parameter kind="return">
Definition: operation.h:79
bool b
Definition: cxx11-null-pointer-constant.h:6
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
std::string Type
Definition: basictypes.h:371
Enum
Definition: basictypes.h:160
@ NoSig
Definition: basictypes.h:161
Enum
Definition: basictypes.h:45
@ Public
Definition: basictypes.h:46
QString a
Definition: petalnode.cpp:13