umbrello 25.07.90
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
UMLPackage Class Reference

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

#include <package.h>

Inheritance diagram for UMLPackage:
UMLCanvasObject UMLObject TestUML< UMLPackage, const QString & > UMLArtifact UMLClassifier UMLComponent UMLFolder TestUML< UMLClassifier, const QString & > UMLDatatype UMLEntity UMLEnum

Public Member Functions

 UMLPackage (const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
virtual ~UMLPackage ()
virtual void copyInto (UMLObject *lhs) const
virtual UMLObjectclone () 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)
UMLObjectfindObject (const QString &name) const
UMLObjectfindObjectById (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 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
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)
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=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
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

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< UMLStereotypem_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< UMLObjectm_pSecondary
QString m_SecondaryId
QString m_SecondaryFallback
QStringList m_TaggedValues
UMLObjectPrivatem_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
nameThe name of the Concept.
idThe 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
assocthe association to add

◆ addObject()

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

Adds an object in this package.

Parameters
pObjectPointer to the UMLObject to add.
interactOnConflictIf 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
classifiersThe list to append to.
includeNestedWhether 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
classifiersThe list to append to.
includeNestedWhether 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
entitiesThe list to append to.
includeNestedWhether 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
packagesThe list to append to
includeNestedWhether 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
nameThe 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
idThe 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
assocthe 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
pObjectPointer 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: