umbrello: UMLPackage Class Reference

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

Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
UMLPackage Class Reference

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

`#include <package.h>`

Inheritance diagram for UMLPackage:

## Public Member Functions
| UMLPackage (const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
virtual | ~UMLPackage ()
virtual void | copyInto (UMLObject *lhs) const
virtual UMLObject * | clone () const
bool | addObject (UMLObject *pObject, bool interactOnConflict=true)
void | removeObject (UMLObject *pObject)
virtual void | removeAllObjects ()
UMLObjectList | containedObjects (bool includeInactive=false)
void | addAssocToConcepts (UMLAssociation *assoc)
void | removeAssocFromConcepts (UMLAssociation *assoc)
UMLObject * | findObject (const QString &name)
UMLObject * | findObjectById (Uml::ID::Type id)
void | appendPackages (UMLPackageList &packages, bool includeNested=true)
void | appendClassifiers (UMLClassifierList &classifiers, bool includeNested=true)
void | appendClassesAndInterfaces (UMLClassifierList &classifiers, bool includeNested=true)
void | appendEntities (UMLEntityList &entities, bool includeNested=true)
virtual bool | resolveRef ()
virtual void | saveToXMI1 (QXmlStreamWriter &writer)
Public Member Functions inherited from UMLCanvasObject
| UMLCanvasObject (const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
virtual | ~UMLCanvasObject ()
bool | operator== (const UMLCanvasObject &rhs) 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
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 | 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 ()
QStringList & | tags ()
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 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
void | save1 (const QString &tag, QXmlStreamWriter &writer)
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 ()

## Protected Member Functions
virtual bool | load1 (QDomElement &element)
Protected Member Functions inherited from UMLObject
void | init ()
void | maybeSignalObjectCreated ()
void | save1end (QXmlStreamWriter &writer)

## Protected Attributes
UMLObjectList | m_objects
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
QStringList | m_TaggedValues
UMLObjectPrivate * | m_d
| private data More...

## 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 UMLCanvasObject
void | sigAssociationEndAdded (UMLAssociation *assoc)
void | sigAssociationEndRemoved (UMLAssociation *assoc)
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

Non-graphical information for a Package.

This class contains the non-graphical information required for a UML Package. This class inherits from UMLCanvasObject which contains most of the information.

Author
  Jonathan Riddell

See also
  UMLCanvasObject 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

## ◆ UMLPackage()

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

Sets up a Package.

Parameters

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

## ◆ ~UMLPackage()

UMLPackage::~UMLPackage | ( |  | ) |
| virtual

Destructor.

## Member Function Documentation

## ◆ addAssocToConcepts()

void UMLPackage::addAssocToConcepts | ( | UMLAssociation * | assoc | ) |

Adds an existing association to the matching concept in the list of concepts. The selection of the matching concept depends on the association type: For generalizations, the assoc is added to the concept that matches role A. For aggregations and compositions, the assoc is added to the concept that matches role B.

Parameters

  assoc | the association to add

## ◆ addObject()

bool UMLPackage::addObject | ( | UMLObject * | pObject,
|  | bool | interactOnConflict = `true`
| ) |  |

Adds an object in this package.

Parameters

  pObject | Pointer to the UMLObject to add.
  interactOnConflict | If pObject's name is already present in the package's contained objects then if true then open a dialog asking the user for a different name; if false then return false without inserting pObject.

Returns
  True if the object was actually added.

## ◆ appendClassesAndInterfaces()

void UMLPackage::appendClassesAndInterfaces | ( | UMLClassifierList & | classifiers,
|  | bool | includeNested = `true`
| ) |  |

Append all classes and interfaces from this package (and those from nested packages) to the given UMLClassifierList.

Parameters

  classifiers | The list to append to.
  includeNested | Whether to include the classifiers from nested packages (default: true.)

## ◆ appendClassifiers()

void UMLPackage::appendClassifiers | ( | UMLClassifierList & | classifiers,
|  | bool | includeNested = `true`
| ) |  |

Append all classifiers from this package (and those from nested packages) to the given UMLClassifierList.

Parameters

  classifiers | The list to append to.
  includeNested | Whether to include the classifiers from nested packages (default: true.)

## ◆ appendEntities()

void UMLPackage::appendEntities | ( | UMLEntityList & | entities,
|  | bool | includeNested = `true`
| ) |  |

Append all entities from this package (and those from nested packages) to the given UMLEntityList.

Parameters

  entities | The list to append to.
  includeNested | Whether to include the entities from nested packages (default: true.)

## ◆ appendPackages()

void UMLPackage::appendPackages | ( | UMLPackageList & | packages,
|  | bool | includeNested = `true`
| ) |  |

Append all packages from this package (and those from nested packages) to the given UMLPackageList.

Parameters

  packages | The list to append to
  includeNested | Whether to include the packages from nested packages (default:true)

## ◆ clone()

UMLObject * UMLPackage::clone | ( |  | ) | const
| virtual

Make a clone of this object.

Reimplemented from UMLObject.

Reimplemented in UMLArtifact, UMLClassifier, UMLComponent, UMLEntity, UMLEnum, and UMLFolder.

## ◆ containedObjects()

UMLObjectList UMLPackage::containedObjects | ( | bool | includeInactive = `false` | ) |

Returns the list of objects contained in this package.

## ◆ copyInto()

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

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

Reimplemented from UMLCanvasObject.

Reimplemented in UMLClassifier, UMLEntity, and UMLEnum.

## ◆ findObject()

UMLObject * UMLPackage::findObject | ( | const QString & | name | ) |

Find the object of the given name in the list of contained objects.

Parameters

  name | The name to seek.

Returns
  Pointer to the UMLObject found or NULL if not found.

## ◆ findObjectById()

UMLObject * UMLPackage::findObjectById | ( | Uml::ID::Type | id | ) |

Find the object of the given ID in the list of contained objects.

Parameters

  id | The ID to seek.

Returns
  Pointer to the UMLObject found or NULL if not found.

## ◆ load1()

bool UMLPackage::load1 | ( | QDomElement & | element | ) |
| protectedvirtual

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

Reimplemented from UMLObject.

Reimplemented in UMLArtifact, UMLClassifier, UMLComponent, UMLDatatype, UMLEntity, UMLEnum, and UMLFolder.

## ◆ removeAllObjects()

void UMLPackage::removeAllObjects | ( |  | ) |
| virtual

Removes all objects from this package. Inner containers (e.g. nested packages) are removed recursively.

## ◆ removeAssocFromConcepts()

void UMLPackage::removeAssocFromConcepts | ( | UMLAssociation * | assoc | ) |

Remove the association from the participating concepts.

Parameters

  assoc | the association to remove

## ◆ removeObject()

void UMLPackage::removeObject | ( | UMLObject * | pObject | ) |

Removes an object from this package. Does not physically delete the object.

Parameters

  pObject | Pointer to the UMLObject to be removed.

## ◆ resolveRef()

bool UMLPackage::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() on each contained object.

Returns
  True for overall success.

Reimplemented from UMLCanvasObject.

Reimplemented in UMLClassifier, and UMLEntity.

## ◆ saveToXMI1()

void UMLPackage::saveToXMI1 | ( | QXmlStreamWriter & | writer | ) |
| virtual

Creates the <UML:Package> XMI element.

Reimplemented from UMLObject.

Reimplemented in UMLArtifact, UMLClassifier, UMLComponent, UMLDatatype, UMLEntity, UMLEnum, and UMLFolder.

## Member Data Documentation

## ◆ m_objects

UMLObjectList UMLPackage::m_objects
| protected

References to the objects contained in this package. The UMLPackage is the owner of the objects. The objects stored here are "standalone" objects which have an existence on their own (such as classifiers, packages). On the other hand, the objects stored in UMLCanvasObject::m_List are "subordinate" objects which cannot exist on their own (such as attributes, operations). They are always slaved to a "standalone" object.

This design may be revisited - m_objects could be merged into UMLCanvasObject::m_List.

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

- umbrello/uml1model/package.h
- umbrello/uml1model/package.cpp