umbrello 26.08.1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
UMLRole Class Reference

#include <umlrole.h>

Inheritance diagram for UMLRole:
Collaboration diagram for UMLRole:

Public Member Functions

 UMLRole (UMLAssociation *parent, UMLObject *parentUMLObject, Uml::RoleType::Enum role)
virtual ~UMLRole ()
bool operator== (const UMLRole &rhs) const
QString toString () const
void setObject (UMLObject *obj)
UMLObject * object () const
void setChangeability (Uml::Changeability::Enum value)
Uml::Changeability::Enum changeability () const
void setMultiplicity (const QString &multi)
QString multiplicity () const
UMLAssociation * parentAssociation () const
Uml::RoleType::Enum role () const
UMLObject * clone () const
void saveToXMI (QXmlStreamWriter &writer)
virtual bool showPropertiesDialog (QWidget *parent=nullptr)
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 copyInto (UMLObject *lhs) 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 resolveRef ()
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

UMLAssociation * m_pAssoc
Uml::RoleType::Enum m_role
QString m_Multi
Uml::Changeability::Enum m_Changeability

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 contains the non-graphic representation of an association role.

Author
Brian Thomas brian.nosp@m..tho.nosp@m.mas@g.nosp@m.sfc..nosp@m.nasa..nosp@m.gov
See also
UMLObject

Constructor & Destructor Documentation

◆ UMLRole()

UMLRole::UMLRole ( UMLAssociation * parent,
UMLObject * parentObj,
Uml::RoleType::Enum role )

Sets up an association.

Parameters
parentThe parent (association) of this UMLRole.
parentObjThe Parent UML Object of this UMLRole
roleThe Uml::RoleType::Enum of this UMLRole
Here is the call graph for this function:

◆ ~UMLRole()

UMLRole::~UMLRole ( )
virtual

Standard destructor.

Member Function Documentation

◆ changeability()

Uml::Changeability::Enum UMLRole::changeability ( ) const

Returns the Changeablity of the role.

Returns
Changeability of role.

◆ clone()

UMLObject * UMLRole::clone ( ) const
inlinevirtual

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ load1()

bool UMLRole::load1 ( QDomElement & element)
protectedvirtual

Loads the <UML:AssociationEnd> XMI element. Auxiliary to UMLObject::loadFromXMI.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ multiplicity()

QString UMLRole::multiplicity ( ) const

Returns the multiplicity assigned to the role.

Returns
The multiplicity assigned to the role.

◆ object()

UMLObject * UMLRole::object ( ) const

Returns the UMLObject assigned to the role.

Returns
Pointer to the UMLObject in role.
Here is the call graph for this function:

◆ operator==()

bool UMLRole::operator== ( const UMLRole & rhs) const

Overloaded '==' operator.

Here is the call graph for this function:

◆ parentAssociation()

UMLAssociation * UMLRole::parentAssociation ( ) const

◆ role()

Uml::RoleType::Enum UMLRole::role ( ) const

Get the 'id' of the role (NOT the parent object). This could be either Uml::RoleType::A or Uml::RoleType::B. Yes, it would be better if we could get along without this, but we need it to distinguish saved umlrole objects in the XMI for 'self' associations where both roles will point to the same underlying UMLObject.

◆ saveToXMI()

void UMLRole::saveToXMI ( QXmlStreamWriter & writer)
virtual

Creates the <UML:AssociationEnd> XMI element.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ setChangeability()

void UMLRole::setChangeability ( Uml::Changeability::Enum value)

Sets the changeability of the role.

Parameters
valueChangeability::Enum of role.
Here is the call graph for this function:

◆ setMultiplicity()

void UMLRole::setMultiplicity ( const QString & multi)

Sets the multiplicity of the role.

Parameters
multiThe multiplicity of role.
Here is the call graph for this function:

◆ setObject()

void UMLRole::setObject ( UMLObject * obj)

Sets the UMLObject playing the role in the association.

Parameters
objPointer to the UMLObject of role.
Here is the call graph for this function:

◆ showPropertiesDialog()

bool UMLRole::showPropertiesDialog ( QWidget * parent = nullptr)
virtual

Display the properties configuration dialog for the object.

Parameters
parentThe parent widget.
Returns
True for success of this operation.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ toString()

QString UMLRole::toString ( ) const

Returns a String representation of this UMLRole instance.

Here is the call graph for this function:

Member Data Documentation

◆ m_Changeability

Uml::Changeability::Enum UMLRole::m_Changeability
private

◆ m_Multi

QString UMLRole::m_Multi
private

◆ m_pAssoc

UMLAssociation* UMLRole::m_pAssoc
private

◆ m_role

Uml::RoleType::Enum UMLRole::m_role
private

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