change log made metatype

This commit is contained in:
Hamed Masafi 2018-01-09 13:27:31 +03:30
parent 403d24ae23
commit 4ebde50b68
4 changed files with 13 additions and 6 deletions

View File

@ -22,7 +22,7 @@
NUT_BEGIN_NAMESPACE
ChangeLogTable::ChangeLogTable()
ChangeLogTable::ChangeLogTable(QObject *tableSet) : Table(tableSet)
{

View File

@ -38,9 +38,11 @@ class ChangeLogTable : public Table
NUT_DECLARE_FIELD(QString, version, version, setVersion)
public:
ChangeLogTable();
ChangeLogTable(QObject *tableSet = Q_NULLPTR);
};
NUT_END_NAMESPACE
Q_DECLARE_METATYPE(Nut::ChangeLogTable*)
#endif // CHANGELOGTABLE_H

View File

@ -39,6 +39,7 @@
#include "generators/sqlitegenerator.h"
#include "generators/sqlservergenerator.h"
#include "query.h"
#include "changelogtable.h"
#include <iostream>
#include <cstdarg>
@ -188,9 +189,10 @@ bool DatabasePrivate::getCurrectScheema()
for (int i = 0; i < q->metaObject()->classInfoCount(); i++) {
QMetaClassInfo ci = q->metaObject()->classInfo(i);
QString ciName
= QString(ci.name()).replace(__nut_NAME_PERFIX, "").replace("\"",
"");
QString ciName = QString(ci.name())
.replace(__nut_NAME_PERFIX, "")
.replace("\"", "");
if (ciName.startsWith(__nut_TABLE))
tables.insert(ciName.split(" ").at(1), ci.value());
@ -317,6 +319,7 @@ Database::Database(QObject *parent)
: QObject(parent), d_ptr(new DatabasePrivate(this))
{
DatabasePrivate::lastId++;
qRegisterMetaType<ChangeLogTable*>();
}
Database::Database(const Database &other)
@ -331,6 +334,7 @@ Database::Database(const Database &other)
setDatabaseName(other.databaseName());
setUserName(other.userName());
setPassword(other.password());
qRegisterMetaType<ChangeLogTable*>();
}
Database::Database(const QSqlDatabase &other)
@ -344,6 +348,7 @@ Database::Database(const QSqlDatabase &other)
setDatabaseName(other.databaseName());
setUserName(other.userName());
setPassword(other.password());
qRegisterMetaType<ChangeLogTable*>();
}
Database::~Database()

View File

@ -23,12 +23,12 @@
#include "database.h"
#include "databasemodel.h"
#include "changelogtable.h"
#include <QDebug>
NUT_BEGIN_NAMESPACE
class ChangeLogTable;
class DatabasePrivate
{
Database *q_ptr;