umbrello: UMLCanvasObject Class Reference

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

Signals | Public Member Functions | Private Attributes | List of all members
UMLCanvasObject Class Reference

Non-graphical information for a UMLCanvasObject. More...

`#include <umlcanvasobject.h>`

Inheritance diagram for UMLCanvasObject:

## Signals
void | sigAssociationEndAdded (UMLAssociation *assoc)
void | sigAssociationEndRemoved (UMLAssociation *assoc)
Signals inherited from UMLObject
void | modified ()

## Public Member Functions
| UMLCanvasObject (const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
virtual | ~UMLCanvasObject ()
bool | operator== (const UMLCanvasObject &rhs) const
virtual void | copyInto (UMLObject *lhs) const
bool | addAssociationEnd (UMLAssociation *assoc)
bool | hasAssociation (UMLAssociation *assoc)
int | removeAssociationEnd (UMLAssociation *assoc)
void | removeAllAssociationEnds ()
int | associations ()
UMLAssociationList | getAssociations ()
UMLAssociationList | getSpecificAssocs (Uml::AssociationType::Enum assocType)
UMLClassifierList | getSuperClasses (bool withRealizations=true)
UMLClassifierList | getSubClasses ()
virtual UMLAssociationList | getRealizations ()
UMLAssociationList | getAggregations ()
UMLAssociationList | getCompositions ()
UMLAssociationList | getRelationships ()
virtual UMLObject * | findChildObject (const QString &n, UMLObject::ObjectType t=UMLObject::ot_UMLObject)
virtual UMLObject * | findChildObjectById (Uml::ID::Type id, bool considerAncestors=false)
virtual QString | uniqChildName (const UMLObject::ObjectType type, const QString &prefix=QString())
virtual void | removeAllChildObjects ()
UMLObjectList & | subordinates () const
virtual bool | resolveRef ()
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 UMLObject * | clone () 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 ()
QString | package (const QString &separator=QString(), bool includeRoot=false)
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 | showPropertiesDialog (QWidget *parent=0)
virtual void | saveToXMI1 (QDomDocument &qDoc, QDomElement &qElement)
virtual bool | loadFromXMI1 (QDomElement &element)
bool | loadStereotype (QDomElement &element)
void | setStatic (bool bStatic)
bool | isStatic () const
virtual bool | acceptAssociationType (Uml::AssociationType::Enum)
void | setSecondaryId (const QString &id)
QString | secondaryId () const
void | setSecondaryFallback (const QString &id)
QString | secondaryFallback () const
QDomElement | save1 (const QString &tag, QDomDocument &qDoc)
bool | isUMLActor ()
bool | isUMLArtifact ()
bool | isUMLAssociation ()
bool | isUMLAttribute ()
bool | isUMLCategory ()
bool | isUMLCheckConstraint ()
bool | isUMLClassifier ()
bool | isUMLComponent ()
bool | isUMLDatatype ()
bool | isUMLEntity ()
bool | isUMLEntityAttribute ()
bool | isUMLEntityConstraint ()
bool | isUMLEnum ()
bool | isUMLEnumLiteral ()
bool | isUMLFolder ()
bool | isUMLForeignKeyConstraint ()
bool | isUMLInstance ()
bool | isUMLInstanceAttribute ()
bool | isUMLNode ()
bool | isUMLObject ()
bool | isUMLOperation ()
bool | isUMLPackage ()
bool | isUMLPort ()
bool | isUMLRole ()
bool | isUMLStereotype ()
bool | isUMLTemplate ()
bool | isUMLUniqueConstraint ()
bool | isUMLUseCase ()
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 ()

## Private Attributes
UMLObjectList | m_List

## 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 ()
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 Member Functions inherited from UMLObject
void | init ()
void | maybeSignalObjectCreated ()
virtual bool | load1 (QDomElement &element)
Protected Attributes inherited from UMLObject
Uml::ID::Type | m_nId
| object's id More...
QString | m_Doc
| object's documentation More...
QPointer< UMLStereotype > | m_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_bInPaste
| caller sets this true when in paste operation More...
bool | m_bCreationWasSignalled
| auxiliary to maybeSignalObjectCreated() More...
QPointer< UMLObject > | m_pSecondary
QString | m_SecondaryId
QString | m_SecondaryFallback
UMLObjectPrivate * | m_d
| private data More...

## Detailed Description

Non-graphical information for a UMLCanvasObject.

This class contains the non-graphical information required for UMLObjects which appear as moveable widgets on the scene.

This class inherits from UMLObject which contains most of the information. It is not instantiated itself, it's just used as a super class for actual model objects.

Author
  Jonathan Riddell

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

## ◆ UMLCanvasObject()

UMLCanvasObject::UMLCanvasObject | ( | const QString & | name = `QString()`,
|  | Uml::ID::Type | id = `Uml::ID::None`
| ) |  |
| explicit

Sets up a UMLCanvasObject.

Parameters

  name | The name of the Concept.
  id | The unique id of the Concept.

## ◆ ~UMLCanvasObject()

UMLCanvasObject::~UMLCanvasObject | ( |  | ) |
| virtual

Standard deconstructor.

## Member Function Documentation

## ◆ addAssociationEnd()

bool UMLCanvasObject::addAssociationEnd | ( | UMLAssociation * | assoc | ) |

Adds an association end to subordinates.

Parameters

  assoc | The association to add.

Todo:
  change param type to UMLRole

## ◆ associations()

int UMLCanvasObject::associations | ( |  | ) |

Returns the number of associations for the CanvasObject. This is the sum of the aggregations and compositions.

Returns
  The number of associations for the Concept.

## ◆ copyInto()

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

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

Reimplemented from UMLObject.

Reimplemented in UMLCategory, UMLClassifier, UMLEntity, UMLPackage, and UMLEnum.

## ◆ findChildObject()

UMLObject * UMLCanvasObject::findChildObject | ( | const QString & | n,
|  | UMLObject::ObjectType | t = `UMLObject::ot_UMLObject`
| ) |  |
| virtual

Find a child object with the given name.

Parameters

  n | The name of the object to find.
  t | The type to find (optional.) If not given then any object type will match.

Returns
  Pointer to the object found; NULL if none found.

## ◆ findChildObjectById()

UMLObject * UMLCanvasObject::findChildObjectById | ( | Uml::ID::Type | id,
|  | bool | considerAncestors = `false`
| ) |  |
| virtual

Find an association.

Parameters

  id | The id of the object to find.
  considerAncestors | boolean switch to consider ancestors while searching

Returns
  Pointer to the object found (NULL if not found.)

Reimplemented in UMLClassifier.

## ◆ getAggregations()

UMLAssociationList UMLCanvasObject::getAggregations | ( |  | ) |

Shorthand for getSpecificAssocs(Uml::at_Aggregation)

Returns
  The list of aggregations for the Concept.

## ◆ getAssociations()

UMLAssociationList UMLCanvasObject::getAssociations | ( |  | ) |

Return the list of associations for the CanvasObject.

Returns
  The list of associations for the CanvasObject.

## ◆ getCompositions()

UMLAssociationList UMLCanvasObject::getCompositions | ( |  | ) |

Shorthand for getSpecificAssocs(Uml::at_Composition)

Returns
  The list of compositions for the Concept.

## ◆ getRealizations()

UMLAssociationList UMLCanvasObject::getRealizations | ( |  | ) |
| virtual

Shorthand for getSpecificAssocs(Uml::at_Realization)

Returns
  The list of realizations for the Concept.

## ◆ getRelationships()

UMLAssociationList UMLCanvasObject::getRelationships | ( |  | ) |

Shorthand for getSpecificAssocs(Uml::at_Relationship)

Returns
  The list of relationships for the entity.

## ◆ getSpecificAssocs()

UMLAssociationList UMLCanvasObject::getSpecificAssocs | ( | Uml::AssociationType::Enum | assocType | ) |

Return the subset of subordinates that matches the given type.

Parameters

  assocType | The AssociationType::Enum to match.

Returns
  The list of associations that match assocType.

## ◆ getSubClasses()

UMLClassifierList UMLCanvasObject::getSubClasses | ( |  | ) |

Return a list of the classes that inherit from this concept. TODO: This overlaps with UMLClassifier::findSubClassConcepts(), see if we can merge the two.

Returns
  The list of classes inheriting from the concept.

## ◆ getSuperClasses()

UMLClassifierList UMLCanvasObject::getSuperClasses | ( | bool | withRealizations = `true` | ) |

Return a list of the superclasses of this concept. TODO: This overlaps with UMLClassifier::findSuperClassConcepts(), see if we can merge the two.

Parameters

  withRealizations | include realizations in the returned list (default=yes)

Returns
  The list of superclasses for the concept.

## ◆ hasAssociation()

bool UMLCanvasObject::hasAssociation | ( | UMLAssociation * | assoc | ) |

Determine if this canvasobject has the given association.

Parameters

  assoc | The association to check.

## ◆ operator==()

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

Overloaded '==' operator

## ◆ removeAllAssociationEnds()

void UMLCanvasObject::removeAllAssociationEnds | ( |  | ) |

Remove all association ends from the CanvasObject.

## ◆ removeAllChildObjects()

void UMLCanvasObject::removeAllChildObjects | ( |  | ) |
| virtual

Remove all child objects. Just clear list, objects must be deleted where they were created (or we have bad crashes).

## ◆ removeAssociationEnd()

int UMLCanvasObject::removeAssociationEnd | ( | UMLAssociation * | assoc | ) |

Remove an association end from the CanvasObject.

Parameters

  assoc | The association to remove.

Todo:
  change param type to UMLRole

## ◆ resolveRef()

bool UMLCanvasObject::resolveRef | ( |  | ) |
| virtual

Reimplementation of UMLObject method.

Reimplemented from UMLObject.

Reimplemented in UMLClassifier, UMLEntity, UMLPackage, and UMLInstance.

## ◆ sigAssociationEndAdded

void UMLCanvasObject::sigAssociationEndAdded | ( | UMLAssociation * | assoc | ) |
| signal

## ◆ sigAssociationEndRemoved

void UMLCanvasObject::sigAssociationEndRemoved | ( | UMLAssociation * | assoc | ) |
| signal

## ◆ subordinates()

UMLObjectList& UMLCanvasObject::subordinates | ( |  | ) | const
| inline

## ◆ uniqChildName()

QString UMLCanvasObject::uniqChildName | ( | const UMLObject::ObjectType | type,
|  | const QString & | prefix = `QString()`
| ) |  |
| virtual

Returns a name for the new association, operation, template or attribute appended with a number if the default name is taken e.g. new_association, new_association_1 etc.

Parameters

  type | The object type for which to make a name.
  prefix | Optional prefix to use for the name. If not given then uniqChildName() will choose the prefix internally based on the object type.

Returns
  Unique name string for the ObjectType given.

## Member Data Documentation

## ◆ m_List

UMLObjectList UMLCanvasObject::m_List
| mutableprivate

List of all the associations in this object. Inheriting classes add more types of objects that are possible in this list; for example, UMLClassifier adds operations, attributes, and templates.

Todo:
  Only a pointer to the appropriate association end object (UMLRole) should be saved here, not the entire UMLAssociation.

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

- umbrello/uml1model/umlcanvasobject.h
- umbrello/uml1model/umlcanvasobject.cpp