umbrello 2.34.70-5524f40e1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions | Friends | List of all members
UMLAssociation Class Reference

Sets up association information. More...

#include <association.h>

Inheritance diagram for UMLAssociation:
Collaboration diagram for UMLAssociation:

Public Member Functions

 UMLAssociation (Uml::AssociationType::Enum type, UMLObject *roleA, UMLObject *roleB)
 
 UMLAssociation (Uml::AssociationType::Enum type=Uml::AssociationType::Unknown)
 
virtual ~UMLAssociation ()
 
bool operator== (const UMLAssociation &rhs) const
 
QString toString () const
 
UMLRolegetUMLRole (Uml::RoleType::Enum role) const
 
Uml::ID::Type getObjectId (Uml::RoleType::Enum role) const
 
Uml::ID::Type getRoleId (Uml::RoleType::Enum role) const
 
void setAssociationType (Uml::AssociationType::Enum assocType)
 
Uml::AssociationType::Enum getAssocType () const
 
void setObject (UMLObject *obj, Uml::RoleType::Enum role)
 
UMLObjectgetObject (Uml::RoleType::Enum role) const
 
void setVisibility (Uml::Visibility::Enum value, Uml::RoleType::Enum role)
 
Uml::Visibility::Enum visibility (Uml::RoleType::Enum role) const
 
void setChangeability (Uml::Changeability::Enum value, Uml::RoleType::Enum role)
 
Uml::Changeability::Enum changeability (Uml::RoleType::Enum role) const
 
void setMultiplicity (const QString &multi, Uml::RoleType::Enum role)
 
QString getMultiplicity (Uml::RoleType::Enum role) const
 
void setRoleName (const QString &roleName, Uml::RoleType::Enum role)
 
QString getRoleName (Uml::RoleType::Enum role) const
 
void setRoleDoc (const QString &doc, Uml::RoleType::Enum role)
 
QString getRoleDoc (Uml::RoleType::Enum role) const
 
void setOldLoadMode (bool value=true)
 
bool getOldLoadMode () const
 
virtual UMLObjectclone () const
 
virtual bool resolveRef ()
 
void saveToXMI (QXmlStreamWriter &writer)
 
virtual bool showPropertiesDialog (QWidget *parent=0)
 
- 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)
 
UMLStereotypeumlStereotype () const
 
QStringList & tags ()
 
QString package (const QString &separator=QString(), bool includeRoot=false) const
 
UMLPackageList packages (bool includeRoot=false) const
 
bool setUMLPackage (UMLPackage *pPkg)
 
UMLPackageumlPackage () const
 
void setUMLParent (UMLObject *parent)
 
UMLObjectumlParent () 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
 
UMLActorasUMLActor ()
 
UMLArtifactasUMLArtifact ()
 
UMLAssociationasUMLAssociation ()
 
UMLAttributeasUMLAttribute ()
 
UMLCanvasObjectasUMLCanvasObject ()
 
UMLCategoryasUMLCategory ()
 
UMLCheckConstraintasUMLCheckConstraint ()
 
UMLClassifierasUMLClassifier ()
 
UMLClassifierListItemasUMLClassifierListItem ()
 
UMLClassifierSetasUMLClassifierSet ()
 
UMLComponentasUMLComponent ()
 
UMLDatatypeasUMLDatatype ()
 
UMLEntityasUMLEntity ()
 
UMLEntityAttributeasUMLEntityAttribute ()
 
UMLEntityConstraintasUMLEntityConstraint ()
 
UMLEnumasUMLEnum ()
 
UMLEnumLiteralasUMLEnumLiteral ()
 
UMLFolderasUMLFolder ()
 
UMLForeignKeyConstraintasUMLForeignKeyConstraint ()
 
UMLInstanceasUMLInstance ()
 
UMLInstanceAttributeasUMLInstanceAttribute ()
 
UMLNodeasUMLNode ()
 
UMLObjectasUMLObject ()
 
UMLOperationasUMLOperation ()
 
UMLPackageasUMLPackage ()
 
UMLPortasUMLPort ()
 
UMLRoleasUMLRole ()
 
