umbrello  2.35.0
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
UMLPackage::removeAllObjects
virtual void removeAllObjects()
Definition: package.cpp:250
UMLObject::id
virtual Uml::ID::Type id() const
Definition: umlobject.cpp:421
UMLEntity
Non-graphical Information for an Entity.
Definition: entity.h:29
document
GNU GENERAL PUBLIC LICENSE June Free Software Inc Franklin Fifth USA Everyone is permitted to copy and distribute verbatim copies of this license document
Definition: GPL-2.0-only.txt:8
UMLPackage::addAssocToConcepts
void addAssocToConcepts(UMLAssociation *assoc)
Definition: package.cpp:82
UMLPackage::clone
virtual UMLObject * clone() const
Definition: package.cpp:66
datatype.h
DEBUG_REGISTER
#define DEBUG_REGISTER(src)
Definition: debug_utils.h:129
UMLObject::ObjectType
ObjectType
Definition: umlobject.h:75
logDebug1
#define logDebug1(s, a)
Definition: uml.h:541
UMLCanvasObject::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: umlcanvasobject.cpp:297
UMLObject::name
QString name() const
Definition: umlobject.cpp:207
UMLPackage::load1
virtual bool load1(QDomElement &element)
Definition: package.cpp:468
UMLDatatype::isActive
bool isActive() const
Definition: datatype.cpp:78
Uml::AssociationType::hasUMLRepresentation
bool hasUMLRepresentation(Enum item)
Definition: basictypes.cpp:448
UMLCanvasObject
Non-graphical information for a UMLCanvasObject.
Definition: umlcanvasobject.h:31
UMLEntityList
QList< UMLEntity * > UMLEntityList
Definition: umlentitylist.h:12
UMLObject::ot_Association
@ ot_Association
Definition: umlobject.h:87
UMLObject::asUMLEntity
UMLEntity * asUMLEntity()
Definition: umlobject.cpp:1426
UMLDatatype::setActive
void setActive(bool active=true)
Definition: datatype.cpp:69
entity.h
UMLPackage::appendClassesAndInterfaces
void appendClassesAndInterfaces(UMLClassifierList &classifiers, bool includeNested=true) const
Definition: package.cpp:401
UMLPackage::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: package.cpp:54
UMLDatatype
Non-graphical information for a Datatype.
Definition: datatype.h:20
UMLObject::resolveRef
virtual bool resolveRef()
Definition: umlobject.cpp:744
Uml::ID::None
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
Uml::RoleType::A
@ A
Definition: basictypes.h:237
UMLPackage::containedObjects
UMLObjectList containedObjects(bool includeInactive=false) const
Definition: package.cpp:269
logError0
#define logError0(s)
Definition: uml.h:539
UMLObject::saveToXMI
virtual void saveToXMI(QXmlStreamWriter &writer)
Definition: umlobject.cpp:840
object_factory.h
Uml::ID::toString
QString toString(const ID::Type &id)
Definition: basictypes.cpp:1306
UMLCanvasObject::removeAllChildObjects
virtual void removeAllChildObjects()
Definition: umlcanvasobject.cpp:159
umlcanvasobject.h
association.h
UMLObject::setName
virtual void setName(const QString &strName)
Definition: umlobject.cpp:188
UMLObject::umlPackage
UMLPackage * umlPackage() const
Definition: umlobject.cpp:651
UMLObject::save1end
void save1end(QXmlStreamWriter &writer)
Definition: umlobject.cpp:937
UMLPackage::findObject
UMLObject * findObject(const QString &name) const
Definition: package.cpp:295
UMLClassifierList
QList< UMLClassifier * > UMLClassifierList
Definition: umlclassifierlist.h:12
Dialog_Utils::askName
bool askName(const QString &title, const QString &prompt, QString &name)
Definition: dialog_utils.cpp:191
UMLObject::ot_Package
@ ot_Package
Definition: umlobject.h:81
Uml::ID::Type
std::string Type
Definition: basictypes.h:371
model_utils.h
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
UMLAssociation::getObject
UMLObject * getObject(Uml::RoleType::Enum role) const
Definition: association.cpp:505
UMLObject::baseType
ObjectType baseType() const
Definition: umlobject.cpp:393
optionstate.h
Settings::optionState
OptionState & optionState()
Definition: optionstate.cpp:357
UMLObject::asUMLAssociation
UMLAssociation * asUMLAssociation()
Definition: umlobject.cpp:1417
UMLObject::asUMLDatatype
UMLDatatype * asUMLDatatype()
Definition: umlobject.cpp:1425
UMLPackage::appendClassifiers
void appendClassifiers(UMLClassifierList &classifiers, bool includeNested=true) const
Definition: package.cpp:353
umlentitylist.h
UMLObject::asUMLPackage
UMLPackage * asUMLPackage()
Definition: umlobject.cpp:1438
Model_Utils::uniqObjectName
QString uniqObjectName(UMLObject::ObjectType type, UMLPackage *parentPkg, QString prefix)
Definition: model_utils.cpp:555
Model_Utils::findObjectInList
UMLObject * findObjectInList(Uml::ID::Type id, const UMLObjectList &inList)
Definition: model_utils.cpp:113
logDebug2
#define logDebug2(s, a, b)
Definition: uml.h:547
folder.h
i18n
#define i18n
Definition: main.cpp:35
UMLPackage::removeObject
virtual void removeObject(UMLObject *pObject)
Definition: package.cpp:211
umlclassifierlist.h
UMLPackage::resolveRef
virtual bool resolveRef()
Definition: package.cpp:425
Model_Utils::isCommonXMI1Attribute
bool isCommonXMI1Attribute(const QString &tag)
Definition: model_utils.cpp:808
UMLAssociation::getObjectId
Uml::ID::Type getObjectId(Uml::RoleType::Enum role) const
Definition: association.cpp:517
UMLObject::packages
UMLPackageList packages(bool includeRoot=false) const
Definition: umlobject.cpp:602
UMLObject::asUMLClassifier
UMLClassifier * asUMLClassifier()
Definition: umlobject.cpp:1422
Uml::RoleType::B
@ B
Definition: basictypes.h:238
UMLPackage::m_objects
UMLObjectList m_objects
Definition: package.h:78
UMLObject::asUMLCanvasObject
UMLCanvasObject * asUMLCanvasObject()
Definition: umlobject.cpp:1419
logWarn1
#define logWarn1(s, a)
Definition: uml.h:544
c
type show c for details The hypothetical commands show w and show c should show the appropriate parts of the General Public License Of the commands you use may be called something other than show w and show c
Definition: GPL-2.0-only.txt:301
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:349
UMLPackage::UMLPackage
UMLPackage(const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
Definition: package.cpp:38
UMLObject::isUMLDatatype
bool isUMLDatatype() const
Definition: umlobject.h:204
UMLApp::activeLanguageIsCaseSensitive
bool activeLanguageIsCaseSensitive() const
Definition: uml.cpp:2716
UMLPackage::~UMLPackage
virtual ~UMLPackage()
Definition: package.cpp:47
Uml
Definition: basictypes.cpp:22
UMLPackageList
QList< UMLPackage * > UMLPackageList
Definition: umlpackagelist.h:11
UMLCanvasObject::resolveRef
virtual bool resolveRef()
Definition: umlcanvasobject.cpp:441
UMLDoc::tagEq
static bool tagEq(const QString &tag, const QString &pattern)
Definition: umldoc.cpp:3652
classifier.h
UMLObject::loadFromXMI
virtual bool loadFromXMI(QDomElement &element)
Definition: umlobject.cpp:1027
UMLPackage::appendPackages
void appendPackages(UMLPackageList &packages, bool includeNested=true) const
Definition: package.cpp:330
uml.h
UMLObject::baseTypeStr
QLatin1String baseTypeStr() const
Definition: umlobject.cpp:401
UMLPackage::appendEntities
void appendEntities(UMLEntityList &entities, bool includeNested=true) const
Definition: package.cpp:377
UMLObject::setUMLPackage
bool setUMLPackage(UMLPackage *pPkg)
Definition: umlobject.cpp:620
Object_Factory::makeObjectFromXMI
UMLObject * makeObjectFromXMI(const QString &xmiTag, const QString &stereoID)
Definition: object_factory.cpp:380
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:34
debug_utils.h
UMLAssociation
Sets up association information.
Definition: association.h:28
UMLPackage::saveToXMI
virtual void saveToXMI(QXmlStreamWriter &writer)
Definition: package.cpp:443
UMLPackage::findObjectById
UMLObject * findObjectById(Uml::ID::Type id) const
Definition: package.cpp:317
UMLAssociation::getAssocType
Uml::AssociationType::Enum getAssocType() const
Definition: association.cpp:101
UMLPackage::removeAssocFromConcepts
void removeAssocFromConcepts(UMLAssociation *assoc)
Definition: package.cpp:110
UMLPackage::addObject
bool addObject(UMLObject *pObject, bool interactOnConflict=true)
Definition: package.cpp:135
uIgnoreZeroPointer
#define uIgnoreZeroPointer(a)
Definition: debug_utils.h:142
dialog_utils.h
package.h
logWarn2
#define logWarn2(s, a, b)
Definition: uml.h:550
UMLObject::ot_Folder
@ ot_Folder
Definition: umlobject.h:99
UMLObjectList
Definition: umlobjectlist.h:24
umldoc.h
UMLObject::save1
void save1(QXmlStreamWriter &writer, const QString &type, const QString &tag=QString())
Definition: umlobject.cpp:861
logError2
#define logError2(s, a, b)
Definition: uml.h:551
UMLPackage
Non-graphical information for a Package.
Definition: package.h:27