umbrello  2.35.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-2022 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 setFinal(bool b);
67  bool getFinal() const;
68  void setVirtual(bool b);
69  bool isVirtual() const;
70  void setInline(bool b);
71  bool isInline() const;
72 
73  void setSourceCode(const QString& code);
74  QString getSourceCode() const;
75 
76  void saveToXMI(QXmlStreamWriter& writer);
77 
78 protected:
79  bool load1(QDomElement & element);
80 
81 private:
84  bool m_bConst;
85  bool m_bOverride;
86  bool m_bFinal;
87  bool m_bVirtual;
88  bool m_bInline;
89  QString m_Code;
90 };
91 
92 #endif
UMLObject::id
virtual Uml::ID::Type id() const
Definition: umlobject.cpp:421
UMLOperation::operator==
bool operator==(const UMLOperation &rhs) const
Definition: operation.cpp:302
umlattributelist.h
UMLAttribute::toString
QString toString(Uml::SignatureType::Enum sig=Uml::SignatureType::NoSig, bool withStereotype=false) const
Definition: attribute.cpp:135
Uml::ModelType::Enum
Enum
Definition: basictypes.h:27
UMLOperation::addParm
void addParm(UMLAttribute *parameter, int position=-1)
Definition: operation.cpp:276
DEBUG_REGISTER
#define DEBUG_REGISTER(src)
Definition: debug_utils.h:129
logDebug1
#define logDebug1(s, a)
Definition: uml.h:541
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:391
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:486
UMLAttributeList
Definition: umlattributelist.h:20
UMLObject::name
QString name() const
Definition: umlobject.cpp:207
Uml::ProgrammingLanguage::Pascal
@ Pascal
Definition: basictypes.h:301
Uml::ParameterDirection::In
@ In
Definition: basictypes.h:255
UMLOperation::getParmList
UMLAttributeList getParmList() const
Definition: operation.cpp:177
UMLOperation::~UMLOperation
virtual ~UMLOperation()
Definition: operation.cpp:84
UMLOperation::moveParmLeft
void moveParmLeft(UMLAttribute *a)
Definition: operation.cpp:105
UMLAttribute::setParmKind
void setParmKind(Uml::ParameterDirection::Enum pk)
Definition: attribute.cpp:118
UMLOperation::m_Code
QString m_Code
Holds the entered source code.
Definition: operation.h:89
UMLOperation::m_returnId
Uml::ID::Type m_returnId
Holds the xmi.id of the <UML:Parameter kind="return">
Definition: operation.h:82
UMLOperation::isLifeOperation
bool isLifeOperation() const
Definition: operation.cpp:414
UMLOperation::removeParm
void removeParm(UMLAttribute *a, bool emitModifiedSignal=true)
Definition: operation.cpp:157
UMLObject::resolveRef
virtual bool resolveRef()
Definition: umlobject.cpp:744
operation.h
UMLClassifierListItem::getType
UMLClassifier * getType() const
Definition: classifierlistitem.cpp:98
UMLAttribute::getInitialValue
QString getInitialValue() const
Definition: attribute.cpp:100
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:205
UMLObject::m_SecondaryId
QString m_SecondaryId
Definition: umlobject.h:317
UMLOperation::moveParmRight
void moveParmRight(UMLAttribute *a)
Definition: operation.cpp:129
UMLOperation::getConst
bool getConst() const
Definition: operation.cpp:430
Uml::SignatureType::SigNoVis
@ SigNoVis
Definition: basictypes.h:163
Uml::ID::toString
QString toString(const ID::Type &id)
Definition: basictypes.cpp:1306
UMLObject::emitModified
void emitModified()
Definition: umlobject.cpp:381
logError1
#define logError1(s, a)
Definition: uml.h:545
UMLObject::umlParent
UMLObject * umlParent() const
Definition: umlobject.cpp:676
UMLObject::m_visibility
Uml::Visibility::Enum m_visibility
objects visibility
Definition: umlobject.h:309
UMLObject::umlPackage
UMLPackage * umlPackage() const
Definition: umlobject.cpp:651
UMLObject::save1end
void save1end(QXmlStreamWriter &writer)
Definition: umlobject.cpp:937
UMLOperation::m_bFinal
bool m_bFinal
Holds the final attribute of the <UML:Operation>
Definition: operation.h:86
Uml::ParameterDirection::Enum
Enum
Definition: basictypes.h:254
Model_Utils::getXmiId
QString getXmiId(QDomElement element)
Definition: model_utils.cpp:772
Uml::ID::Type
std::string Type
Definition: basictypes.h:371
Settings::OptionState::generalState
GeneralState generalState
Definition: optionstate.h:322
UMLOperation::m_bConst
bool m_bConst
Holds the isQuery attribute of the <UML:Operation>
Definition: operation.h:84
codeblock.h
model_utils.h
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
UMLObject::asUMLOperation
UMLOperation * asUMLOperation()
Definition: umlobject.cpp:1437
UMLObject::m_pSecondary
QPointer< UMLObject > m_pSecondary
Definition: umlobject.h:313
Uml::ParameterDirection::InOut
@ InOut
Definition: basictypes.h:256
UMLOperation::findParm
UMLAttribute * findParm(const QString &name) const
Definition: operation.cpp:188
Settings::optionState
OptionState & optionState()
Definition: optionstate.cpp:357
UMLOperation::m_bOverride
bool m_bOverride
Holds the override attribute of the <UML:Operation>
Definition: operation.h:85
UMLObject::m_BaseType
ObjectType m_BaseType
objects type
Definition: umlobject.h:308
UMLOperation::resolveRef
bool resolveRef()
Definition: operation.cpp:353
UMLAttributeList::copyInto
virtual void copyInto(UMLAttributeList *rhs) const
Definition: umlattributelist.cpp:24
Uml::Visibility::Public
@ Public
Definition: basictypes.h:46
Uml::ID::fromString
ID::Type fromString(const QString &id)
Definition: basictypes.cpp:1311
UMLAttribute::getParmKind
Uml::ParameterDirection::Enum getParmKind() const
Definition: attribute.cpp:123
UMLOperation::setConst
void setConst(bool b)
Definition: operation.cpp:422
UMLOperation::saveToXMI
void saveToXMI(QXmlStreamWriter &writer)
Definition: operation.cpp:531
UMLOperation::setSourceCode
void setSourceCode(const QString &code)
Definition: operation.cpp:515
UMLOperation::setFinal
void setFinal(bool b)
Definition: operation.cpp:454
classifierlistitem.h
uniqueid.h
UMLOperation::getOverride
bool getOverride() const
Definition: operation.cpp:446
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:223
i18n
#define i18n
Definition: main.cpp:35
UMLOperation::load1
bool load1(QDomElement &element)
Definition: operation.cpp:602
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:42
Uml::ProgrammingLanguage::Ada
@ Ada
Definition: basictypes.h:293
UMLObject::asUMLClassifier
UMLClassifier * asUMLClassifier()
Definition: umlobject.cpp:1422
Settings::GeneralState::uml2
bool uml2
Definition: optionstate.h:66
UMLOperationDialog
Definition: umloperationdialog.h:38
Uml::ParameterDirection::Out
@ Out
Definition: basictypes.h:257
UMLObject::modified
void modified()
Definition: moc_umlobject.cpp:217
Uml::SignatureType::Enum
Enum
Definition: basictypes.h:160
UMLOperation::getFinal
bool getFinal() const
Definition: operation.cpp:462
UMLOperation::clone
virtual UMLObject * clone() const
Definition: operation.cpp:338
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:349
UMLAttribute
Sets up attribute information.
Definition: attribute.h:22
UMLOperation::m_bInline
bool m_bInline
Holds the inline attribute of the <UML:Operation>
Definition: operation.h:88
Uml
Definition: basictypes.cpp: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:3652
UMLOperation::setVirtual
void setVirtual(bool b)
Definition: operation.cpp:470
codedocument.h
Uml::Visibility::Enum
Enum
Definition: basictypes.h:45
classifier.h
UMLOperation::isConstructorOperation
bool isConstructorOperation() const
Definition: operation.cpp:369
UMLObject::loadFromXMI
virtual bool loadFromXMI(QDomElement &element)
Definition: umlobject.cpp:1027
UMLOperation
Definition: operation.h:19
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:494
UMLOperation::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: operation.cpp:326
Uml::SignatureType::NoSig
@ NoSig
Definition: basictypes.h:161
UMLOperation::m_args
UMLAttributeList m_args
Parameter list.
Definition: operation.h:83
UMLOperation::getUniqueParameterName
QString getUniqueParameterName() const
Definition: operation.cpp:289
UMLOperation::m_bVirtual
bool m_bVirtual
Holds the virtual attribute of the <UML:Operation>
Definition: operation.h:87
UMLOperation::showPropertiesDialog
virtual bool showPropertiesDialog(QWidget *parent=0)
Definition: operation.cpp:504
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:93
UMLApp::activeLanguage
Uml::ProgrammingLanguage::Enum activeLanguage() const
Definition: uml.cpp:2708
UMLOperation::isVirtual
bool isVirtual() const
Definition: operation.cpp:478
UMLObject::stereotype
QString stereotype(bool includeAdornments=false) const
Definition: umlobject.cpp:555
UMLOperation::setOverride
void setOverride(bool b)
Definition: operation.cpp:438
UMLClassifierListItem
A base class for classifier list items (e.g. attributes)
Definition: classifierlistitem.h:24
umldoc.h
UMLClassifierListItem::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: classifierlistitem.cpp:72
UMLObject::save1
void save1(QXmlStreamWriter &writer, const QString &type, const QString &tag=QString())
Definition: umlobject.cpp:861
UMLOperation::getSourceCode
QString getSourceCode() const
Definition: operation.cpp:523
UMLPackage
Non-graphical information for a Package.
Definition: package.h:27
logDebug0
#define logDebug0(s)
Definition: uml.h:535