umbrello  2.35.1
Umbrello UML Modeller is a Unified Modelling Language (UML) diagram program based on KDE Technology
layoutgenerator.h
Go to the documentation of this file.
1 /*
2  SPDX-License-Identifier: GPL-2.0-or-later
3  SPDX-FileCopyrightText: 2012-2021 Umbrello UML Modeller Authors <umbrello-devel@kde.org>
4 */
5 
6 #ifndef LAYOUTGENERATOR_H
7 
8 #include "dotgenerator.h"
9 #include "optionstate.h"
10 
12 #include <QRectF>
13 
34 {
35 public:
36  typedef QHash<QString,QRectF> NodeType;
37  typedef QList<QPointF> EdgePoints;
38  typedef QHash<QString,EdgePoints> EdgeType;
39  typedef QMap<QString,QStringList> ParameterList;
40 
42 
43  bool isEnabled() const;
44  bool generate(UMLScene *scene, const QString &variant = QString());
45  bool apply(UMLScene *scene);
46  static bool availableConfigFiles(UMLScene *scene, QHash<QString,QString> &configFiles);
47  QPointF origin(const QString &id);
48  bool readGeneratedDotFile(const QString &fileName);
49  bool parseLine(const QString &line);
50  bool splitParameters(QMap<QString,QStringList> &map, const QString &s);
51  QPointF mapToScene(const QPointF &p);
52 
53 protected:
55  NodeType m_nodes;
56  EdgeType m_edges;
57  QHash<QString, QPointF> m_edgeLabelPosition;
58 
59  friend QDebug operator<<(QDebug out, LayoutGenerator &c);
60 };
61 
62 #if 0
63 static QDebug operator<<(QDebug out, LayoutGenerator &c);
64 #endif
65 
66 #endif
QHash< QString, EdgePoints > EdgeType
Definition: layoutgenerator.h:38
bool isEnabled() const
Definition: layoutgenerator.cpp:98
Definition: dotgenerator.h:19
QHash< QString, QPointF > m_edgeLabelPosition
contains global node parameters
Definition: layoutgenerator.h:57
QMap< QString, QStringList > ParameterList
Definition: layoutgenerator.h:39
bool parseLine(const QString &line)
Definition: layoutgenerator.cpp:395
bool readGeneratedDotFile(const QString &fileName)
Definition: layoutgenerator.cpp:366
QRectF m_boundingRect
Definition: layoutgenerator.h:54
QList< QPointF > EdgePoints
Definition: layoutgenerator.h:37
friend QDebug operator<<(QDebug out, LayoutGenerator &c)
bool generate(UMLScene *scene, const QString &variant=QString())
Definition: layoutgenerator.cpp:108
QPointF origin(const QString &id)
Definition: layoutgenerator.cpp:343
bool splitParameters(QMap< QString, QStringList > &map, const QString &s)
QHash< QString, QRectF > NodeType
Definition: layoutgenerator.h:36
bool apply(UMLScene *scene)
Definition: layoutgenerator.cpp:194
EdgeType m_edges
list of edges found in parsed dot file
Definition: layoutgenerator.h:56
LayoutGenerator()
Definition: layoutgenerator.cpp:87
NodeType m_nodes
list of nodes found in parsed dot file
Definition: layoutgenerator.h:55
static bool availableConfigFiles(UMLScene *scene, QHash< QString, QString > &configFiles)
Definition: layoutgenerator.cpp:306
Definition: layoutgenerator.h:33
QDebug operator<<(QDebug out, const QXmlStreamAttribute &a)
Definition: shared.cpp:17
QPointF mapToScene(const QPointF &p)
Definition: layoutgenerator.cpp:599
Definition: umlscene.h:64