umbrello 2.34.70-5524f40e1
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:
Collaboration 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) const
 
int removeAssociationEnd (UMLAssociation *assoc)
 
void removeAllAssociationEnds ()
 
int associations () const
 
UMLAssociationList getAssociations () const
 
UMLAssociationList getSpecificAssocs (Uml::AssociationType::Enum assocType) const
 
UMLClassifierList getSuperClasses (bool withRealizations=true) const
 
UMLClassifierList getSubClasses () const
 
virtual UMLAssociationList getRealizations () const
 
UMLAssociationList getAggregations () const
 
UMLAssociationList getCompositions () const
 
UMLAssociationList getRelationships () const
 
virtual UMLObjectfindChildObject (const QString &n, UMLObject::ObjectType t=UMLObject::ot_UMLObject) const
 
virtual UMLObjectfindChildObjectById (Uml::ID::Type id, bool considerAncestors=false) const
 
virtual QString uniqChildName (const UMLObject::ObjectType type, const QString &prefix=QString()) const
 
virtual void removeAllChildObjects ()
 
UMLObjectListsubordinates () 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 UMLObjectclone () 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 showPropertiesDialog (QWidget *parent=0)
 
virtual void saveToXMI (QXmlStreamWriter &writer)
 
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
 

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 ()
 
void save1end (QXmlStreamWriter &writer)
 
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< 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...
 

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. It adds a member of type UMLObjectList containing subordinate objects. The subordinate objects could be associations, attributes, operations, or other items depending on the inheriting class.

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
nameThe name of the Concept.
idThe unique id of the Concept.

◆ ~UMLCanvasObject()

UMLCanvasObject::~UMLCanvasObject ( )
virtual

Standard deconstructor.

Here is the call graph for this function:

Member Function Documentation

◆ addAssociationEnd()

bool UMLCanvasObject::addAssociationEnd ( UMLAssociation assoc)

Adds an association end to subordinates.

Parameters
assocThe association to add.
Todo:
change param type to UMLRole
Here is the call graph for this function:

◆ associations()

int UMLCanvasObject::associations ( ) const

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.
Here is the call graph for this function:

◆ 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, UMLEnum, and UMLPackage.

Here is the call graph for this function:

◆ findChildObject()

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

Find a child object with the given name.

Parameters
nThe name of the object to find.
tThe type to find (optional.) If not given then any object type will match.
Returns
Pointer to the object found; NULL if none found.
Here is the call graph for this function:

◆ findChildObjectById()

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

Find an association.

Parameters
idThe id of the object to find.
considerAncestorsboolean switch to consider ancestors while searching
Returns
Pointer to the object found (NULL if not found.)

Reimplemented in UMLClassifier.

Here is the call graph for this function:

◆ getAggregations()

UMLAssociationList UMLCanvasObject::getAggregations ( ) const

Shorthand for getSpecificAssocs(Uml::at_Aggregation)

Returns
The list of aggregations for the Concept.
Here is the call graph for this function:

◆ getAssociations()

UMLAssociationList UMLCanvasObject::getAssociations ( ) const

Return the list of associations for the CanvasObject.

Returns
The list of associations for the CanvasObject.
Here is the call graph for this function:

◆ getCompositions()

UMLAssociationList UMLCanvasObject::getCompositions ( ) const

Shorthand for getSpecificAssocs(Uml::at_Composition) const

Returns
The list of compositions for the Concept.
Here is the call graph for this function:

◆ getRealizations()

UMLAssociationList UMLCanvasObject::getRealizations ( ) const
virtual

Shorthand for getSpecificAssocs(Uml::at_Realization)

Returns
The list of realizations for the Concept.
Here is the call graph for this function:

◆ getRelationships()

UMLAssociationList UMLCanvasObject::getRelationships ( ) const

Shorthand for getSpecificAssocs(Uml::at_Relationship)

Returns
The list of relationships for the entity.
Here is the call graph for this function:

◆ getSpecificAssocs()

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

Return the subset of subordinates that matches the given type.

Parameters
assocTypeThe AssociationType::Enum to match.
Returns
The list of associations that match assocType.
Here is the call graph for this function:

◆ getSubClasses()

UMLClassifierList UMLCanvasObject::getSubClasses ( ) const

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.
Here is the call graph for this function:

◆ getSuperClasses()

UMLClassifierList UMLCanvasObject::getSuperClasses ( bool  withRealizations = true) const

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

Parameters
withRealizationsinclude realizations in the returned list (default=yes)
Returns
The list of superclasses for the concept.
Here is the call graph for this function:

◆ hasAssociation()

bool UMLCanvasObject::hasAssociation ( UMLAssociation assoc) const

Determine if this canvasobject has the given association.

Parameters
assocThe association to check.
Here is the call graph for this function:

◆ operator==()

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

Overloaded '==' operator

Here is the call graph for this function:

◆ removeAllAssociationEnds()

void UMLCanvasObject::removeAllAssociationEnds ( )

Remove all association ends from the CanvasObject.

Here is the call graph for this function:

◆ 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).

Here is the call graph for this function:

◆ removeAssociationEnd()

int UMLCanvasObject::removeAssociationEnd ( UMLAssociation assoc)

Remove an association end from the CanvasObject.

Parameters
assocThe association to remove.
Todo:
change param type to UMLRole
Here is the call graph for this function:

◆ resolveRef()

bool UMLCanvasObject::resolveRef ( )
virtual

Reimplementation of UMLObject method.

Reimplemented from UMLObject.

Reimplemented in UMLClassifier, UMLEntity, UMLInstance, and UMLPackage.

Here is the call graph for this function:

◆ 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() 
) const
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
typeThe object type for which to make a name.
prefixOptional 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.
Here is the call graph for this function:

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: