umbrello  2.32.3
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  * This program is free software; you can redistribute it and/or modify *
3  * it under the terms of the GNU General Public License as published by *
4  * the Free Software Foundation; either version 2 of the License, or *
5  * (at your option) any later version. *
6  * *
7  * copyright (C) 2012-2020 *
8  * Umbrello UML Modeller Authors <umbrello-devel@kde.org> *
9  ***************************************************************************/
10 
11 #ifndef LAYOUTGENERATOR_H
12 
13 #include "dotgenerator.h"
14 #include "optionstate.h"
15 
17 #include <QRectF>
18 
39 {
40 public:
41  typedef QHash<QString,QRectF> NodeType;
42  typedef QList<QPointF> EdgePoints;
43  typedef QHash<QString,EdgePoints> EdgeType;
44  typedef QMap<QString,QStringList> ParameterList;
45 
47 
48  bool isEnabled();
49  bool generate(UMLScene *scene, const QString &variant = QString());
50  bool apply(UMLScene *scene);
51  static bool availableConfigFiles(UMLScene *scene, QHash<QString,QString> &configFiles);
52  QPointF origin(const QString &id);
53  bool readGeneratedDotFile(const QString &fileName);
54  bool parseLine(const QString &line);
55  bool splitParameters(QMap<QString,QStringList> &map, const QString &s);
56  QPointF mapToScene(const QPointF &p);
57 
58 protected:
62  QHash<QString, QPointF> m_edgeLabelPosition;
63 
64  friend QDebug operator<<(QDebug out, LayoutGenerator &c);
65 };
66 
67 #if 0
68 static QDebug operator<<(QDebug out, LayoutGenerator &c);
69 #endif
70 
71 #endif
Definition: dotgenerator.h:25
Definition: layoutgenerator.h:39
EdgeType m_edges
list of edges found in parsed dot file
Definition: layoutgenerator.h:61
QHash< QString, EdgePoints > EdgeType
Definition: layoutgenerator.h:43
QHash< QString, QPointF > m_edgeLabelPosition
contains global node parameters
Definition: layoutgenerator.h:62
bool isEnabled()
Definition: layoutgenerator.cpp:99
bool splitParameters(QMap< QString, QStringList > &map, const QString &s)
QHash< QString, QRectF > NodeType
Definition: layoutgenerator.h:41
bool apply(UMLScene *scene)
Definition: layoutgenerator.cpp:195
QRectF m_boundingRect
Definition: layoutgenerator.h:59
QMap< QString, QStringList > ParameterList
Definition: layoutgenerator.h:44
bool parseLine(const QString &line)
Definition: layoutgenerator.cpp:398
bool generate(UMLScene *scene, const QString &variant=QString())
Definition: layoutgenerator.cpp:109
LayoutGenerator()
Definition: layoutgenerator.cpp:88
static bool availableConfigFiles(UMLScene *scene, QHash< QString, QString > &configFiles)
Definition: layoutgenerator.cpp:309
QList< QPointF > EdgePoints
Definition: layoutgenerator.h:42
NodeType m_nodes
list of nodes found in parsed dot file
Definition: layoutgenerator.h:60
QPointF origin(const QString &id)
Definition: layoutgenerator.cpp:346
friend QDebug operator<<(QDebug out, LayoutGenerator &c)
bool readGeneratedDotFile(const QString &fileName)
Definition: layoutgenerator.cpp:369
QPointF mapToScene(const QPointF &p)
Definition: layoutgenerator.cpp:602
Definition: umlscene.h:69
QDebug operator<<(QDebug out, const QXmlStreamAttribute &a)
Definition: shared.cpp:24