umbrello  2.35.1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
umlcanvasobject.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2002-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef CANVASOBJECT_H
7 #define CANVASOBJECT_H
8 
9 #include "umlobject.h"
10 #include "umlobjectlist.h"
11 #include "umlclassifierlist.h"
12 #include "umlassociationlist.h"
13 
31 class UMLCanvasObject : public UMLObject
32 {
33  Q_OBJECT
34 
35 public:
36  explicit UMLCanvasObject(const QString & name = QString(), Uml::ID::Type id = Uml::ID::None);
37  virtual ~UMLCanvasObject();
38 
39  bool operator==(const UMLCanvasObject& rhs) const;
40 
41  virtual void copyInto(UMLObject *lhs) const;
42 
43  // The abstract method UMLObject::clone() is implemented
44  // in the classes inheriting from UMLCanvasObject.
45 
46  bool addAssociationEnd(UMLAssociation* assoc);
47 
48  bool hasAssociation(UMLAssociation* assoc) const;
49 
51 
53 
54  int associations() const;
55 
57 
59 
60  UMLClassifierList getSuperClasses(bool withRealizations = true) const;
62 
63  virtual UMLAssociationList getRealizations() const;
64 
68 
69  virtual UMLObject *findChildObject(const QString &n,
71  virtual UMLObject *findChildObjectById(Uml::ID::Type id, bool considerAncestors = false) const;
72 
73  virtual QString uniqChildName(const UMLObject::ObjectType type,
74  const QString &prefix = QString()) const;
75  virtual void removeAllChildObjects();
76 
78  m_List.removeAll(0);
79  return m_List;
80  }
81 
82  virtual bool resolveRef();
83 
84  // The abstract method UMLObject::saveToXMI() is implemented
85  // in the classes inheriting from UMLCanvasObject.
86 
87 private:
88 
98 
99 signals:
100 
103 
104 };
105 
106 #endif
UMLObject::id
virtual Uml::ID::Type id() const
Definition: umlobject.cpp:421
UMLCanvasObject::getCompositions
UMLAssociationList getCompositions() const
Definition: umlcanvasobject.cpp:423
template.h
UMLObject::ObjectType
ObjectType
Definition: umlobject.h:75
UMLCanvasObject::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: umlcanvasobject.cpp:297
UMLObject::ot_CheckConstraint
@ ot_CheckConstraint
Definition: umlobject.h:103
UMLObject::name
QString name() const
Definition: umlobject.cpp:207
stereotype.h
UMLCanvasObject
Non-graphical information for a UMLCanvasObject.
Definition: umlcanvasobject.h:31
UMLCanvasObject::getRealizations
virtual UMLAssociationList getRealizations() const
Definition: umlcanvasobject.cpp:403
UMLObject::ot_Association
@ ot_Association
Definition: umlobject.h:87
UMLCanvasObject::removeAllAssociationEnds
void removeAllAssociationEnds()
Definition: umlcanvasobject.cpp:125
UMLObject::ot_ForeignKeyConstraint
@ ot_ForeignKeyConstraint
Definition: umlobject.h:102
UMLCanvasObject::sigAssociationEndRemoved
void sigAssociationEndRemoved(UMLAssociation *assoc)
Definition: moc_umlcanvasobject.cpp:148
UMLObject::resolveRef
virtual bool resolveRef()
Definition: umlobject.cpp:744
operation.h
DEBUG_REGISTER_DISABLED
#define DEBUG_REGISTER_DISABLED(src)
Definition: debug_utils.h:135
DEBUG
#define DEBUG()
Definition: debug_utils.h:127
Uml::ID::None
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
Uml::RoleType::A
@ A
Definition: basictypes.h:237
UMLCanvasObject::uniqChildName
virtual QString uniqChildName(const UMLObject::ObjectType type, const QString &prefix=QString()) const
Definition: umlcanvasobject.cpp:178
UMLObject::ot_Attribute
@ ot_Attribute
Definition: umlobject.h:88
UMLCanvasObject::~UMLCanvasObject
virtual ~UMLCanvasObject()
Definition: umlcanvasobject.cpp:40
Uml::ID::toString
QString toString(const ID::Type &id)
Definition: basictypes.cpp:1306
UMLCanvasObject::removeAllChildObjects
virtual void removeAllChildObjects()
Definition: umlcanvasobject.cpp:159
UMLObject::emitModified
void emitModified()
Definition: umlobject.cpp:381
umlcanvasobject.h
association.h
UMLClassifierList
QList< UMLClassifier * > UMLClassifierList
Definition: umlclassifierlist.h:12
Uml::ID::Type
std::string Type
Definition: basictypes.h:371
UMLObject::ot_UMLObject
@ ot_UMLObject
Definition: umlobject.h:78
Uml::AssociationType::Relationship
@ Relationship
Definition: basictypes.h:112
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
UMLCanvasObject::findChildObjectById
virtual UMLObject * findChildObjectById(Uml::ID::Type id, bool considerAncestors=false) const
Definition: umlcanvasobject.cpp:260
UMLAssociation::getObject
UMLObject * getObject(Uml::RoleType::Enum role) const
Definition: association.cpp:505
UMLObject::baseType
ObjectType baseType() const
Definition: umlobject.cpp:393
UMLObject::ot_EnumLiteral
@ ot_EnumLiteral
Definition: umlobject.h:90
UMLObject::asUMLAssociation
UMLAssociation * asUMLAssociation()
Definition: umlobject.cpp:1417
Uml::AssociationType::Aggregation
@ Aggregation
Definition: basictypes.h:94
UMLCanvasObject::hasAssociation
bool hasAssociation(UMLAssociation *assoc) const
Definition: umlcanvasobject.cpp:97
UMLCanvasObject::m_List
UMLObjectList m_List
Definition: umlcanvasobject.h:97
UMLCanvasObject::associations
int associations() const
Definition: umlcanvasobject.cpp:313
UMLCanvasObject::operator==
bool operator==(const UMLCanvasObject &rhs) const
Definition: umlcanvasobject.cpp:273
UMLCanvasObject::getAssociations
UMLAssociationList getAssociations() const
Definition: umlcanvasobject.cpp:328
attribute.h
number
it is up to the author donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License If the distribution and or use of the Library is restricted in certain countries either by patents or by copyrighted the original copyright holder who places the Library under this License may add an geographical distribution limitation excluding those so that distribution is permitted only in or among countries not thus excluded In such this License incorporates the limitation as if written in the body of this License The Free Software Foundation may publish revised and or new versions of the Library General Public License from time to time Such new versions will be similar in spirit to the present but may differ in detail to address new problems or concerns Each version is given a distinguishing version number If the Library specifies a version number of this License which applies to it and any later you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation If the Library does not specify a license version number
Definition: LGPL-2.0-only.txt:368
a
QString a
Definition: petalnode.cpp:13
UMLCanvasObject::removeAssociationEnd
int removeAssociationEnd(UMLAssociation *assoc)
Definition: umlcanvasobject.cpp:110
UMLObject::copyInto
virtual void copyInto(UMLObject *lhs) const
Definition: umlobject.cpp:310
i18n
#define i18n
Definition: main.cpp:35
umlclassifierlist.h
UMLObject::ot_EntityAttribute
@ ot_EntityAttribute
Definition: umlobject.h:98
UMLCanvasObject::sigAssociationEndAdded
void sigAssociationEndAdded(UMLAssociation *assoc)
Definition: moc_umlcanvasobject.cpp:141
UMLCanvasObject::UMLCanvasObject
UMLCanvasObject(const QString &name=QString(), Uml::ID::Type id=Uml::ID::None)
Definition: umlcanvasobject.cpp:32
Uml::RoleType::B
@ B
Definition: basictypes.h:238
UMLObject::toString
static QString toString(ObjectType ot)
Definition: umlobject.cpp:1214
UMLObject::ot_UniqueConstraint
@ ot_UniqueConstraint
Definition: umlobject.h:101
UMLCanvasObject::getSpecificAssocs
UMLAssociationList getSpecificAssocs(Uml::AssociationType::Enum assocType) const
Definition: umlcanvasobject.cpp:57
UMLObject::asUMLCanvasObject
UMLCanvasObject * asUMLCanvasObject()
Definition: umlobject.cpp:1419
Uml::AssociationType::Enum
Enum
Definition: basictypes.h:92
logWarn1
#define logWarn1(s, a)
Definition: uml.h:544
Uml::AssociationType::Generalization
@ Generalization
Definition: basictypes.h:93
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
UMLObject::ot_Instance
@ ot_Instance
Definition: umlobject.h:86
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:349
UMLCanvasObject::subordinates
UMLObjectList & subordinates() const
Definition: umlcanvasobject.h:77
UMLApp::activeLanguageIsCaseSensitive
bool activeLanguageIsCaseSensitive() const
Definition: uml.cpp:2716
Uml
Definition: basictypes.cpp:22
UMLCanvasObject::resolveRef
virtual bool resolveRef()
Definition: umlcanvasobject.cpp:441
UMLCanvasObject::getRelationships
UMLAssociationList getRelationships() const
Definition: umlcanvasobject.cpp:433
classifier.h
uml.h
UMLClassifier
Information for a non-graphical Concept/Class.
Definition: classifier.h:34
debug_utils.h
UMLCanvasObject::addAssociationEnd
bool addAssociationEnd(UMLAssociation *assoc)
Definition: umlcanvasobject.cpp:76
umlassociationlist.h
UMLAssociation
Sets up association information.
Definition: association.h:28
UMLCanvasObject::getSubClasses
UMLClassifierList getSubClasses() const
Definition: umlcanvasobject.cpp:377
umlobject.h
UMLObject::ot_Template
@ ot_Template
Definition: umlobject.h:91
UMLDoc::removeAssociation
void removeAssociation(UMLAssociation *assoc, bool doSetModified=true)
Definition: umldoc.cpp:1453
Uml::AssociationType::Composition
@ Composition
Definition: basictypes.h:103
idchangelog.h
b
bool b
Definition: cxx11-null-pointer-constant.h:6
uIgnoreZeroPointer
#define uIgnoreZeroPointer(a)
Definition: debug_utils.h:142
UMLObject::ot_Operation
@ ot_Operation
Definition: umlobject.h:89
umlobjectlist.h
UMLCanvasObject::findChildObject
virtual UMLObject * findChildObject(const QString &n, UMLObject::ObjectType t=UMLObject::ot_UMLObject) const
Definition: umlcanvasobject.cpp:237
UMLObjectList
Definition: umlobjectlist.h:24
UMLAssociationList
QList< UMLAssociation * > UMLAssociationList
Definition: umlassociationlist.h:12
UMLApp::document
UMLDoc * document() const
Definition: uml.cpp:1139
Uml::AssociationType::Realization
@ Realization
Definition: basictypes.h:104
umldoc.h
UMLCanvasObject::getAggregations
UMLAssociationList getAggregations() const
Definition: umlcanvasobject.cpp:413
UMLCanvasObject::getSuperClasses
UMLClassifierList getSuperClasses(bool withRealizations=true) const
Definition: umlcanvasobject.cpp:348