umbrello: UMLPackage Class Reference

umbrello 25.04.0 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)
virtual void | removeObject (UMLObject *pObject)
virtual void | removeAllObjects ()
UMLObjectList | containedObjects (bool includeInactive=false) const
void | addAssocToConcepts (UMLAssociation *assoc)
void | removeAssocFromConcepts (UMLAssociation *assoc)
UMLObject * | findObject (const QString &name) const
UMLObject * | findObjectById (Uml::ID::Type id) const
void | appendPackages (UMLPackageList &packages, bool includeNested=true) const
void | appendClassifiers (UMLClassifierList &classifiers, bool includeNested=true) const
void | appendClassesAndInterfaces (UMLClassifierList &classifiers, bool includeNested=true) const
void | appendEntities (UMLEntityList &entities, bool includeNested=true) const
virtual bool | resolveRef ()
virtual void | saveToXMI (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) 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 UMLObject * | findChildObject (const QString &n, UMLObject::ObjectType t=UMLObject::ot_UMLObject) const
virtual UMLObject * | findChildObjectById (Uml::ID::Type id, bool considerAncestors=false) const
virtual QString | uniqChildName (const UMLObject::ObjectType type, const QString &prefix=QString()) const
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 () 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 | showPropertiesDialog (QWidget *parent=nullptr)
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
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
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

## 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 classifier in the list of concepts. The selection of the matching classifier depends on the association type: For generalizations, the assoc is added to the classifier that matches role A. For aggregations and compositions, the assoc is added to the classifier 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 ) const

Append all classes, interfaces, and enums 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 ) const

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 ) const

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 ) const

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 | ) | const

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 | ) | const

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 | ) | const

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 | ) |
| virtual

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

Parameters

  pObject | Pointer to the UMLObject to be removed.

Reimplemented in UMLClassifier.

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

## ◆ saveToXMI()

void UMLPackage::saveToXMI | ( | 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/umlmodel/package.h
- umbrello/umlmodel/package.cpp