Improve ProjectDataBase use

This commit is contained in:
Claveau Joshua
2020-07-01 18:31:19 +02:00
parent 6652401d07
commit c86f9ccc3a
7 changed files with 159 additions and 57 deletions

View File

@@ -48,6 +48,9 @@ class projectDataBase : public QObject
void updateDB();
QETProject *project() const;
QSqlQuery newQuery(const QString &query = QString());
void addElement(Element *element);
void removeElement(Element *element);
void elementInfoChanged(Element *element);
signals:
void dataBaseUpdated();
@@ -60,12 +63,16 @@ class projectDataBase : public QObject
void populateElementTable();
void populateElementInfoTable();
void populateDiagramInfoTable();
void prepareQuery();
static QHash<QString, QString> elementInfoToString(Element *elmt);
private:
QPointer<QETProject> m_project;
QSqlDatabase m_data_base;
QSqlQuery m_insert_elements_query;
QSqlQuery m_insert_elements_query,
m_insert_element_info_query,
m_remove_element_query,
m_update_element_query;
public:
static void exportDb(projectDataBase *db, QWidget *parent = nullptr, const QString &caption = QString(), const QString &dir = QString());