QElectroTech 0.100.0-dev
Loading...
Searching...
No Matches
qetproject.h
Go to the documentation of this file.
1/*
2 Copyright 2006-2024 The QElectroTech Team
3 This file is part of QElectroTech.
4
5 QElectroTech is free software: you can redistribute it and/or modify
6 it under the terms of the GNU General Public License as published by
7 the Free Software Foundation, either version 2 of the License, or
8 (at your option) any later version.
9
10 QElectroTech is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
13 GNU General Public License for more details.
14
15 You should have received a copy of the GNU General Public License
16 along with QElectroTech. If not, see <http://www.gnu.org/licenses/>.
17*/
18#ifndef QET_PROJECT_H
19#define QET_PROJECT_H
20
22#include "NameList/nameslist.h"
24#include "borderproperties.h"
25#include "conductorproperties.h"
31
32#ifdef BUILD_WITHOUT_KF5
33#else
34# include <KAutoSaveFile>
35#endif
36
37#include <QHash>
38
39class Diagram;
41class QETResult;
45class QUndoStack;
47class QTimer;
48class TerminalStrip;
49
50#ifdef BUILD_WITHOUT_KF5
51#else
52class KAutoSaveFile;
53#endif
54
61class QETProject : public QObject
62{
63 Q_OBJECT
64 public :
65 //This enum lists possible states for a particular project.
74
75 Q_PROPERTY(bool autoConductor READ autoConductor WRITE setAutoConductor)
76
77 // constructors, destructor
78 public:
79 QETProject (QObject *parent = nullptr);
80 QETProject (const QString &path, QObject * = nullptr);
81#ifdef BUILD_WITHOUT_KF5
82#else
83 QETProject (KAutoSaveFile *backup, QObject *parent=nullptr);
84#endif
85 ~QETProject() override;
86
87 private:
89
90 // methods
91 public:
94 QUuid uuid() const;
95 ProjectState state() const;
96 QList<Diagram *> diagrams() const;
97 int folioIndex(const Diagram *) const;
100 QString filePath();
101 void setFilePath(const QString &);
102 QString currentDir() const;
103 QString pathNameTitle() const;
104 QString title() const;
105 QVersionNumber declaredQElectroTechVersion();
106 void setTitle(const QString &);
107
111
114
117
118 QString defaultReportProperties() const;
119 void setDefaultReportProperties (const QString &properties);
120
121 XRefProperties defaultXRefProperties (const QString &type) const {return m_default_xref_properties[type];}
122 QHash <QString, XRefProperties> defaultXRefProperties() const {return m_default_xref_properties;}
123 void setDefaultXRefProperties(const QString& type, const XRefProperties &properties);
124 void setDefaultXRefProperties(QHash <QString, XRefProperties> hash);
125
126 QHash <QString, NumerotationContext> conductorAutoNum() const;
127 QHash <QString, NumerotationContext> elementAutoNum() const;
128 QHash <QString, NumerotationContext> folioAutoNum() const;
129 void addConductorAutoNum (const QString& key, const NumerotationContext& context);
130 void addElementAutoNum (const QString& key, const NumerotationContext& context);
131 void addFolioAutoNum (const QString& key, const NumerotationContext& context);
132 void removeConductorAutoNum (const QString& key);
133 void removeElementAutoNum (const QString& key);
134 void removeFolioAutoNum (const QString& key);
135 NumerotationContext conductorAutoNum(const QString &key) const;
136 NumerotationContext folioAutoNum(const QString &key) const;
137 NumerotationContext elementAutoNum(const QString &key);
138
139 QString conductorAutoNumFormula(const QString& key) const; //returns Formula
140 QString conductorCurrentAutoNum() const;
141 void setCurrentConductorAutoNum(QString autoNum);
142
143 QString elementAutoNumFormula(const QString& key) const;
144 QString elementAutoNumCurrentFormula() const;
145 QString elementCurrentAutoNum() const;
146 void setCurrrentElementAutonum(QString autoNum);
147
148 //Element
149 void freezeExistentElementLabel(bool freeze, int from, int to);
150 void freezeNewElementLabel(bool freeze, int from, int to);
151 bool isFreezeNewElements();
152 void setFreezeNewElements(bool);
153
154 //Conductor
155 void freezeExistentConductorLabel(bool freeze, int from, int to);
156 void freezeNewConductorLabel(bool freeze, int from, int to);
158 void setFreezeNewConductors(bool);
159
160 bool autoConductor () const;
161 bool autoElement () const;
162 bool autoFolio () const;
163 void setAutoConductor (bool ac);
164 void setAutoElement (bool ae);
166 void autoFolioNumberingSelectedFolios(int, int, const QString&);
167
168 QDomDocument toXml();
169 bool close();
171 bool isReadOnly() const;
172 void setReadOnly(bool);
173 bool isEmpty() const;
176 bool usesElement(const ElementsLocation &) const;
177 QList <ElementsLocation> unusedElements() const;
179 bool projectWasModified();
183 QUndoStack* undoStack() {return m_undo_stack;}
184
185 QVector<TerminalStrip *> terminalStrip() const;
186 TerminalStrip * newTerminalStrip(QString installation = QString(), QString location = QString(), QString name = QString());
187 bool addTerminalStrip(TerminalStrip *strip);
189
190 public slots:
191 Diagram *addNewDiagram(int pos = -1);
192 void removeDiagram(Diagram *);
193 void diagramOrderChanged(int, int);
194 void setModified(bool);
195
196 signals:
197 void projectFilePathChanged(QETProject *, const QString &);
198 void projectTitleChanged(QETProject *, const QString &);
206 void reportPropertiesChanged(const QString &old_str, const QString &new_str);
209 void elementAutoNumAdded(QString name);
210 void elementAutoNumRemoved(QString name);
215 void folioAutoNumChanged(QString);
218
219 private slots:
223 void usedTitleBlockTemplateChanged(const QString &);
224 void undoStackChanged (bool a) {if (!a) setModified(true);}
225
226 private:
227 void readProjectXml(QDomDocument &xml_project);
228 void readDiagramsXml(QDomDocument &xml_project);
229 void readElementsCollectionXml(QDomDocument &xml_project);
230 void readProjectPropertiesXml(QDomDocument &xml_project);
231 void readDefaultPropertiesXml(QDomDocument &xml_project);
232 void readTerminalStripXml(const QDomDocument &xml_project);
233
234 void writeProjectPropertiesXml(QDomElement &);
235 void writeDefaultPropertiesXml(QDomElement &);
236 void addDiagram(Diagram *diagram, int pos = -1);
238 void writeBackup();
239 void init();
240 ProjectState openFile(QFile *file);
241 void refresh();
242
243 // attributes
244 private:
246 QString m_file_path;
250 QList<Diagram *> m_diagrams_list;
254 QVersionNumber m_project_qet_version;
256 bool m_modified = false;
258 bool m_read_only = false;
276 QUndoStack *m_undo_stack;
278 QHash <QString, NumerotationContext> m_conductor_autonum;//Title and NumContext hash
281 QHash <QString, NumerotationContext> m_folio_autonum;
283 QHash <QString, NumerotationContext> m_element_autonum; //Title and NumContext hash
285 bool m_auto_conductor = true;
291#ifdef BUILD_WITHOUT_KF5
292#else
293 KAutoSaveFile m_backup_file;
294#endif
295 QUuid m_uuid = QUuid::createUuid();
297 QVector<TerminalStrip *> m_terminal_strip_vector;
298
300};
301
303#endif
The BorderProperties class This class is a container for dimensions and display properties of a diagr...
Definition borderproperties.h:29
static BorderProperties defaultProperties()
BorderProperties::defaultProperties.
Definition borderproperties.cpp:172
The ConductorProperties class This class represents the functional properties of a particular conduct...
Definition conductorproperties.h:68
static ConductorProperties defaultProperties()
ConductorProperties::defaultProperties.
Definition conductorproperties.cpp:751
Definition diagramcontext.h:57
The Diagram class This class represents an electric diagram. It manages its various child elements,...
Definition diagram.h:56
The ElementsLocation class This class represents the location, the location of an element or of a cat...
Definition elementslocation.h:47
Definition movetemplateshandler.h:31
Definition nameslist.h:31
Definition numerotationcontext.h:31
The ProjectPropertiesHandler class A central class who handle, keep and provide all utilities to easi...
Definition projectpropertieshandler.h:41
Definition qetproject.h:62
void projectFilePathChanged(QETProject *, const QString &)
void conductorAutoNumChanged()
QUndoStack * undoStack()
Definition qetproject.h:183
bool projectOptionsWereModified()
Definition qetproject.cpp:1932
void diagramUsedTemplate(TitleBlockTemplatesCollection *, const QString &)
QString title() const
Definition qetproject.cpp:438
QHash< QString, XRefProperties > m_default_xref_properties
Default xref properties.
Definition qetproject.h:270
void conductorAutoNumRemoved()
void setDefaultReportProperties(const QString &properties)
Definition qetproject.cpp:551
void autoFolioNumberingNewFolios()
QETProject::autoFolioNumberingNewFolios emit Signal to add new Diagram with autonum properties.
Definition qetproject.cpp:879
void folioAutoNumRemoved()
QString integrateTitleBlockTemplate(const TitleBlockTemplateLocation &, MoveTitleBlockTemplatesHandler *handler)
QETProject::integrateTitleBlockTemplate Integrate a title block template into this project.
Definition qetproject.cpp:1183
void undoStackChanged(bool a)
Definition qetproject.h:224
TitleBlockProperties defaultTitleBlockProperties() const
Definition qetproject.cpp:491
void setModified(bool)
Definition qetproject.cpp:1330
QETResult write()
QETProject::write Save the project in a file.
Definition qetproject.cpp:1002
void freezeExistentConductorLabel(bool freeze, int from, int to)
QETProject::freezeExistentConductorLabel Freeze Existent Conductors in the selected folios.
Definition qetproject.cpp:773
bool autoElement() const
void updateDiagramsFolioData()
Definition qetproject.cpp:2039
void diagramAdded(QETProject *, Diagram *)
XmlElementCollection * m_elements_collection
Definition qetproject.h:286
void freezeNewConductorLabel(bool freeze, int from, int to)
QETProject::freezeNewConductorLabel Freeze New Conductors in the selected folios.
Definition qetproject.cpp:786
bool isFreezeNewElements()
QETProject::freezeNewElements.
Definition qetproject.cpp:839
QString defaultReportProperties() const
Definition qetproject.cpp:546
bool m_freeze_new_elements
Definition qetproject.h:287
QUndoStack * m_undo_stack
undo stack for this project
Definition qetproject.h:276
void diagramRemoved(QETProject *, Diagram *)
bool m_read_only
Whether the project is read only.
Definition qetproject.h:258
void addFolioAutoNum(const QString &key, const NumerotationContext &context)
QETProject::addFolioAutoNum Add a new folio numerotation context. If key already exist,...
Definition qetproject.cpp:698
void setTitle(const QString &)
Definition qetproject.cpp:456
QHash< QString, NumerotationContext > m_conductor_autonum
Conductor auto numerotation.
Definition qetproject.h:278
QHash< QString, NumerotationContext > elementAutoNum() const
QETProject::elementAutoNum.
Definition qetproject.cpp:583
ProjectState openFile(QFile *file)
QETProject::openFile.
Definition qetproject.cpp:207
void freezeNewElementLabel(bool freeze, int from, int to)
QETProject::freezeNewElementLabel Freeze New Elements in the selected folios.
Definition qetproject.cpp:829
void setFilePath(const QString &)
QETProject::setFilePath Set the filepath of this project file Set a file path also create a backup fi...
Definition qetproject.cpp:329
QVersionNumber m_project_qet_version
QElectroTech version declared in the XML document at opening time.
Definition qetproject.h:254
void defaultTitleBlockPropertiesChanged()
QString m_current_conductor_autonum
Definition qetproject.h:279
QString conductorAutoNumFormula(const QString &key) const
QETProject::conductorAutoNumFormula.
Definition qetproject.cpp:633
QVector< TerminalStrip * > terminalStrip() const
QETProject::terminalStrip.
Definition qetproject.cpp:1960
void elementAutoNumRemoved(QString name)
void removeDiagram(Diagram *)
QETProject::removeDiagram Remove diagram from project.
Definition qetproject.cpp:1291
projectDataBase * dataBase()
QETProject::dataBase.
Definition qetproject.cpp:157
void setFreezeNewElements(bool)
QETProject::setfreezeNewElements Set Project Wide freeze new elements.
Definition qetproject.cpp:848
void XRefPropertiesChanged()
void addAutoNumDiagram()
QHash< QString, NumerotationContext > m_folio_autonum
Folio auto numbering.
Definition qetproject.h:281
bool addTerminalStrip(TerminalStrip *strip)
QETProject::addTerminalStrip Add strip to the terminal strip list of the project. The project of stri...
Definition qetproject.cpp:1991
void removeElementAutoNum(const QString &key)
QETProject::removeElementAutonum Remove Element Numerotation Context stored with key.
Definition qetproject.cpp:716
void diagramOrderChanged(int, int)
Definition qetproject.cpp:1315
ProjectState m_state
Current state of the project.
Definition qetproject.h:248
BorderProperties default_border_properties_
Default dimensions and properties for new diagrams created within the project.
Definition qetproject.h:262
ProjectState state() const
Definition qetproject.cpp:271
bool autoConductor
Definition qetproject.h:75
TitleBlockTemplatesProjectCollection * embeddedTitleBlockTemplatesCollection()
Definition qetproject.cpp:308
void projectTitleChanged(QETProject *, const QString &)
QList< Diagram * > m_diagrams_list
Diagrams carried by the project.
Definition qetproject.h:250
void setAutoElement(bool ae)
QHash< QString, XRefProperties > defaultXRefProperties() const
Definition qetproject.h:122
TitleBlockTemplatesProjectCollection m_titleblocks_collection
Embedded title block templates collection.
Definition qetproject.h:272
bool close()
Definition qetproject.cpp:990
bool usesElement(const ElementsLocation &) const
Definition qetproject.cpp:1218
void reportPropertiesChanged(const QString &old_str, const QString &new_str)
KAutoSaveFile m_backup_file
Definition qetproject.h:293
QString filePath()
Definition qetproject.cpp:316
void setFreezeNewConductors(bool)
QETProject::setfreezeNewConductors Set Project Wide freeze new conductors.
Definition qetproject.cpp:805
void removeConductorAutoNum(const QString &key)
QETProject::removeConductorAutoNum Remove Conductor Numerotation Context stored with key.
Definition qetproject.cpp:707
void addElementAutoNum(const QString &key, const NumerotationContext &context)
QETProject::addElementAutoNum Add a new element numerotation context. If key already exist,...
Definition qetproject.cpp:685
QList< ElementsLocation > unusedElements() const
QETProject::unusedElements.
Definition qetproject.cpp:1235
TerminalStrip * newTerminalStrip(QString installation=QString(), QString location=QString(), QString name=QString())
QETProject::newTerminalStrip.
Definition qetproject.cpp:1973
void setProjectProperties(const DiagramContext &)
Definition qetproject.cpp:1950
void init()
QETProject::init.
Definition qetproject.cpp:174
void writeBackup()
QETProject::writeBackup Write a backup file of this project, in the case that QET crash.
Definition qetproject.cpp:1910
void refresh()
QETProject::refresh Refresh everything in the project. This is notably use when open a project from f...
Definition qetproject.cpp:245
DiagramContext m_project_properties
project-wide variables that will be made available to child diagrams
Definition qetproject.h:274
void readTerminalStripXml(const QDomDocument &xml_project)
QETProject::readTerminalStripXml Read the terminal strips of this project.
Definition qetproject.cpp:1646
QString m_file_path
File path this project is saved to.
Definition qetproject.h:246
XmlElementCollection * embeddedElementCollection() const
QETProject::embeddedCollection.
Definition qetproject.cpp:300
void readOnlyChanged(QETProject *, bool)
QHash< QString, NumerotationContext > conductorAutoNum() const
QETProject::conductorAutoNum.
Definition qetproject.cpp:574
ConductorProperties default_conductor_properties_
Default conductor properties for new diagrams created within the project.
Definition qetproject.h:264
QUuid m_uuid
Definition qetproject.h:295
void setCurrrentElementAutonum(QString autoNum)
QETProject::setCurrrentElementAutonum.
Definition qetproject.cpp:624
QHash< QString, NumerotationContext > m_element_autonum
Element Auto Numbering.
Definition qetproject.h:283
void folioAutoNumAdded()
void setDefaultBorderProperties(const BorderProperties &)
Definition qetproject.cpp:483
void projectModified(QETProject *, bool)
void setCurrentConductorAutoNum(QString autoNum)
QETProject::setCurrentConductorAutoNum.
Definition qetproject.cpp:654
int folioIndex(const Diagram *) const
Definition qetproject.cpp:290
QString currentDir() const
Definition qetproject.cpp:368
QString project_title_
Project title.
Definition qetproject.h:252
QETProject(const QETProject &)
void projectInformationsChanged(QETProject *)
Diagram * addNewDiagram(int pos=-1)
QETProject::addNewDiagram Add a new diagram in project at position pos.
Definition qetproject.cpp:1269
void usedTitleBlockTemplateChanged(const QString &)
Definition qetproject.cpp:2114
DiagramContext projectProperties()
Definition qetproject.cpp:1942
void writeProjectPropertiesXml(QDomElement &)
Definition qetproject.cpp:1664
void removeDiagramsTitleBlockTemplate(TitleBlockTemplatesCollection *, const QString &)
Definition qetproject.cpp:2101
void autoFolioNumberingSelectedFolios(int, int, const QString &)
QETProject::autoFolioNumberingNewFolios.
Definition qetproject.cpp:891
void setDefaultXRefProperties(const QString &type, const XRefProperties &properties)
Definition qetproject.cpp:559
void readDiagramsXml(QDomDocument &xml_project)
QETProject::readDiagramsXml Load the diagrams from the xml description of the project....
Definition qetproject.cpp:1448
void writeDefaultPropertiesXml(QDomElement &)
QETProject::writeDefaultPropertiesXml Export all defaults properties used by a new diagram and his co...
Definition qetproject.cpp:1678
bool isEmpty() const
Definition qetproject.cpp:1064
bool autoFolio() const
QString m_default_report_properties
Default report properties.
Definition qetproject.h:268
QUuid uuid() const
QETProject::uuid.
Definition qetproject.cpp:166
void readDefaultPropertiesXml(QDomDocument &xml_project)
QETProject::readDefaultPropertiesXml load default properties for new diagram, found in the xml of thi...
Definition qetproject.cpp:1553
XRefProperties defaultXRefProperties(const QString &type) const
Definition qetproject.h:121
ProjectState
Definition qetproject.h:66
@ FileOpenFailed
no error
Definition qetproject.h:68
@ Ok
Definition qetproject.h:67
@ ProjectParsingFailed
the XML content is currently being processed
Definition qetproject.h:71
@ XmlParsingFailed
file opening failed
Definition qetproject.h:69
@ FileOpenDiscard
the parsing of the XML content failed
Definition qetproject.h:72
@ ProjectParsingRunning
XML parsing failed.
Definition qetproject.h:70
bool isReadOnly() const
QETProject::isReadOnly.
Definition qetproject.cpp:1037
ConductorProperties defaultConductorProperties() const
Definition qetproject.cpp:533
QList< Diagram * > diagrams() const
Definition qetproject.cpp:279
QHash< QString, NumerotationContext > folioAutoNum() const
QETProject::folioAutoNum.
Definition qetproject.cpp:662
void removeFolioAutoNum(const QString &key)
QETProject::removeFolioAutonum Remove Folio Numerotation Context stored with key.
Definition qetproject.cpp:727
void elementAutoNumAdded(QString name)
void freezeExistentElementLabel(bool freeze, int from, int to)
QETProject::freezeExistentElementLabel Freeze Existent Elements in the selected folios.
Definition qetproject.cpp:816
bool usesTitleBlockTemplate(const TitleBlockTemplateLocation &)
Definition qetproject.cpp:1251
ProjectPropertiesHandler & projectPropertiesHandler()
Definition qetproject.cpp:64
void readProjectPropertiesXml(QDomDocument &xml_project)
QETProject::readProjectPropertiesXml Load project properties from the XML description of the project.
Definition qetproject.cpp:1541
bool projectWasModified()
Definition qetproject.cpp:2023
QVector< TerminalStrip * > m_terminal_strip_vector
Definition qetproject.h:297
bool m_freeze_new_conductors
Definition qetproject.h:288
NamesList namesListForIntegrationCategory()
Definition qetproject.cpp:1783
bool isFreezeNewConductors()
QETProject::isFreezeNewConductors.
Definition qetproject.cpp:796
QTimer m_save_backup_timer
Definition qetproject.h:289
void conductorAutoNumAdded()
void updateDiagramsTitleBlockTemplate(TitleBlockTemplatesCollection *, const QString &)
Definition qetproject.cpp:2088
QVersionNumber declaredQElectroTechVersion()
Definition qetproject.cpp:448
void setReadOnly(bool)
QETProject::setReadOnly Set this project to read only if read_only = true.
Definition qetproject.cpp:1047
ElementsLocation importElement(ElementsLocation &location)
QETProject::importElement Import the element represented by location to the embedded collection of th...
Definition qetproject.cpp:1090
QString read_only_file_path_
Filepath for which this project is considered read only.
Definition qetproject.h:260
QString elementCurrentAutoNum() const
QETProject::elementCurrentAutoNum.
Definition qetproject.cpp:615
void readProjectXml(QDomDocument &xml_project)
QETProject::readProjectXml Read and make the project from an xml description.
Definition qetproject.cpp:1343
void setAutoConductor(bool ac)
QETProject::setAutoConductor.
Definition qetproject.cpp:868
QString elementAutoNumCurrentFormula() const
QETProject::elementAutoNumCurrentFormula.
Definition qetproject.cpp:606
QString m_current_element_autonum
Definition qetproject.h:284
projectDataBase m_data_base
Definition qetproject.h:296
QString pathNameTitle() const
Definition qetproject.cpp:388
void addDiagram(Diagram *diagram, int pos=-1)
QETProject::addDiagram Add a diagram in this project.
Definition qetproject.cpp:1757
QDomDocument toXml()
QETProject::toXml.
Definition qetproject.cpp:917
void projectDiagramsOrderChanged(QETProject *, int, int)
void setDefaultConductorProperties(const ConductorProperties &)
Definition qetproject.cpp:542
QString conductorCurrentAutoNum() const
QETProject::conductorCurrentAutoNum.
Definition qetproject.cpp:645
BorderProperties defaultBorderProperties() const
DEFAULT PROPERTIES.
Definition qetproject.cpp:473
TitleBlockProperties default_titleblock_properties_
Default title block properties for new diagrams created within the project.
Definition qetproject.h:266
void folioAutoNumChanged(QString)
ProjectPropertiesHandler m_project_properties_handler
Definition qetproject.h:299
void addConductorAutoNum(const QString &key, const NumerotationContext &context)
QETProject::addConductorAutoNum Add a new conductor numerotation context. If key already exist,...
Definition qetproject.cpp:674
bool removeTerminalStrip(TerminalStrip *strip)
QETProject::removeTerminalStrip Remove strip from the terminal strip list of this project....
Definition qetproject.cpp:2010
~QETProject() override
QETProject::~QETProject Destructor.
Definition qetproject.cpp:132
QString elementAutoNumFormula(const QString &key) const
QETProject::elementAutoNumFormula.
Definition qetproject.cpp:593
bool m_auto_conductor
Definition qetproject.h:285
bool m_modified
Whether options were modified.
Definition qetproject.h:256
QTimer m_autosave_timer
Definition qetproject.h:290
void readElementsCollectionXml(QDomDocument &xml_project)
QETProject::readElementsCollectionXml Load the diagrams from the xml description of the project.
Definition qetproject.cpp:1515
void setDefaultTitleBlockProperties(const TitleBlockProperties &)
QETProject::setDefaultTitleBlockProperties Specify the title block to be used at the creation of a ne...
Definition qetproject.cpp:501
Definition qetresult.h:26
static QString defaultProperties()
ReportProperties::defaultProperties.
Definition reportproperties.cpp:28
The TerminalStrip class This class hold all the datas and configurations of a terminal strip (but the...
Definition terminalstrip.h:45
Definition titleblockproperties.h:29
The TitleBlockTemplate class This class represents an title block template for an electric diagram....
Definition titleblocktemplate.h:37
Definition templatelocation.h:29
Definition templatescollection.h:35
Definition templatescollection.h:84
The XRefProperties class this class store properties used by XrefItem.
Definition xrefproperties.h:31
static QHash< QString, XRefProperties > defaultProperties()
XRefProperties::defaultProperties.
Definition xrefproperties.cpp:170
The XmlElementCollection class This class represent a collection of elements stored to xml.
Definition xmlelementcollection.h:34
The projectDataBase class This class wraps a sqlite data base where you can find several things about...
Definition projectdatabase.h:40
Q_DECLARE_METATYPE(NamesList)