umbrello  2.35.1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
entity.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 ENTITY_H
7 #define ENTITY_H
8 
9 #include "classifier.h"
10 
11 // forward declarations
12 class UMLEntityAttribute;
16 class UMLCheckConstraint;
18 
29 class UMLEntity : public UMLClassifier
30 {
31  Q_OBJECT
32 public:
33  explicit UMLEntity(const QString& name = QString(), Uml::ID::Type id = Uml::ID::None);
34  virtual ~UMLEntity();
35 
36  bool operator==(const UMLEntity& rhs) const;
37 
38  virtual void copyInto(UMLObject *lhs) const;
39 
40  virtual UMLObject* clone() const;
41 
42  virtual UMLAttribute* createAttribute(const QString &name = QString(),
44  const QString &init = QString());
45 
46  UMLUniqueConstraint* createUniqueConstraint(const QString &name = QString());
47  UMLForeignKeyConstraint* createForeignKeyConstraint(const QString &name = QString());
48  UMLCheckConstraint* createCheckConstraint(const QString &name = QString());
49 
52  bool addEntityAttribute(UMLEntityAttribute* att, int position);
53 
55 
57 
58  int entityAttributes() const;
59 
60  bool setAsPrimaryKey(UMLUniqueConstraint* uconstr);
61  void unsetPrimaryKey();
62  bool hasPrimaryKey() const;
63  bool isPrimaryKey(const UMLUniqueConstraint* uConstr) const;
64 
65  bool addConstraint(UMLEntityConstraint* constr);
67 
68  virtual bool resolveRef();
69 
70  virtual void saveToXMI(QXmlStreamWriter& writer);
71 
73 
75 
76  virtual UMLClassifierListItem* makeChildObject(const QString& xmiTag);
77 
78 private slots:
80 
81 signals:
86 
87 protected:
88  bool load1(QDomElement& element);
89 
90 private:
91 
99 
100 };
101 
102 #endif // ENTITY_H
103 
UMLObject::id
virtual Uml::ID::Type id() const
Definition: umlobject.cpp:421
UMLEntity
Non-graphical Information for an Entity.
Definition: entity.h:29
UMLObject::asUMLUniqueConstraint
UMLUniqueConstraint * asUMLUniqueConstraint()
Definition: umlobject.cpp:1443
DEBUG_REGISTER
#define DEBUG_REGISTER(src)
Definition: debug_utils.h:129
UMLObject::asUMLEntityAttribute
UMLEntityAttribute * asUMLEntityAttribute()
Definition: umlobject.cpp:1427
UMLObject::ObjectType
ObjectType
Definition: umlobject.h:75
UMLObject::ot_EntityConstraint
@ ot_EntityConstraint
Definition: umlobject.h:100
logDebug1
#define logDebug1(s, a)
Definition: uml.h:541
UMLEntity::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: entity.cpp:67
checkconstraint.h
umluniqueconstraintdialog.h
UMLObject::ot_CheckConstraint
@ ot_CheckConstraint
Definition: umlobject.h:103
UMLEntity::entityAttributes
int entityAttributes() const
Definition: entity.cpp:389
UMLObject::name
QString name() const
Definition: umlobject.cpp:207
UMLEntity::hasPrimaryKey
bool hasPrimaryKey() const
Definition: entity.cpp:562
UMLEntity::~UMLEntity
virtual ~UMLEntity()
Definition: entity.cpp:50
UMLObject::asUMLEntity
UMLEntity * asUMLEntity()
Definition: umlobject.cpp:1426
entity.h
UMLEntity::createAttribute
virtual UMLAttribute * createAttribute(const QString &name=QString(), UMLObject *type=0, Uml::Visibility::Enum vis=Uml::Visibility::Private, const QString &init=QString())
Definition: entity.cpp:97
UMLClassifier::getFilteredList
virtual UMLClassifierListItemList getFilteredList(UMLObject::ObjectType ot) const
Definition: classifier.cpp:999
UMLObject::ot_ForeignKeyConstraint
@ ot_ForeignKeyConstraint
Definition: umlobject.h:102
UMLEntity::removeConstraint
bool removeConstraint(UMLEntityConstraint *constr)
Definition: entity.cpp:600
UMLEntity::operator==
bool operator==(const UMLEntity &rhs) const
Definition: entity.cpp:58
UMLObject::resolveRef
virtual bool resolveRef()
Definition: umlobject.cpp:744
UMLObject::ot_Entity
@ ot_Entity
Definition: umlobject.h:97
foreignkeyconstraint.h
Uml::ID::None
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
UMLForeignKeyConstraint
Sets up Foreign Key entity constraint information.
Definition: foreignkeyconstraint.h:27
UMLCanvasObject::uniqChildName
virtual QString uniqChildName(const UMLObject::ObjectType type, const QString &prefix=QString()) const
Definition: umlcanvasobject.cpp:178
UMLObject::saveToXMI
virtual void saveToXMI(QXmlStreamWriter &writer)
Definition: umlobject.cpp:840
UMLEntity::signalEntityAttributeRemoved
void signalEntityAttributeRemoved(UMLClassifierListItem *eattr)
Definition: entity.cpp:398
umlentityconstraintlist.h
UMLEntity::addConstraint
bool addConstraint(UMLEntityConstraint *constr)
Definition: entity.cpp:577
UMLEntity::entityAttributeAdded
void entityAttributeAdded(UMLClassifierListItem *)
Definition: moc_entity.cpp:211
Uml::ID::toString
QString toString(const ID::Type &id)
Definition: basictypes.cpp:1306
UMLObject::emitModified
void emitModified()
Definition: umlobject.cpp:381
UMLEntity::makeChildObject
virtual UMLClassifierListItem * makeChildObject(const QString &xmiTag)
Definition: entity.cpp:713
UMLUniqueConstraint::removeEntityAttribute
bool removeEntityAttribute(UMLEntityAttribute *attr)
Definition: uniqueconstraint.cpp:281
umlentityattributedialog.h
UMLObject::umlParent
UMLObject * umlParent() const
Definition: umlobject.cpp:676
UMLEntityConstraint
Sets up entity constraint information.
Definition: entityconstraint.h:21
UMLObject::save1end
void save1end(QXmlStreamWriter &writer)
Definition: umlobject.cpp:937
UMLEntity::getEntityAttributes
UMLEntityAttributeList getEntityAttributes() const
Definition: entity.cpp:693
UMLClassifier::resolveRef
virtual bool resolveRef()
Definition: classifier.cpp:691
Uml::ID::Type
std::string Type
Definition: basictypes.h:371
UMLEntity::m_PrimaryKey
UMLUniqueConstraint * m_PrimaryKey
Definition: entity.h:98
UMLEntityAttributeDialog
Definition: umlentityattributedialog.h:26
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
UMLEntity::entityAttributeRemoved
void entityAttributeRemoved(UMLClassifierListItem *)
Definition: moc_entity.cpp:218
UMLObject::baseType
ObjectType baseType() const
Definition: umlobject.cpp:393
UMLObject::asUMLClassifierListItem
UMLClassifierListItem * asUMLClassifierListItem()
Definition: umlobject.cpp:1423
UMLEntity::removeEntityAttribute
int removeEntityAttribute(UMLClassifierListItem *att)
Definition: entity.cpp:370
UMLDoc::signalUMLObjectCreated
void signalUMLObjectCreated(UMLObject *o)
Definition: umldoc.cpp:2039
UMLEntity::load1
bool load1(QDomElement &element)
Definition: entity.cpp:456
UMLClassifier::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: classifier.cpp:642
IDChangeLog::removeChangeByNewID
void removeChangeByNewID(Uml::ID::Type OldID)
Definition: idchangelog.cpp:119
IDChangeLog
Definition: idchangelog.h:21
UMLCanvasObject::operator==
bool operator==(const UMLCanvasObject &rhs) const
Definition: umlcanvasobject.cpp:273
entityattribute.h
uniqueid.h
umlentityattributelist.h
UMLUniqueConstraintDialog
A dialog page to display unique constraint properties.
Definition: umluniqueconstraintdialog.h:30
UMLForeignKeyConstraintDialog
A dialog page to display foreignkey constraint properties.
Definition: umlforeignkeyconstraintdialog.h:37
UMLEntity::createForeignKeyConstraint
UMLForeignKeyConstraint * createForeignKeyConstraint(const QString &name=QString())
Definition: entity.cpp:202
i18n
#define i18n
Definition: main.cpp:35
UMLEntity::setAsPrimaryKey
bool setAsPrimaryKey(UMLUniqueConstraint *uconstr)
Definition: entity.cpp:513
UMLEntity::clone
virtual UMLObject * clone() const
Definition: entity.cpp:81
UMLObject::ot_EntityAttribute
@ ot_EntityAttribute
Definition: umlobject.h:98
UMLEntity::slotEntityAttributeRemoved
void slotEntityAttributeRemoved(UMLClassifierListItem *)
Definition: entity.cpp:624
UMLObject::modified
void modified()
Definition: moc_umlobject.cpp:216
UMLEntity::createUniqueConstraint
UMLUniqueConstraint * createUniqueConstraint(const QString &name=QString())
Definition: entity.cpp:148
UMLEntity::getFilteredList
UMLClassifierListItemList getFilteredList(UMLObject::ObjectType ot) const
Definition: entity.cpp:646
UMLObject::ot_UniqueConstraint
@ ot_UniqueConstraint
Definition: umlobject.h:101
MyProject\connect
connect()
Definition: namespaces-multiple.php:5
logWarn1
#define logWarn1(s, a)
Definition: uml.h:544
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:349
UMLDoc
Definition: umldoc.h:69
UMLAttribute
Sets up attribute information.
Definition: attribute.h:22
UMLCanvasObject::subordinates
UMLObjectList & subordinates() const
Definition: umlcanvasobject.h:77
UMLEntityAttributeList
Definition: umlentityattributelist.h:19
UMLEntity::resolveRef
virtual bool resolveRef()
Definition: entity.cpp:407
UMLEntity::UMLEntity
UMLEntity(const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
Definition: entity.cpp:38
Uml
Definition: basictypes.cpp:22
UMLEntity::isPrimaryKey
bool isPrimaryKey(const UMLUniqueConstraint *uConstr) const
Definition: entity.cpp:680
UniqueID::gen
Uml::ID::Type gen()
Definition: uniqueid.cpp:21
UMLDoc::tagEq
static bool tagEq(const QString &tag, const QString &pattern)
Definition: umldoc.cpp:3652
logWarn0
#define logWarn0(s)
Definition: uml.h:538
Uml::Visibility::Enum
Enum
Definition: basictypes.h:45
UMLClassifierListItemList
Definition: umlclassifierlistitemlist.h:21
classifier.h
UMLEntity::saveToXMI
virtual void saveToXMI(QXmlStreamWriter &writer)
Definition: entity.cpp:434
UMLObject::loadFromXMI
virtual bool loadFromXMI(QDomElement &element)
Definition: umlobject.cpp:1027
uniqueconstraint.h
uml.h
UMLCheckConstraint
Sets up Check Constraint information for UMLEntities.
Definition: checkconstraint.h:20
UMLCheckConstraintDialog
A dialog page to display check constraint properties.
Definition: umlcheckconstraintdialog.h:25
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:34
debug_utils.h
UMLEntity::entityConstraintRemoved
void entityConstraintRemoved(UMLClassifierListItem *)
Definition: moc_entity.cpp:232
UMLEntity::addEntityAttribute
UMLObject * addEntityAttribute(const QString &name, Uml::ID::Type id=Uml::ID::None)
Definition: entity.cpp:302
UMLUniqueConstraint::hasEntityAttribute
bool hasEntityAttribute(UMLEntityAttribute *attr) const
Definition: uniqueconstraint.cpp:228
idchangelog.h
UMLEntity::createCheckConstraint
UMLCheckConstraint * createCheckConstraint(const QString &name=QString())
Definition: entity.cpp:251
UMLObject::init
void init()
Definition: umlobject.cpp:122
Uml::Visibility::Private
@ Private
Definition: basictypes.h:47
UMLEntityAttribute
Sets up entityattribute information.
Definition: entityattribute.h:20
umlcheckconstraintdialog.h
umlforeignkeyconstraintdialog.h
UMLClassifier::findChildObjectById
virtual UMLObject * findChildObjectById(Uml::ID::Type id, bool considerAncestors=false) const
Definition: classifier.cpp:545
UMLCanvasObject::findChildObject
virtual UMLObject * findChildObject(const QString &n, UMLObject::ObjectType t=UMLObject::ot_UMLObject) const
Definition: umlcanvasobject.cpp:237
UMLClassifierListItem
A base class for classifier list items (e.g. attributes)
Definition: classifierlistitem.h:24
UMLApp::document
UMLDoc * document() const
Definition: uml.cpp:1139
umldoc.h
UMLEntity::entityConstraintAdded
void entityConstraintAdded(UMLClassifierListItem *)
Definition: moc_entity.cpp:225
UMLUniqueConstraint
Sets up Unique entity constraint information.
Definition: uniqueconstraint.h:23
UMLObject::save1
void save1(QXmlStreamWriter &writer, const QString &type, const QString &tag=QString())
Definition: umlobject.cpp:861
UMLEntity::unsetPrimaryKey
void unsetPrimaryKey()
Definition: entity.cpp:553
logDebug0
#define logDebug0(s)
Definition: uml.h:535