18#ifndef PROJECTDATABASE_H
19#define PROJECTDATABASE_H
22#include <QSqlDatabase>
51 QSqlQuery
newQuery(
const QString &query = QString());
115#ifdef QET_EXPORT_PROJECT_DB
117 static sqlite3 *sqliteHandle(QSqlDatabase *db);
119 QWidget *parent =
nullptr,
120 const QString &caption = QString(),
121 const QString &dir = QString());
Definition conductor.h:44
The Diagram class This class represents an electric diagram. It manages its various child elements,...
Definition diagram.h:54
Definition qetproject.h:77
The Terminal class This class represents a terminal of an electrical element, i.e....
Definition terminal.h:37
QSqlQuery m_diagram_info_order_changed
Definition projectdatabase.h:105
QSqlQuery newQuery(const QString &query=QString())
projectDataBase::newQuery
Definition projectdatabase.cpp:110
void populateDiagramInfoTable()
Definition projectdatabase.cpp:747
QSqlQuery m_update_diagram_info_query
Definition projectdatabase.h:103
void bindConductorValues(QSqlQuery &query, Conductor *conductor, Diagram *diagram)
projectDataBase::bindConductorValues One binder for both insert paths, so a conductor added to a live...
Definition projectdatabase.cpp:411
QSqlQuery m_insert_terminal_query
Definition projectdatabase.h:106
QSqlQuery m_insert_diagram_query
Definition projectdatabase.h:100
QSqlQuery m_cascade_remove_element_query
Definition projectdatabase.h:113
void addElement(Element *element)
projectDataBase::addElement
Definition projectdatabase.cpp:118
QSqlQuery m_remove_diagram_query
Definition projectdatabase.h:101
void removeConductor(Conductor *conductor)
projectDataBase::removeConductor
Definition projectdatabase.cpp:333
void createSummaryView()
projectDataBase::createSummaryView
Definition projectdatabase.cpp:650
void addConductor(Conductor *conductor)
projectDataBase::addConductor
Definition projectdatabase.cpp:300
QSqlQuery m_cascade_remove_element_info_query
Definition projectdatabase.h:110
void bindDiagramInfoValues(QSqlQuery &query, Diagram *diagram)
Definition projectdatabase.cpp:946
void createElementNomenclatureView()
projectDataBase::createElementNomenclatureView
Definition projectdatabase.cpp:561
void populateElementTable()
projectDataBase::populateElementTable Populate the element table
Definition projectdatabase.cpp:689
void populateDiagramTable()
Definition projectdatabase.cpp:670
QSqlQuery m_insert_conductor_query
Definition projectdatabase.h:107
QSqlDatabase m_data_base
Definition projectdatabase.h:95
void addDiagram(Diagram *diagram)
Definition projectdatabase.cpp:198
void conductorPropertiesChanged()
projectDataBase::conductorPropertiesChanged
Definition projectdatabase.cpp:395
void removeElement(Element *element)
projectDataBase::removeElement
Definition projectdatabase.cpp:154
QSqlQuery m_insert_elements_query
Definition projectdatabase.h:96
QSqlQuery m_remove_element_query
Definition projectdatabase.h:98
void insertTerminal(Terminal *terminal)
projectDataBase::insertTerminal Insert (or, if already present – e.g. a junction shared by several co...
Definition projectdatabase.cpp:804
void elementInfoChanged(Element *element)
projectDataBase::elementInfoChanged
Definition projectdatabase.cpp:168
QSqlQuery m_remove_conductor_query
Definition projectdatabase.h:109
void diagramInfoChanged(Diagram *diagram)
Definition projectdatabase.cpp:281
void removeDiagram(Diagram *diagram)
Definition projectdatabase.cpp:226
QSqlQuery m_insert_element_info_query
Definition projectdatabase.h:97
static QHash< QString, QString > elementInfoToString(Element *elmt)
projectDataBase::elementInfoToString
Definition projectdatabase.cpp:930
void watchConductor(Conductor *conductor)
projectDataBase::watchConductor Keep this conductor's row in step with its properties.
Definition projectdatabase.cpp:385
QPointer< QETProject > m_project
Definition projectdatabase.h:94
void populateElementInfoTable()
projectDataBase::populateElementInfoTable Populate the element info table
Definition projectdatabase.cpp:718
QSqlQuery m_cascade_remove_conductor_query
Definition projectdatabase.h:112
QSqlQuery m_insert_diagram_info_query
Definition projectdatabase.h:102
void populateConductorTable()
projectDataBase::populateConductorTable Populate the terminal and conductor tables....
Definition projectdatabase.cpp:768
QSqlQuery m_diagram_order_changed
Definition projectdatabase.h:104
void updateDB()
projectDataBase::updateDB Up to date the content of the data base. Emit the signal dataBaseUpdated
Definition projectdatabase.cpp:86
QSqlQuery m_cascade_remove_terminal_query
Definition projectdatabase.h:111
projectDataBase(QETProject *project, QObject *parent=nullptr)
projectDataBase::projectDataBase Default constructor
Definition projectdatabase.cpp:43
QETProject * project() const
projectDataBase::project
Definition projectdatabase.cpp:100
bool createDataBase()
projectDataBase::createDataBase Create the data base
Definition projectdatabase.cpp:427
void prepareQuery()
Definition projectdatabase.cpp:814
void diagramOrderChanged()
Definition projectdatabase.cpp:292
void updateConductor(Conductor *conductor)
projectDataBase::updateConductor Refresh the mutable columns of an already-inserted conductor.
Definition projectdatabase.cpp:353
QSqlQuery m_update_conductor_query
Definition projectdatabase.h:108
QSqlQuery m_update_element_query
Definition projectdatabase.h:99
virtual ~projectDataBase() override
projectDataBase::~projectDataBase Destructor
Definition projectdatabase.cpp:76