umbrello  2.32.1
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-2021 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) const;
46 
48  bool withStereotype=false) const;
49 
50  void addParm(UMLAttribute *parameter, int position = -1);
51 
52  bool resolveRef();
53 
54  QString getUniqueParameterName() const;
55 
56  virtual bool showPropertiesDialog(QWidget* parent = 0);
57 
58  bool isConstructorOperation() const;
59  bool isDestructorOperation() const;
60  bool isLifeOperation() const;
61 
62  void setConst(bool b);
63  bool getConst() const;
64  void setOverride(bool b);
65  bool getOverride() const;
66  void setVirtual(bool b);
67  bool isVirtual() const;
68  void setInline(bool b);
69  bool isInline() const;
70 
71  void setSourceCode(const QString& code);
72  QString getSourceCode() const;
73 
74  void saveToXMI1(QXmlStreamWriter& writer);
75 
76 protected:
77  bool load1(QDomElement & element);
78 
79 private:
82  bool m_bConst;
83  bool m_Override;
84  bool m_virtual;
85  bool m_inline;
86  QString m_Code;
87 };
88 
89 #endif
UMLObject::id
virtual Uml::ID::Type id() const
Definition: umlobject.cpp:420
UMLOperation::operator==
bool operator==(const UMLOperation &rhs) const
Definition: operation.cpp:297
umlattributelist.h
UMLAttribute::toString
QString toString(Uml::SignatureType::Enum sig=Uml::SignatureType::NoSig, bool withStereotype=false) const
Definition: attribute.cpp:128
UMLObject::asUMLClassifier
UMLClassifier * asUMLClassifier()
Definition: umlobject.cpp:1389
UMLOperation::addParm
void addParm(UMLAttribute *parameter, int position=-1)
Definition: operation.cpp:271
code
b Accompany it with a written valid for at least three to give any third for a charge no more than your cost of physically performing source a complete machine readable copy of the corresponding source code
Definition: GPL-2.0-only.txt:139
UMLOperation::isDestructorOperation
bool isDestructorOperation() const
Definition: operation.cpp:386
Uml::ProgrammingLanguage::Enum
Enum
Definition: basictypes.h:291
Uml::SignatureType::NoSigNoVis
@ NoSigNoVis
Definition: basictypes.h:164
UMLOperation::setInline
void setInline(bool b)
Definition: operation.cpp:465
UMLObject::asUMLOperation
UMLOperation * asUMLOperation()
Definition: umlobject.cpp:1404
UMLAttributeList
Definition: umlattributelist.h:20
UMLObject::name
QString name() const
Definition: umlobject.cpp:206
Uml::ProgrammingLanguage::Pascal
@ Pascal
Definition: basictypes.h:301
Uml::ParameterDirection::In
@ In
Definition: basictypes.h:255
UMLOperation::getParmList
UMLAttributeList getParmList() const
Definition: operation.cpp:173
UMLOperation::m_List
UMLAttributeList m_List
Parameter list.
Definition: operation.h:81
UMLObject::save1
void save1(const QString &tag, QXmlStreamWriter &writer)
Definition: umlobject.cpp:850
UMLOperation::~UMLOperation
virtual ~UMLOperation()
Definition: operation.cpp:80
UMLOperation::moveParmLeft
void moveParmLeft(UMLAttribute *a)
Definition: operation.cpp:101
UMLAttribute::setParmKind
void setParmKind(Uml::ParameterDirection::Enum pk)
Definition: attribute.cpp:112
UMLOperation::m_Code
QString m_Code
Holds the entered source code.
Definition: operation.h:86
UMLOperation::m_returnId
Uml::ID::Type m_returnId
Holds the xmi.id of the <UML:Parameter kind="return">
Definition: operation.h:80
UMLOperation::isLifeOperation
bool isLifeOperation() const
Definition: operation.cpp:409
UMLOperation::removeParm
void removeParm(UMLAttribute *a, bool emitModifiedSignal=true)
Definition: operation.cpp:153
UMLObject::resolveRef
virtual bool resolveRef()
Definition: umlobject.cpp:742
operation.h
UMLClassifierListItem::getType
UMLClassifier * getType() const
Definition: classifierlistitem.cpp:98
UMLAttribute::getInitialValue
QString getInitialValue() const
Definition: attribute.cpp:94
UMLClassifierListItem::getTypeName
virtual QString getTypeName() const
Definition: classifierlistitem.cpp:108
Uml::ID::None
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
umloperationdialog.h
UMLOperation::toString
QString toString(Uml::SignatureType::Enum sig=Uml::SignatureType::NoSig, bool withStereotype=false) const
Definition: operation.cpp:200
UMLObject::m_SecondaryId
QString m_SecondaryId
Definition: umlobject.h:286
UMLOperation::moveParmRight
void moveParmRight(UMLAttribute *a)
Definition: operation.cpp:125
UMLOperation::getConst
bool getConst() const
Definition: operation.cpp:425
Uml::SignatureType::SigNoVis
@ SigNoVis
Definition: basictypes.h:163
Uml::ID::toString
QString toString(const ID::Type &id)
Definition: basictypes.cpp:1300
UMLObject::emitModified
void emitModified()
Definition: umlobject.cpp:380
UMLObject::umlParent
UMLObject * umlParent() const
Definition: umlobject.cpp:674
UMLObject::m_visibility
Uml::Visibility::Enum m_visibility
objects visibility
Definition: umlobject.h:277
UMLObject::umlPackage
UMLPackage * umlPackage() const
Definition: umlobject.cpp:649
UMLObject::save1end
void save1end(QXmlStreamWriter &writer)
Definition: umlobject.cpp:904
Uml::ParameterDirection::Enum
Enum
Definition: basictypes.h:254
Model_Utils::getXmiId
QString getXmiId(QDomElement element)
Definition: model_utils.cpp:743
UMLOperation::m_inline
bool m_inline
Holds the inline attribute of the <UML:Operation>
Definition: operation.h:85
Uml::ID::Type
std::string Type
Definition: basictypes.h:371
UMLOperation::m_bConst
bool m_bConst
Holds the isQuery attribute of the <UML:Operation>
Definition: operation.h:82
codeblock.h
model_utils.h
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
UMLObject::m_pSecondary
QPointer< UMLObject > m_pSecondary
Definition: umlobject.h:282
Uml::ParameterDirection::InOut
@ InOut
Definition: basictypes.h:256
UMLOperation::findParm
UMLAttribute * findParm(const QString &name) const
Definition: operation.cpp:184
UMLObject::m_BaseType
ObjectType m_BaseType
objects type
Definition: umlobject.h:276
UMLOperation::resolveRef
bool resolveRef()
Definition: operation.cpp:348
UMLAttributeList::copyInto
virtual void copyInto(UMLAttributeList *rhs) const
Definition: umlattributelist.cpp:29
Uml::Visibility::Public
@ Public
Definition: basictypes.h:46
Uml::ID::fromString
ID::Type fromString(const QString &id)
Definition: basictypes.cpp:1305
UMLAttribute::getParmKind
Uml::ParameterDirection::Enum getParmKind() const
Definition: attribute.cpp:117
UMLOperation::setConst
void setConst(bool b)
Definition: operation.cpp:417
UMLOperation::setSourceCode
void setSourceCode(const QString &code)
Definition: operation.cpp:494
classifierlistitem.h
UMLOperation::saveToXMI1
void saveToXMI1(QXmlStreamWriter &writer)
Definition: operation.cpp:510
uniqueid.h
UMLOperation::getOverride
bool getOverride() const
Definition: operation.cpp:441
attribute.h
number
it is up to the author donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License If the distribution and or use of the Library is restricted in certain countries either by patents or by copyrighted the original copyright holder who places the Library under this License may add an geographical distribution limitation excluding those so that distribution is permitted only in or among countries not thus excluded In such this License incorporates the limitation as if written in the body of this License The Free Software Foundation may publish revised and or new versions of the Library General Public License from time to time Such new versions will be similar in spirit to the present but may differ in detail to address new problems or concerns Each version is given a distinguishing version number If the Library specifies a version number of this License which applies to it and any later you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation If the Library does not specify a license version number
Definition: LGPL-2.0-only.txt:368
a
QString a
Definition: petalnode.cpp:13
Uml::Visibility::toString
QString toString(Enum item, bool mnemonic)
Definition: basictypes.cpp:93
UMLObject::fullyQualifiedName
virtual QString fullyQualifiedName(const QString &separator=QString(), bool includeRoot=false) const
Definition: umlobject.cpp:222
i18n
#define i18n
Definition: main.cpp:34
UMLOperation::load1
bool load1(QDomElement &element)
Definition: operation.cpp:563
UMLClassifierListItem::setType
virtual void setType(UMLObject *type)
Definition: classifierlistitem.cpp:123
UMLOperation::UMLOperation
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
Uml::ProgrammingLanguage::Ada
@ Ada
Definition: basictypes.h:293
uDebug
#define uDebug()
Definition: debug_utils.h:108
UMLOperationDialog
Definition: umloperationdialog.h:38
Uml::ParameterDirection::Out
@ Out
Definition: basictypes.h:257
UMLObject::modified
void modified()
Definition: moc_umlobject.cpp:216
Uml::SignatureType::Enum
Enum
Definition: basictypes.h:160
UMLOperation::clone
virtual UMLObject * clone() const
Definition: operation.cpp:333
MyProject\connect
connect()
Definition: namespaces-multiple.php:5
c
type show c for details The hypothetical commands show w and show c should show the appropriate parts of the General Public License Of the commands you use may be called something other than show w and show c
Definition: GPL-2.0-only.txt:301
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:275
UMLAttribute
Sets up attribute information.
Definition: attribute.h:22
UniqueID::gen
Uml::ID::Type gen()
Definition: uniqueid.cpp:21
UMLDoc::tagEq
static bool tagEq(const QString &tag, const QString &pattern)
Definition: umldoc.cpp:3562
UMLOperation::setVirtual
void setVirtual(bool b)
Definition: operation.cpp:449
codedocument.h
Uml::Visibility::Enum
Enum
Definition: basictypes.h:45
classifier.h
UMLOperation::isConstructorOperation
bool isConstructorOperation() const
Definition: operation.cpp:364
uError
#define uError()
Definition: debug_utils.h:109
UMLOperation
Definition: operation.h:19
UMLObject::loadFromXMI1
virtual bool loadFromXMI1(QDomElement &element)
Definition: umlobject.cpp:993
uml.h
Uml::SignatureType::ShowSig
@ ShowSig
Definition: basictypes.h:162
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:34
debug_utils.h
UMLOperation::isInline
bool isInline() const
Definition: operation.cpp:473
UMLOperation::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: operation.cpp:321
Uml::SignatureType::NoSig
@ NoSig
Definition: basictypes.h:161
UMLOperation::getUniqueParameterName
QString getUniqueParameterName() const
Definition: operation.cpp:284
UMLOperation::showPropertiesDialog
virtual bool showPropertiesDialog(QWidget *parent=0)
Definition: operation.cpp:483
codegenerator.h
b
bool b
Definition: cxx11-null-pointer-constant.h:6
UMLObject::ot_Operation
@ ot_Operation
Definition: umlobject.h:89
UMLOperation::setType
void setType(UMLObject *type)
Definition: operation.cpp:89
UMLApp::activeLanguage
Uml::ProgrammingLanguage::Enum activeLanguage() const
Definition: uml.cpp:2532
UMLOperation::isVirtual
bool isVirtual() const
Definition: operation.cpp:457
UMLObject::stereotype
QString stereotype(bool includeAdornments=false) const
Definition: umlobject.cpp:554
UMLOperation::setOverride
void setOverride(bool b)
Definition: operation.cpp:433
UMLClassifierListItem
A base class for classifier list items (e.g. attributes)
Definition: classifierlistitem.h:24
UMLOperation::m_virtual
bool m_virtual
Holds the virtual attribute of the <UML:Operation>
Definition: operation.h:84
umldoc.h
UMLClassifierListItem::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: classifierlistitem.cpp:70
UMLOperation::m_Override
bool m_Override
Holds the override attribute of the <UML:Operation>
Definition: operation.h:83
UMLOperation::getSourceCode
QString getSourceCode() const
Definition: operation.cpp:502
UMLPackage
Non-graphical information for a Package.
Definition: package.h:27