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: