umbrello  2.34.3
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
import_utils.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2005-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef IMPORT_UTILS_H
7 #define IMPORT_UTILS_H
8 
9 #include "basictypes.h"
10 #include "folder.h"
11 #include "umlattributelist.h"
12 
13 #include <QStringList>
14 
15 class UMLObject;
16 class UMLClassifier;
17 class UMLPackage;
18 class UMLOperation;
19 class UMLEnum;
20 class UMLScene;
21 
22 class QMimeData;
23 
29 namespace Import_Utils {
30 
31  UMLFolder *createSubDir(const QString& name,
32  UMLFolder *parentPkg,
33  const QString &comment = QString());
34 
35  UMLObject *createArtifactFolder(const QString& name,
36  UMLPackage *parentPkg,
37  const QString &comment);
38 
39  UMLObject *createArtifact(const QString& name,
40  UMLFolder *parentPkg = NULL,
41  const QString &comment = QString());
42 
43  void checkStdString(QString& typeName);
44 
46  const QString& name,
47  UMLPackage *parentPkg = 0,
48  const QString& comment = QString(),
49  const QString& stereotype = QString(),
50  bool searchInParentPackageOnly = false,
51  bool remapParent = true);
52 
53  UMLObject* createUMLObjectHierarchy(UMLObject::ObjectType type, const QString &name, UMLPackage *parentPkg);
54 
55  void putAtGlobalScope(bool yesno);
56 
58 
59  void assignUniqueIdOnCreation(bool yesno);
60 
62  const QString& name,
63  const QString& type,
64  const QString& comment = QString(),
65  bool isStatic = false);
67  const QString& name,
68  UMLClassifier *attrType,
69  const QString& comment = QString(),
70  bool isStatic = false);
71 
72  UMLOperation* makeOperation(UMLClassifier *parent, const QString &name);
73 
74  void insertMethod(UMLClassifier *klass, UMLOperation* &op,
75  Uml::Visibility::Enum scope, const QString& type,
76  bool isStatic, bool isAbstract,
77  bool isFriend = false, bool isConstructor = false, bool isDestructor = false,
78  const QString& comment = QString());
79 
81  const QString& type,
82  const QString& name);
83 
84  void addEnumLiteral(UMLEnum *enumType, const QString &literal,
85  const QString &comment = QString(),
86  const QString &value = QString());
87 
89  void createGeneralization(UMLClassifier *child, const QString &parentName);
90 
91  UMLEnum *remapUMLEnum(UMLObject *ns, UMLPackage *currentScope);
92 
93  QString formatComment(const QString &comment);
94 
95  QStringList includePathList();
96 
97  void addIncludePath(const QString& path);
98 
100 
101  bool isDatatype(const QString& name, UMLPackage *parentPkg = 0);
102 
104 
105 } // end namespace Import_Utils
106 
107 #endif
UMLObject::isUMLPackage
bool isUMLPackage() const
Definition: umlobject.h:217
umlattributelist.h
datatype.h
template.h
UMLOperation::addParm
void addParm(UMLAttribute *parameter, int position=-1)
Definition: operation.cpp:276
UMLDoc::findAssociation
UMLAssociation * findAssociation(Uml::AssociationType::Enum assocType, const UMLObject *roleAObj, const UMLObject *roleBObj, bool *swap=0) const
Definition: umldoc.cpp:1443
Import_Utils::insertAttribute
UMLAttribute * insertAttribute(UMLClassifier *owner, Uml::Visibility::Enum scope, const QString &name, UMLClassifier *attrType, const QString &comment, bool isStatic)
Definition: import_utils.cpp:452
Uml::ProgrammingLanguage::scopeSeparator
QString scopeSeparator(Enum item)
Definition: basictypes.cpp:1152
UMLObject::asUMLFolder
UMLFolder * asUMLFolder()
Definition: umlobject.cpp:1429
UMLAttributeListIt
QListIterator< UMLAttribute * > UMLAttributeListIt
Definition: umlattributelist.h:14
UMLObject::ObjectType
ObjectType
Definition: umlobject.h:75
logDebug1
#define logDebug1(s, a)
Definition: uml.h:539
UMLDoc::datatypeFolder
UMLFolder * datatypeFolder() const
Definition: umldoc.cpp:2974
Uml::ProgrammingLanguage::Enum
Enum
Definition: basictypes.h:291
UMLClassifier::isInterface
bool isInterface() const
Definition: classifier.cpp:116
UMLArtifact
Non-graphical information for a Artifact.
Definition: artifact.h:22
UMLAttributeList
Definition: umlattributelist.h:20
UMLObject::name
QString name() const
Definition: umlobject.cpp:207
Import_Utils::createUMLObjectHierarchy
UMLObject * createUMLObjectHierarchy(UMLObject::ObjectType type, const QString &name, UMLPackage *topLevelParent)
Definition: import_utils.cpp:402
Import_Utils::createArtifact
UMLObject * createArtifact(const QString &name, UMLFolder *parentPkg, const QString &comment)
Definition: import_utils.cpp:703
UMLOperation::getParmList
UMLAttributeList getParmList() const
Definition: operation.cpp:177
UMLObject::ot_Artifact
@ ot_Artifact
Definition: umlobject.h:93
UMLObject::ot_Association
@ ot_Association
Definition: umlobject.h:87
Import_Utils::newUMLObjectWasCreated
bool newUMLObjectWasCreated()
Definition: import_utils.cpp:110
UMLObject::setStatic
void setStatic(bool bStatic)
Definition: umlobject.cpp:370
UMLDatatype
Non-graphical information for a Datatype.
Definition: datatype.h:20
Uml::ProgrammingLanguage::Java
@ Java
Definition: basictypes.h:298
Object_Factory::createUMLObject
UMLObject * createUMLObject(UMLObject::ObjectType type, const QString &n, UMLPackage *parentPkg, bool solicitNewName)
Definition: object_factory.cpp:209
UMLDoc::removeUMLObject
void removeUMLObject(UMLObject *umlobject, bool deleteObject=false)
Definition: umldoc.cpp:1898
UMLListViewItem
Items used by UMLListView.
Definition: umllistviewitem.h:35
UMLObject::ot_Class
@ ot_Class
Definition: umlobject.h:85
operation.h
UMLObject::setVisibilityCmd
void setVisibilityCmd(Uml::Visibility::Enum visibility)
Definition: umlobject.cpp:482
DEBUG_REGISTER_DISABLED
#define DEBUG_REGISTER_DISABLED(src)
Definition: debug_utils.h:135
UMLAttribute::getInitialValue
QString getInitialValue() const
Definition: attribute.cpp:100
Import_Utils::createGeneralization
UMLAssociation * createGeneralization(UMLClassifier *child, UMLClassifier *parent)
Definition: import_utils.cpp:627
Uml::ID::None
const Type None
special value for uninitialized ID
Definition: basictypes.h:373
UMLPackage::containedObjects
UMLObjectList containedObjects(bool includeInactive=false) const
Definition: package.cpp:265
Uml::ModelType::Logical
@ Logical
Definition: basictypes.h:28
Model_Utils::findUMLObject
UMLObject * findUMLObject(const UMLObjectList &inList, const QString &inName, UMLObject::ObjectType type, UMLObject *currentObj)
Definition: model_utils.cpp:185
UMLObject::ot_Attribute
@ ot_Attribute
Definition: umlobject.h:88
artifact.h
object_factory.h
UMLObject::ot_Interface
@ ot_Interface
Definition: umlobject.h:82
logError1
#define logError1(s, a)
Definition: uml.h:543
association.h
UMLObject::umlParent
UMLObject * umlParent() const
Definition: umlobject.cpp:676
Import_Utils::createUMLObject
UMLObject * createUMLObject(UMLObject::ObjectType type, const QString &inName, UMLPackage *parentPkg, const QString &comment, const QString &stereotype, bool searchInParentPackageOnly, bool remapParent)
Definition: import_utils.cpp:184
UMLObject::umlPackage
UMLPackage * umlPackage() const
Definition: umlobject.cpp:651
UMLPackage::findObject
UMLObject * findObject(const QString &name) const
Definition: package.cpp:291
UMLObject::isStatic
bool isStatic() const
Definition: umlobject.cpp:362
UMLListViewItem::updateObject
void updateObject()
Definition: umllistviewitem.cpp:344
UMLObject::isUMLClassifier
bool isUMLClassifier() const
Definition: umlobject.h:202
UMLObject::ot_Package
@ ot_Package
Definition: umlobject.h:81
UMLObject::asUMLAttribute
UMLAttribute * asUMLAttribute()
Definition: umlobject.cpp:1416
Import_Utils::insertMethod
void insertMethod(UMLClassifier *klass, UMLOperation *&op, Uml::Visibility::Enum scope, const QString &type, bool isStatic, bool isAbstract, bool isFriend, bool isConstructor, bool isDestructor, const QString &comment)
Definition: import_utils.cpp:524
UMLObject::ot_UMLObject
@ ot_UMLObject
Definition: umlobject.h:78
Import_Utils::incPathList
QStringList incPathList
Definition: import_utils.cpp:71
UMLObject
The base class for UML objects.
Definition: umlobject.h:69
UMLObject::isAbstract
bool isAbstract() const
Definition: umlobject.cpp:344
import_utils.h
UMLDoc::loading
bool loading() const
Definition: umldoc.cpp:1587
Import_Utils::createArtifactFolder
UMLObject * createArtifactFolder(const QString &name, UMLPackage *parentPkg, const QString &comment)
Definition: import_utils.cpp:681
UMLObject::baseType
ObjectType baseType() const
Definition: umlobject.cpp:393
Import_Utils::putAtGlobalScope
void putAtGlobalScope(bool yesno)
Definition: import_utils.cpp:80
Import_Utils::insertAttribute
UMLAttribute * insertAttribute(UMLClassifier *owner, Uml::Visibility::Enum scope, const QString &name, const QString &type, const QString &comment, bool isStatic)
Definition: import_utils.cpp:486
UMLObject::asUMLDatatype
UMLDatatype * asUMLDatatype()
Definition: umlobject.cpp:1423
UMLObject::setStereotypeCmd
void setStereotypeCmd(const QString &_name)
Definition: umlobject.cpp:531
UMLAttribute::getParmKind
Uml::ParameterDirection::Enum getParmKind() const
Definition: attribute.cpp:123
Import_Utils::remapUMLEnum
UMLEnum * remapUMLEnum(UMLObject *ns, UMLPackage *currentScope)
Definition: import_utils.cpp:770
UMLObject::asUMLEnum
UMLEnum * asUMLEnum()
Definition: umlobject.cpp:1427
UMLObject::asUMLPackage
UMLPackage * asUMLPackage()
Definition: umlobject.cpp:1436
Import_Utils::checkStdString
void checkStdString(QString &typeName)
Definition: import_utils.cpp:167
UMLObject::visibility
Uml::Visibility::Enum visibility() const
Definition: umlobject.cpp:462
it
and that you know you can do these things To protect your we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights These restrictions translate to certain responsibilities for you if you distribute copies of the or if you modify it For if you distribute copies of such a whether gratis or for a you must give the recipients all the rights that you have You must make sure that receive or can get the source code And you must show them these terms so they know their rights We protect your rights with two distribute and or modify the software for each author s protection and we want to make certain that everyone understands that there is no warranty for this free software If the software is modified by someone else and passed we want its recipients to know that what they have is not the so that any problems introduced by others will not reflect on the original authors reputations any free program is threatened constantly by software patents We wish to avoid the danger that redistributors of a free program will individually obtain patent in effect making the program proprietary To prevent we have made it clear that any patent must be licensed for everyone s free use or not licensed at all The precise terms and conditions for distribution and modification follow TERMS AND CONDITIONS FOR DISTRIBUTION AND MODIFICATION This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License The refers to any such program or and a work based on the Program means either the Program or any derivative work under copyright a work containing the Program or a portion of it
Definition: GPL-2.0-only.txt:64
UMLDoc::rootFolder
UMLFolder * rootFolder(Uml::ModelType::Enum mt) const
Definition: umldoc.cpp:3216
Object_Factory::createAttribute
UMLAttribute * createAttribute(UMLObject *parent, const QString &name, UMLObject *type)
Definition: object_factory.cpp:279
UMLClassifier::findTemplate
UMLTemplate * findTemplate(const QString &name) const
Definition: classifier.cpp:1120
UMLApp::listView
UMLListView * listView() const
Definition: uml.cpp:1073
a
QString a
Definition: petalnode.cpp:13
UMLClassifier::addOperation
bool addOperation(UMLOperation *op, int position=-1)
Definition: classifier.cpp:308
UMLDoc::addAssociation
void addAssociation(UMLAssociation *assoc)
Definition: umldoc.cpp:1495
Uml::ModelType::Component
@ Component
Definition: basictypes.h:30
Import_Utils::formatComment
QString formatComment(const QString &comment)
Definition: import_utils.cpp:118
logDebug2
#define logDebug2(s, a, b)
Definition: uml.h:545
UMLClassifier::setBaseType
void setBaseType(UMLObject::ObjectType ot)
Definition: classifier.cpp:81
folder.h
UMLPackage::removeObject
void removeObject(UMLObject *pObject)
Definition: package.cpp:209
Import_Utils::createSubDir
UMLFolder * createSubDir(const QString &name, UMLFolder *parentPkg, const QString &comment)
Definition: import_utils.cpp:658
UMLObject::ot_Datatype
@ ot_Datatype
Definition: umlobject.h:83
Import_Utils::globalScope
UMLPackage * globalScope()
Definition: import_utils.cpp:842
Model_Utils::treeViewSetCurrentItem
void treeViewSetCurrentItem(UMLObject *object)
Definition: model_utils.cpp:451
UMLDoc::findUMLObjectRaw
UMLObject * findUMLObjectRaw(Uml::ModelType::Enum, const QString &name, UMLObject::ObjectType type=UMLObject::ot_UMLObject)
Definition: umldoc.cpp:1112
basictypes.h
Uml::ProgrammingLanguage::Ada
@ Ada
Definition: basictypes.h:293
Import_Utils::addMethodParameter
UMLAttribute * addMethodParameter(UMLOperation *method, const QString &type, const QString &name)
Definition: import_utils.cpp:596
UMLObject::asUMLClassifier
UMLClassifier * asUMLClassifier()
Definition: umlobject.cpp:1420
Object_Factory::assignUniqueIdOnCreation
void assignUniqueIdOnCreation(bool yesno)
Definition: object_factory.cpp:67
Import_Utils::addIncludePath
void addIncludePath(const QString &path)
Definition: import_utils.cpp:823
UMLObject::setStereotype
void setStereotype(const QString &_name)
Definition: umlobject.cpp:524
Import_Utils::isDatatype
bool isDatatype(const QString &name, UMLPackage *parentPkg)
Definition: import_utils.cpp:832
UMLObject::toString
static QString toString(ObjectType ot)
Definition: umlobject.cpp:1212
Uml::AssociationType::Enum
Enum
Definition: basictypes.h:92
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
umllistview.h
UMLObject::setAbstract
void setAbstract(bool bAbstract)
Definition: umlobject.cpp:352
UMLObject::doc
QString doc() const
Definition: umlobject.cpp:431
UMLApp::app
static UMLApp * app()
Definition: uml.cpp:276
visibility
Definition: visibility.py:1
Import_Utils::makeOperation
UMLOperation * makeOperation(UMLClassifier *parent, const QString &name)
Definition: import_utils.cpp:442
UMLDoc
Definition: umldoc.h:69
UMLAttribute
Sets up attribute information.
Definition: attribute.h:22
UMLDoc::setModified
void setModified(bool modified=true)
Definition: umldoc.cpp:3147
UMLObject::isUMLDatatype
bool isUMLDatatype() const
Definition: umlobject.h:204
UMLApp::activeLanguageScopeSeparator
QString activeLanguageScopeSeparator() const
Definition: uml.cpp:2649
UMLFolder
Non-graphical management of objects and diagrams of a Folder.
Definition: folder.h:29
Import_Utils::assignUniqueIdOnCreation
void assignUniqueIdOnCreation(bool yesno)
Definition: import_utils.cpp:101
Uml::Visibility::Enum
Enum
Definition: basictypes.h:45
UMLObject::setDoc
void setDoc(const QString &d)
Definition: umlobject.cpp:451
Import_Utils::addEnumLiteral
void addEnumLiteral(UMLEnum *enumType, const QString &literal, const QString &comment, const QString &value)
Definition: import_utils.cpp:617
UMLDoc::findUMLObject
UMLObject * findUMLObject(const QString &name, UMLObject::ObjectType type=UMLObject::ot_UMLObject, UMLObject *currentObj=0)
Definition: umldoc.cpp:1080
classifier.h
UMLDatatype::setIsReference
void setIsReference(bool isRef=true)
Definition: datatype.cpp:50
Import_Utils::createGeneralization
void createGeneralization(UMLClassifier *child, const QString &parentName)
Definition: import_utils.cpp:732
UMLOperation
Definition: operation.h:19
UMLObject::asUMLArtifact
UMLArtifact * asUMLArtifact()
Definition: umlobject.cpp:1414
UMLObject::ot_Enum
@ ot_Enum
Definition: umlobject.h:84
uml.h
Object_Factory::createNewUMLObject
UMLObject * createNewUMLObject(UMLObject::ObjectType type, const QString &name, UMLPackage *parentPkg, bool undoable)
Definition: object_factory.cpp:93
UMLObject::setUMLPackage
bool setUMLPackage(UMLPackage *pPkg)
Definition: umlobject.cpp:620
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
UMLAssociation
Sets up association information.
Definition: association.h:28
Object_Factory::createOperation
UMLOperation * createOperation(UMLClassifier *parent, const QString &name)
Definition: object_factory.cpp:289
Import_Utils::gRelatedClassifier
UMLClassifier * gRelatedClassifier
Definition: import_utils.cpp:56
Import_Utils::setRelatedClassifier
void setRelatedClassifier(UMLClassifier *c)
Definition: import_utils.cpp:89
UMLScene
Definition: umlscene.h:64
Import_Utils::bPutAtGlobalScope
bool bPutAtGlobalScope
Definition: import_utils.cpp:66
umlobject.h
UMLPackage::addObject
bool addObject(UMLObject *pObject, bool interactOnConflict=true)
Definition: package.cpp:135
UMLEnum::addEnumLiteral
UMLObject * addEnumLiteral(const QString &name, Uml::ID::Type id=Uml::ID::None, const QString &value=QString())
Definition: enum.cpp:131
PATH_SEPARATOR
#define PATH_SEPARATOR
Definition: import_utils.cpp:37
UMLListView::findUMLObject
UMLListViewItem * findUMLObject(const UMLObject *p) const
Definition: umllistview.cpp:1335
Import_Utils
Definition: import_utils.cpp:42
package.h
UMLOperation::setType
void setType(UMLObject *type)
Definition: operation.cpp:93
Uml::AssociationType::Dependency
@ Dependency
Definition: basictypes.h:95
UMLApp::activeLanguage
Uml::ProgrammingLanguage::Enum activeLanguage() const
Definition: uml.cpp:2632
UMLArtifact::file
@ file
Definition: artifact.h:32
Import_Utils::includePathList
QStringList includePathList()
Definition: import_utils.cpp:810
UMLObject::stereotype
QString stereotype(bool includeAdornments=false) const
Definition: umlobject.cpp:555
UMLObject::ot_Folder
@ ot_Folder
Definition: umlobject.h:99
Import_Utils::bNewUMLObjectWasCreated
bool bNewUMLObjectWasCreated
Definition: import_utils.cpp:50
UMLClassifier::checkOperationSignature
UMLOperation * checkOperationSignature(const QString &name, UMLAttributeList opParams, UMLOperation *exemptOp=0) const
Definition: classifier.cpp:132
UMLCanvasObject::findChildObject
virtual UMLObject * findChildObject(const QString &n, UMLObject::ObjectType t=UMLObject::ot_UMLObject) const
Definition: umlcanvasobject.cpp:237
UMLEnum
Non-graphical Information for an Enum.
Definition: enum.h:23
UMLApp::document
UMLDoc * document() const
Definition: uml.cpp:1063
Uml::AssociationType::Realization
@ Realization
Definition: basictypes.h:104
umldoc.h
UMLDatatype::setOriginType
void setOriginType(UMLClassifier *origType)
Definition: datatype.cpp:32
logError2
#define logError2(s, a, b)
Definition: uml.h:549
UMLClassifier::addAttribute
UMLAttribute * addAttribute(const QString &name, Uml::ID::Type id=Uml::ID::None)
Definition: classifier.cpp:810
UMLPackage
Non-graphical information for a Package.
Definition: package.h:27
enum.h