umbrello: UMLOperation Class Reference

umbrello 25.04.0 Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology

Public Member Functions | Protected Member Functions | Private Attributes | List of all members
UMLOperation Class Reference

`#include <operation.h>`

Inheritance diagram for UMLOperation:

## Public Member Functions
| UMLOperation (UMLClassifier *parent, const QString &name, Uml::ID::Type id=Uml::ID::None, Uml::Visibility::Enum s=Uml::Visibility::Public, UMLObject *rt=nullptr)
| UMLOperation (UMLClassifier *parent)
virtual | ~UMLOperation ()
bool | operator== (const UMLOperation &rhs) const
virtual void | copyInto (UMLObject *lhs) const
virtual UMLObject * | clone () const
void | setType (UMLObject *type)
void | moveParmLeft (UMLAttribute *a)
void | moveParmRight (UMLAttribute *a)
void | removeParm (UMLAttribute *a, bool emitModifiedSignal=true)
UMLAttributeList | getParmList () const
UMLAttribute * | findParm (const QString &name) const
QString | toString (Uml::SignatureType::Enum sig=Uml::SignatureType::NoSig, bool withStereotype=false) const
void | addParm (UMLAttribute *parameter, int position=-1)
bool | resolveRef ()
QString | getUniqueParameterName () const
virtual bool | showPropertiesDialog (QWidget *parent=nullptr)
bool | isConstructorOperation () const
bool | isDestructorOperation () const
bool | isLifeOperation () const
void | setConst (bool b)
bool | getConst () const
void | setOverride (bool b)
bool | getOverride () const
void | setFinal (bool b)
bool | getFinal () const
void | setVirtual (bool b)
bool | isVirtual () const
void | setInline (bool b)
bool | isInline () const
void | setSourceCode (const QString &code)
QString | getSourceCode () const
void | saveToXMI (QXmlStreamWriter &writer)
Public Member Functions inherited from UMLClassifierListItem
| UMLClassifierListItem (UMLObject *parent, const QString &name, Uml::ID::Type id=Uml::ID::None)
| UMLClassifierListItem (UMLObject *parent)
virtual | ~UMLClassifierListItem ()
UMLClassifier * | getType () const
void | setTypeName (const QString &type)
virtual QString | getTypeName () const
Public Member Functions inherited from UMLObject
| UMLObject (const UMLObject &other)
| UMLObject (UMLObject *parent, const QString &name, Uml::ID::Type id=Uml::ID::None)
| UMLObject (UMLObject *parent)
| UMLObject (const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
virtual | ~UMLObject ()
bool | operator== (const UMLObject &rhs) const
virtual void | setBaseType (ObjectType ot)
ObjectType | baseType () const
QLatin1String | baseTypeStr () const
virtual void | setID (Uml::ID::Type NewID)
virtual Uml::ID::Type | id () const
QString | doc () const
bool | hasDoc () const
void | setDoc (const QString &d)
void | setVisibility (Uml::Visibility::Enum visibility)
void | setVisibilityCmd (Uml::Visibility::Enum visibility)
Uml::Visibility::Enum | visibility () const
void | setStereotype (const QString &_name)
void | setStereotypeCmd (const QString &_name)
QString | stereotype (bool includeAdornments=false) const
void | setUMLStereotype (UMLStereotype *stereo)
UMLStereotype * | umlStereotype () const
QStringList & | tags ()
QString | package (const QString &separator=QString(), bool includeRoot=false) const
UMLPackageList | packages (bool includeRoot=false) const
bool | setUMLPackage (UMLPackage *pPkg)
UMLPackage * | umlPackage () const
void | setUMLParent (UMLObject *parent)
UMLObject * | umlParent () const
virtual void | setName (const QString &strName)
virtual void | setNameCmd (const QString &strName)
QString | name () const
virtual QString | fullyQualifiedName (const QString &separator=QString(), bool includeRoot=false) const
void | setAbstract (bool bAbstract)
bool | isAbstract () const
virtual bool | loadFromXMI (QDomElement &element)
bool | loadStereotype (QDomElement &element)
void | setStatic (bool bStatic)
bool | isStatic () const
virtual bool | acceptAssociationType (Uml::AssociationType::Enum) const
void | setSecondaryId (const QString &id)
QString | secondaryId () const
void | setSecondaryFallback (const QString &id)
QString | secondaryFallback () const
void | save1 (QXmlStreamWriter &writer, const QString &type, const QString &tag=QString())
bool | isUMLActor () const
bool | isUMLArtifact () const
bool | isUMLAssociation () const
bool | isUMLAttribute () const
bool | isUMLCategory () const
bool | isUMLCheckConstraint () const
bool | isUMLClassifier () const
bool | isUMLComponent () const
bool | isUMLDatatype () const
bool | isUMLEntity () const
bool | isUMLEntityAttribute () const
bool | isUMLEntityConstraint () const
bool | isUMLEnum () const
bool | isUMLEnumLiteral () const
bool | isUMLFolder () const
bool | isUMLForeignKeyConstraint () const
bool | isUMLInstance () const
bool | isUMLInstanceAttribute () const
bool | isUMLNode () const
bool | isUMLObject () const
bool | isUMLOperation () const
bool | isUMLPackage () const
bool | isUMLPort () const
bool | isUMLRole () const
bool | isUMLStereotype () const
bool | isUMLTemplate () const
bool | isUMLUniqueConstraint () const
bool | isUMLUseCase () const
UMLActor * | asUMLActor ()
UMLArtifact * | asUMLArtifact ()
UMLAssociation * | asUMLAssociation ()
UMLAttribute * | asUMLAttribute ()
UMLCanvasObject * | asUMLCanvasObject ()
UMLCategory * | asUMLCategory ()
UMLCheckConstraint * | asUMLCheckConstraint ()
UMLClassifier * | asUMLClassifier ()
UMLClassifierListItem * | asUMLClassifierListItem ()
UMLClassifierSet * | asUMLClassifierSet ()
UMLComponent * | asUMLComponent ()
UMLDatatype * | asUMLDatatype ()
UMLEntity * | asUMLEntity ()
UMLEntityAttribute * | asUMLEntityAttribute ()
UMLEntityConstraint * | asUMLEntityConstraint ()
UMLEnum * | asUMLEnum ()
UMLEnumLiteral * | asUMLEnumLiteral ()
UMLFolder * | asUMLFolder ()
UMLForeignKeyConstraint * | asUMLForeignKeyConstraint ()
UMLInstance * | asUMLInstance ()
UMLInstanceAttribute * | asUMLInstanceAttribute ()
UMLNode * | asUMLNode ()
UMLObject * | asUMLObject ()
UMLOperation * | asUMLOperation ()
UMLPackage * | asUMLPackage ()
UMLPort * | asUMLPort ()
UMLRole * | asUMLRole ()
UMLStereotype * | asUMLStereotype ()
UMLTemplate * | asUMLTemplate ()
UMLUniqueConstraint * | asUMLUniqueConstraint ()
UMLUseCase * | asUMLUseCase ()
const UMLActor * | asUMLActor () const
const UMLArtifact * | asUMLArtifact () const
const UMLAssociation * | asUMLAssociation () const
const UMLAttribute * | asUMLAttribute () const
const UMLCanvasObject * | asUMLCanvasObject () const
const UMLCategory * | asUMLCategory () const
const UMLCheckConstraint * | asUMLCheckConstraint () const
const UMLClassifier * | asUMLClassifier () const
const UMLClassifierListItem * | asUMLClassifierListItem () const
const UMLClassifierSet * | asUMLClassifierSet () const
const UMLComponent * | asUMLComponent () const
const UMLDatatype * | asUMLDatatype () const
const UMLEntity * | asUMLEntity () const
const UMLEntityAttribute * | asUMLEntityAttribute () const
const UMLEntityConstraint * | asUMLEntityConstraint () const
const UMLEnum * | asUMLEnum () const
const UMLEnumLiteral * | asUMLEnumLiteral () const
const UMLFolder * | asUMLFolder () const
const UMLForeignKeyConstraint * | asUMLForeignKeyConstraint () const
const UMLInstance * | asUMLInstance () const
const UMLInstanceAttribute * | asUMLInstanceAttribute () const
const UMLNode * | asUMLNode () const
const UMLObject * | asUMLObject () const
const UMLOperation * | asUMLOperation () const
const UMLPackage * | asUMLPackage () const
const UMLPort * | asUMLPort () const
const UMLRole * | asUMLRole () const
const UMLStereotype * | asUMLStereotype () const
const UMLTemplate * | asUMLTemplate () const
const UMLUniqueConstraint * | asUMLUniqueConstraint () const
const UMLUseCase * | asUMLUseCase () const

## Protected Member Functions
bool | load1 (QDomElement &element)
Protected Member Functions inherited from UMLObject
void | init ()
void | maybeSignalObjectCreated ()
void | save1end (QXmlStreamWriter &writer)

## Private Attributes
Uml::ID::Type | m_returnId
| Holds the xmi.id of the <UML:Parameter kind="return">
UMLAttributeList | m_args
| Parameter list.
bool | m_bConst
| Holds the isQuery attribute of the <UML:Operation>
bool | m_bOverride
| Holds the override attribute of the <UML:Operation>
bool | m_bFinal
| Holds the final attribute of the <UML:Operation>
bool | m_bVirtual
| Holds the virtual attribute of the <UML:Operation>
bool | m_bInline
| Holds the inline attribute of the <UML:Operation>
QString | m_Code
| Holds the entered source code.

## Additional Inherited Members
Public Types inherited from UMLObject
enum | ObjectType { ot_Unknown = -1 , ot_UMLObject = 100 , ot_Actor , ot_UseCase , ot_Package , ot_Interface , ot_Datatype , ot_Enum , ot_Class , ot_Instance , ot_Association , ot_Attribute , ot_Operation , ot_EnumLiteral , ot_Template , ot_Component , ot_Artifact , ot_Node , ot_Stereotype , ot_Role , ot_Entity , ot_EntityAttribute , ot_Folder , ot_EntityConstraint , ot_UniqueConstraint , ot_ForeignKeyConstraint , ot_CheckConstraint , ot_Category , ot_Port , ot_InstanceAttribute , ot_SubSystem }
Public Slots inherited from UMLObject
void | emitModified ()
Signals inherited from UMLObject
void | modified ()
Static Public Member Functions inherited from UMLObject
static QString | toString (ObjectType ot)
static QString | toI18nString (ObjectType t)
static Icon_Utils::IconType | toIcon (ObjectType t)
Protected Attributes inherited from UMLObject
Uml::ID::Type | m_nId
| object's id
QString | m_Doc
| object's documentation
QPointer< UMLStereotype > | m_pStereotype
| stereotype of the object if applicable
QString | m_name
| objects name
ObjectType | m_BaseType
| objects type
Uml::Visibility::Enum | m_visibility
| objects visibility
bool | m_bAbstract
| state of whether the object is abstract or not
bool | m_bStatic
| flag for instance scope
bool | m_bCreationWasSignalled
| auxiliary to maybeSignalObjectCreated()
QPointer< UMLObject > | m_pSecondary
QString | m_SecondaryId
QString | m_SecondaryFallback
QStringList | m_TaggedValues
UMLObjectPrivate * | m_d
| private data

## Detailed Description

This class represents an operation in the UML model.

Bugs and comments to umbre.nosp@m.llo-.nosp@m.devel.nosp@m.@kde.nosp@m..org or https://bugs.kde.org

## Constructor & Destructor Documentation

## ◆ UMLOperation() [1/2]

UMLOperation::UMLOperation | ( | UMLClassifier * | parent,
|  | const QString & | name,
|  | Uml::ID::Type | id = Uml::ID::None,
|  | Uml::Visibility::Enum | s = Uml::Visibility::Public,
|  | UMLObject * | rt = nullptr )

Constructs a UMLOperation. Not intended for general use: The operation is not tied in with umbrello's Qt signalling for object creation. If you want to create an Operation use the method in UMLDoc instead.

Parameters

  parent | the parent to this operation
  name | the name of the operation
  id | the id of the operation
  s | the visibility of the operation
  rt | the return type of the operation

## ◆ UMLOperation() [2/2]

UMLOperation::UMLOperation | ( | UMLClassifier * | parent | ) |
| explicit

Constructs a UMLOperation. Not intended for general use: The operation is not tied in with umbrello's Qt signalling for object creation. If you want to create an Operation use the method in UMLDoc instead.

Parameters

  parent | the parent to this operation

## ◆ ~UMLOperation()

UMLOperation::~UMLOperation | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ addParm()

void UMLOperation::addParm | ( | UMLAttribute * | parameter,
|  | int | position = -1 )

Add a parameter to the operation.

Parameters

  parameter | the parameter to add
  position | the position in the parameter list. If position = -1 the parameter will be appended to the list.

## ◆ clone()

UMLObject * UMLOperation::clone | ( |  | ) | const
| virtual

Make a clone of this object.

Implements UMLClassifierListItem.

## ◆ copyInto()

void UMLOperation::copyInto | ( | UMLObject * | lhs | ) | const
| virtual

Copy the internal presentation of this object into the new object.

Reimplemented from UMLClassifierListItem.

## ◆ findParm()

UMLAttribute * UMLOperation::findParm | ( | const QString & | name | ) | const

Finds a parameter of the operation.

Parameters

  name | the parameter name to search for

Returns
  the found parameter, 0 if not found

## ◆ getConst()

bool UMLOperation::getConst | ( |  | ) | const

Returns whether this operation is a query (C++ "const").

## ◆ getFinal()

bool UMLOperation::getFinal | ( |  | ) | const

Returns whether this operation has final flag.

## ◆ getOverride()

bool UMLOperation::getOverride | ( |  | ) | const

Returns whether this operation has override flag.

## ◆ getParmList()

UMLAttributeList UMLOperation::getParmList | ( |  | ) | const

Returns a list of parameters.

Returns
  a list of the parameters in the operation

## ◆ getSourceCode()

QString UMLOperation::getSourceCode | ( |  | ) | const

Returns the source code for this operation.

## ◆ getUniqueParameterName()

QString UMLOperation::getUniqueParameterName | ( |  | ) | const

Returns an unused parameter name for a new parameter.

## ◆ isConstructorOperation()

bool UMLOperation::isConstructorOperation | ( |  | ) | const

Returns whether this operation is a constructor.

Returns
  true if this operation is a constructor

## ◆ isDestructorOperation()

bool UMLOperation::isDestructorOperation | ( |  | ) | const

Returns whether this operation is a destructor.

Returns
  true if this operation is a destructor

## ◆ isInline()

bool UMLOperation::isInline | ( |  | ) | const

Returns whether this operation is inlined.

## ◆ isLifeOperation()

bool UMLOperation::isLifeOperation | ( |  | ) | const

Shortcut for (isConstructorOperation() || isDestructorOperation()).

Returns
  true if this operation is a constructor or destructor

## ◆ isVirtual()

bool UMLOperation::isVirtual | ( |  | ) | const

Returns whether this operation is a virtual method.

## ◆ load1()

bool UMLOperation::load1 | ( | QDomElement & | element | ) |
| protectedvirtual

Loads a <UML:Operation> XMI element.

Reimplemented from UMLObject.

## ◆ moveParmLeft()

void UMLOperation::moveParmLeft | ( | UMLAttribute * | a | ) |

Move a parameter one position to the left.

Parameters

  a | the parameter to move

## ◆ moveParmRight()

void UMLOperation::moveParmRight | ( | UMLAttribute * | a | ) |

Move a parameter one position to the right.

Parameters

  a | the parameter to move

## ◆ operator==()

bool UMLOperation::operator== | ( | const UMLOperation & | rhs | ) | const

Overloaded '==' operator.

## ◆ removeParm()

void UMLOperation::removeParm | ( | UMLAttribute * | a,
|  | bool | emitModifiedSignal = true )

Remove a parameter from the operation.

Parameters

  a | the parameter to remove
  emitModifiedSignal | whether to emit the "modified" signal which creates an entry in the Undo stack for the removal, default: true

## ◆ resolveRef()

bool UMLOperation::resolveRef | ( |  | ) |
| virtual

Calls resolveRef() on all parameters. Needs to be called after all UML objects are loaded from file.

Returns
  true for success

Reimplemented from UMLObject.

## ◆ saveToXMI()

void UMLOperation::saveToXMI | ( | QXmlStreamWriter & | writer | ) |
| virtual

Saves to the <UML:Operation> XMI element.

Reimplemented from UMLObject.

## ◆ setConst()

void UMLOperation::setConst | ( | bool | b | ) |

Sets whether this operation is a query (C++ "const").

## ◆ setFinal()

void UMLOperation::setFinal | ( | bool | b | ) |

Sets whether this operation has final flag.

## ◆ setInline()

void UMLOperation::setInline | ( | bool | b | ) |

Sets whether this operation is inlined.

## ◆ setOverride()

void UMLOperation::setOverride | ( | bool | b | ) |

Sets whether this operation has override flag.

## ◆ setSourceCode()

void UMLOperation::setSourceCode | ( | const QString & | code | ) |

Sets the source code for this operation.

Parameters

  code | the body of this operation

## ◆ setType()

void UMLOperation::setType | ( | UMLObject * | type | ) |
| virtual

Reimplement method from UMLClassifierListItem.

Parameters

  type | pointer to the type object

Reimplemented from UMLClassifierListItem.

## ◆ setVirtual()

void UMLOperation::setVirtual | ( | bool | b | ) |

Sets whether this operation is a virtual method.

## ◆ showPropertiesDialog()

bool UMLOperation::showPropertiesDialog | ( | QWidget * | parent = nullptr | ) |
| virtual

Display the properties configuration dialog for the template.

Parameters

  parent | the parent for the dialog

Reimplemented from UMLObject.

## ◆ toString()

QString UMLOperation::toString | ( | Uml::SignatureType::Enum | sig = Uml::SignatureType::NoSig,
|  | bool | withStereotype = false ) const
| virtual

Returns a string representation of the operation.

Parameters

  sig | what type of operation string to show
  withStereotype | if true will show a possible stereotype applied to the operation

Returns
  the string representation of the operation

Reimplemented from UMLClassifierListItem.

## Member Data Documentation

## ◆ m_args

UMLAttributeList UMLOperation::m_args
| private

Parameter list.

## ◆ m_bConst

bool UMLOperation::m_bConst
| private

Holds the isQuery attribute of the <UML:Operation>

## ◆ m_bFinal

bool UMLOperation::m_bFinal
| private

Holds the final attribute of the <UML:Operation>

## ◆ m_bInline

bool UMLOperation::m_bInline
| private

Holds the inline attribute of the <UML:Operation>

## ◆ m_bOverride

bool UMLOperation::m_bOverride
| private

Holds the override attribute of the <UML:Operation>

## ◆ m_bVirtual

bool UMLOperation::m_bVirtual
| private

Holds the virtual attribute of the <UML:Operation>

## ◆ m_Code

QString UMLOperation::m_Code
| private

Holds the entered source code.

## ◆ m_returnId

Uml::ID::Type UMLOperation::m_returnId
| private

Holds the xmi.id of the <UML:Parameter kind="return">

The documentation for this class was generated from the following files:

- umbrello/umlmodel/operation.h
- umbrello/umlmodel/operation.cpp