UMLStereotypeasUMLStereotype ()
 
UMLTemplateasUMLTemplate ()
 
UMLUniqueConstraintasUMLUniqueConstraint ()
 
UMLUseCaseasUMLUseCase ()
 
const UMLActorasUMLActor () const
 
const UMLArtifactasUMLArtifact () const
 
const UMLAssociationasUMLAssociation () const
 
const UMLAttributeasUMLAttribute () const
 
const UMLCanvasObjectasUMLCanvasObject () const
 
const UMLCategoryasUMLCategory () const
 
const UMLCheckConstraintasUMLCheckConstraint () const
 
const UMLClassifierasUMLClassifier () const
 
const UMLClassifierListItemasUMLClassifierListItem () const
 
const UMLClassifierSetasUMLClassifierSet () const
 
const UMLComponentasUMLComponent () const
 
const UMLDatatypeasUMLDatatype () const
 
const UMLEntityasUMLEntity () const
 
const UMLEntityAttributeasUMLEntityAttribute () const
 
const UMLEntityConstraintasUMLEntityConstraint () const
 
const UMLEnumasUMLEnum () const
 
const UMLEnumLiteralasUMLEnumLiteral () const
 
const UMLFolderasUMLFolder () const
 
const UMLForeignKeyConstraintasUMLForeignKeyConstraint () const
 
const UMLInstanceasUMLInstance () const
 
const UMLInstanceAttributeasUMLInstanceAttribute () const
 
const UMLNodeasUMLNode () const
 
const UMLObjectasUMLObject () const
 
const UMLOperationasUMLOperation () const
 
const UMLPackageasUMLPackage () const
 
const UMLPortasUMLPort () const
 
const UMLRoleasUMLRole () const
 
const UMLStereotypeasUMLStereotype () const
 
const UMLTemplateasUMLTemplate () const
 
const UMLUniqueConstraintasUMLUniqueConstraint () const
 
const UMLUseCaseasUMLUseCase () const
 

Protected Member Functions

bool load1 (QDomElement &element)
 
void init (Uml::AssociationType::Enum type, UMLObject *roleAObj, UMLObject *roleBObj)
 
- Protected Member Functions inherited from UMLObject
void init ()
 
void maybeSignalObjectCreated ()
 
void save1end (QXmlStreamWriter &writer)
 

Protected Attributes

int nrof_parent_widgets
 
UMLRolem_pRole [2]
 
Uml::AssociationType::Enum m_AssocType
 
QString m_Name
 
bool m_bOldLoadMode
 
- Protected Attributes inherited from UMLObject
Uml::ID::Type m_nId
 object's id More...
 
QString m_Doc
 object's documentation More...
 
QPointer< UMLStereotypem_pStereotype
 stereotype of the object if applicable More...
 
QString m_name
 objects name More...
 
ObjectType m_BaseType
 objects type More...
 
Uml::Visibility::Enum m_visibility
 objects visibility More...
 
bool m_bAbstract
 state of whether the object is abstract or not More...
 
bool m_bStatic
 flag for instance scope More...
 
bool m_bCreationWasSignalled
 auxiliary to maybeSignalObjectCreated() More...
 
QPointer< UMLObjectm_pSecondary
 
QString m_SecondaryId
 
QString m_SecondaryFallback
 
QStringList m_TaggedValues
 
UMLObjectPrivatem_d
 private data More...
 

Private Member Functions

bool isRealization (UMLObject *objA, UMLObject *objB) const
 

Friends

class AssociationWidget
 

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)
 

Detailed Description

Sets up association information.

This class contains the non-graphic representation of an association. An association can be a generalization, realization, simple association, directed association, aggregation, or composition.

Author
Oliver Kellogg okell.nosp@m.ogg@.nosp@m.users.nosp@m..sou.nosp@m.rcefo.nosp@m.rge..nosp@m.net
See also
UMLObject 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

◆ UMLAssociation() [1/2]

UMLAssociation::UMLAssociation ( Uml::AssociationType::Enum  type,
UMLObject roleA,
UMLObject roleB 
)

Sets up an association. A new unique ID is assigned internally.

