umbrello  2.39.2
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
package.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2003-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef PACKAGE_H
7 #define PACKAGE_H
8 
9 #include "umlcanvasobject.h"
10 #include "umlclassifierlist.h"
11 #include "umlentitylist.h"
12 
13 // forward declarations
14 class UMLAssociation;
15 
28 {
29  Q_OBJECT
30 public:
31  explicit UMLPackage(const QString & name = QString(), Uml::ID::Type id = Uml::ID::None);
32  virtual ~UMLPackage();
33 
34  virtual void copyInto(UMLObject *lhs) const;
35 
36  virtual UMLObject* clone() const;
37 
38  bool addObject(UMLObject *pObject, bool interactOnConflict = true);
39  virtual void removeObject(UMLObject *pObject);
40 
41  virtual void removeAllObjects();
42 
43  UMLObjectList containedObjects(bool includeInactive = false) const;
44 
47 
48  UMLObject * findObject(const QString &name) const;
50 
51  void appendPackages(UMLPackageList& packages, bool includeNested = true) const;
52  void appendClassifiers(UMLClassifierList& classifiers,
53  bool includeNested = true) const;
55  bool includeNested = true) const;
56  void appendEntities(UMLEntityList& entities,
57  bool includeNested = true) const;
58 
59  virtual bool resolveRef();
60 
61  virtual void saveToXMI(QXmlStreamWriter& writer);
62 
63 protected:
64  virtual bool load1(QDomElement& element);
65 
79 
80 };
81 
82 #endif
Sets up association information.
Definition: association.h:29
Non-graphical information for a UMLCanvasObject.
Definition: umlcanvasobject.h:32
Definition: umlobjectlist.h:25
The base class for UML objects.
Definition: umlobject.h:70
QString name() const
Definition: umlobject.cpp:207
UMLPackageList packages(bool includeRoot=false) const
Definition: umlobject.cpp:602
Non-graphical information for a Package.
Definition: package.h:28
void appendEntities(UMLEntityList &entities, bool includeNested=true) const
Definition: package.cpp:377
virtual void saveToXMI(QXmlStreamWriter &writer)
Definition: package.cpp:443
UMLPackage(const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
Definition: package.cpp:38
UMLObject * findObject(const QString &name) const
Definition: package.cpp:295
virtual void removeAllObjects()
Definition: package.cpp:250
UMLObjectList containedObjects(bool includeInactive=false) const
Definition: package.cpp:269
virtual void copyInto(UMLObject *lhs) const
Definition: package.cpp:54
void appendClassesAndInterfaces(UMLClassifierList &classifiers, bool includeNested=true) const
Definition: package.cpp:401
virtual UMLObject * clone() const
Definition: package.cpp:66
void appendClassifiers(UMLClassifierList &classifiers, bool includeNested=true) const
Definition: package.cpp:353
virtual void removeObject(UMLObject *pObject)
Definition: package.cpp:211
void appendPackages(UMLPackageList &packages, bool includeNested=true) const
Definition: package.cpp:330
UMLObject * findObjectById(Uml::ID::Type id) const
Definition: package.cpp:317
bool addObject(UMLObject *pObject, bool interactOnConflict=true)
Definition: package.cpp:135
virtual bool load1(QDomElement &element)
Definition: package.cpp:468
UMLObjectList m_objects
Definition: package.h:78
virtual ~UMLPackage()
Definition: package.cpp:47
virtual bool resolveRef()
Definition: package.cpp:425
void removeAssocFromConcepts(UMLAssociation *assoc)
Definition: package.cpp:110
void addAssocToConcepts(UMLAssociation *assoc)
Definition: package.cpp:82
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
std::string Type
Definition: basictypes.h:371
QList< UMLClassifier * > UMLClassifierList
Definition: umlclassifierlist.h:12
QList< UMLEntity * > UMLEntityList
Definition: umlentitylist.h:12
QList< UMLPackage * > UMLPackageList
Definition: umlpackagelist.h:11