Parameters
typeThe AssociationType::Enum to construct.
roleAPointer to the UMLObject in role A.
roleBPointer to the UMLObject in role B.
Here is the call graph for this function:

◆ UMLAssociation() [2/2]

UMLAssociation::UMLAssociation ( Uml::AssociationType::Enum  type = Uml::AssociationType::Unknown)
explicit

Constructs an association - for loading only. This constructor should not normally be used as it constructs an incomplete association (i.e. the role objects are missing.)

Parameters
typeThe AssociationType::Enum to construct. Default: Unknown.
Here is the call graph for this function:

◆ ~UMLAssociation()

UMLAssociation::~UMLAssociation ( )
virtual

Standard destructor.

Member Function Documentation

◆ changeability()

Uml::Changeability::Enum UMLAssociation::changeability ( Uml::RoleType::Enum  role) const

Returns the changeability.

Here is the call graph for this function:

◆ clone()

virtual UMLObject * UMLAssociation::clone ( ) const
inlinevirtual

Reimplemented from UMLObject.

◆ getAssocType()

Uml::AssociationType::Enum UMLAssociation::getAssocType ( ) const

Returns the AssociationType::Enum of the UMLAssociation.

Returns
The AssociationType::Enum of the UMLAssociation.

◆ getMultiplicity()

QString UMLAssociation::getMultiplicity ( Uml::RoleType::Enum  role) const

Returns the multiplicity assigned to the given role.

Returns
The multiplicity assigned to the given role.
Here is the call graph for this function:

◆ getObject()

UMLObject * UMLAssociation::getObject ( Uml::RoleType::Enum  role) const

Returns the UMLObject assigned to the given role.

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

◆ getObjectId()

Uml::ID::Type UMLAssociation::getObjectId ( Uml::RoleType::Enum  role) const

Returns the ID of the UMLObject assigned to the given role. Shorthand for getObject(role)->ID().

Returns
ID of the UMLObject in the given role.
Here is the call graph for this function:

◆ getOldLoadMode()

bool UMLAssociation::getOldLoadMode ( ) const

Return the backward compatibility flag for loading files.

◆ getRoleDoc()

QString UMLAssociation::getRoleDoc ( Uml::RoleType::Enum  role) const

Returns the documentation assigned to the given role.

Returns
Documentation text of given role.
Here is the call graph for this function:

◆ getRoleId()

Uml::ID::Type UMLAssociation::getRoleId ( Uml::RoleType::Enum  role) const

Returns the ID of the UMLObject assigned to the given role. CURRENTLY UNUSED.

Returns
ID of the UMLObject of the given role.
Here is the call graph for this function:

◆ getRoleName()

QString UMLAssociation::getRoleName ( Uml::RoleType::Enum  role) const

Returns the name assigned to the role A.

Returns
The name assigned to the given role.
Here is the call graph for this function:

◆ getUMLRole()

UMLRole * UMLAssociation::getUMLRole ( Uml::RoleType::Enum  role) const

Get the underlying UMLRole object for the given role.

Returns
Pointer to the UMLRole object for the given role.

◆ init()

void UMLAssociation::init ( Uml::AssociationType::Enum  type,
UMLObject roleAObj,
UMLObject roleBObj 
)
protected

Common initializations at construction time.

Parameters
typeThe AssociationType::Enum to represent.
roleAObjPointer to the role A UMLObject.
roleBObjPointer to the role B UMLObject.
Here is the call graph for this function:

◆ isRealization()

bool UMLAssociation::isRealization ( UMLObject objA,
UMLObject objB 
) const
private

When the association type is "Generalization" and at least one of the given objects an interface, then it is a "Realization".

Parameters
objAUML object as role A
objBUML object as role B
Returns
flag whether association is a realization
Here is the call graph for this function:

◆ load1()

bool UMLAssociation::load1 ( QDomElement &  element)
protectedvirtual

Loads the <UML:Generalization> or <UML:Association> XMI element including its role objects.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ operator==()

bool UMLAssociation::operator== ( const UMLAssociation rhs) const

Overloaded '==' operator

◆ resolveRef()

bool UMLAssociation::resolveRef ( )
virtual

Resolve types. Required when dealing with foreign XMI files. Needs to be called after all UML objects are loaded from file. Overrides the method from UMLObject. Calls resolveRef() for each role.

Returns
True for success.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ saveToXMI()

void UMLAssociation::saveToXMI ( QXmlStreamWriter &  writer)
virtual

Creates the <UML:Generalization> or <UML:Association> XMI element including its role objects.

Reimplemented from UMLObject.

Here is the call graph for this function:

◆ setAssociationType()

void UMLAssociation::setAssociationType ( Uml::AssociationType::Enum  assocType)

Sets the assocType of the UMLAssociation.

Parameters
assocTypeThe AssociationType::Enum of the UMLAssociation.
Here is the call graph for this function:

◆ setChangeability()

void UMLAssociation::setChangeability ( Uml::Changeability::Enum  value,
Uml::RoleType::Enum  role 
)

Sets the changeability of the given role of the UMLAssociation.

Parameters
valueChangeability_Type of the given role.
roleThe Uml::RoleType::Enum to which the changeability is being set
Here is the call graph for this function:

◆ setMultiplicity()

void UMLAssociation::setMultiplicity ( const QString &  multi,
Uml::RoleType::Enum  role 
)

Sets the multiplicity of the given role of the UMLAssociation.

Parameters
multiThe multiplicity of the given role.
roleThe Uml::RoleType::Enum to which the multiplicity is being applied
Here is the call graph for this function:

◆ setObject()

void UMLAssociation::setObject ( UMLObject obj,
Uml::RoleType::Enum  role 
)

Sets the UMLObject playing the given role in the association.

Parameters
objPointer to the UMLObject of the given role.
roleThe Uml::RoleType::Enum played by the association
Here is the call graph for this function:

◆ setOldLoadMode()

void UMLAssociation::setOldLoadMode ( bool  value = true)

Set the attribute m_bOldLoadMode.

Parameters
valuethe new value to set

◆ setRoleDoc()

void UMLAssociation::setRoleDoc ( const QString &  doc,
Uml::RoleType::Enum  role 
)

Sets the documentation on the given role in the association.

Parameters
docThe string with the documentation.
roleThe Uml::RoleType::Enum to which the documentation is being applied
Here is the call graph for this function:

◆ setRoleName()

void UMLAssociation::setRoleName ( const QString &  roleName,
Uml::RoleType::Enum  role 
)

Sets the name of the given role of the UMLAssociation.

Parameters
roleNameThe name to set for the given role.
roleThe Uml::RoleType::Enum for which to set the name.
Here is the call graph for this function:

◆ setVisibility()

void UMLAssociation::setVisibility ( Uml::Visibility::Enum  value,
Uml::RoleType::Enum  role 
)

Sets the visibility of the given role of the UMLAssociation.

Parameters
valueVisibility of role.
roleThe Uml::RoleType::Enum to which the visibility is being applied
Here is the call graph for this function:

◆ showPropertiesDialog()

bool UMLAssociation::showPropertiesDialog ( QWidget *  parent = 0)
virtual

Display the properties configuration dialog for the object.

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

Reimplemented from UMLObject.

◆ toString()

QString UMLAssociation::toString ( ) const

Returns a String representation of this UMLAssociation.

Here is the call graph for this function:

◆ visibility()

Uml::Visibility::Enum UMLAssociation::visibility ( Uml::RoleType::Enum  role) const

Returns the Visibility of the given role.

Returns
Visibility of the given role.
Here is the call graph for this function:

Friends And Related Function Documentation

◆ AssociationWidget

friend class AssociationWidget
friend

Member Data Documentation

◆ m_AssocType

Uml::AssociationType::Enum UMLAssociation::m_AssocType
protected

◆ m_bOldLoadMode

bool UMLAssociation::m_bOldLoadMode
protected

◆ m_Name

QString UMLAssociation::m_Name
protected

◆ m_pRole

UMLRole* UMLAssociation::m_pRole[2]
protected

◆ nrof_parent_widgets

int UMLAssociation::nrof_parent_widgets
protected

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