move constructor for database
This commit is contained in:
parent
ca9fa939a4
commit
d3ac69d499
|
|
@ -350,7 +350,9 @@ bool DatabasePrivate::putModelToDatabase()
|
|||
void DatabasePrivate::createChangeLogs()
|
||||
{
|
||||
// currentModel.model("change_log")
|
||||
QStringList diff = sqlGenerator->diff(nullptr, currentModel.tableByName(QStringLiteral("__change_log")));
|
||||
QStringList diff = sqlGenerator->diff(nullptr,
|
||||
currentModel.tableByName(
|
||||
QStringLiteral("__change_log")));
|
||||
|
||||
foreach (QString s, diff)
|
||||
db.exec(s);
|
||||
|
|
@ -364,7 +366,6 @@ void DatabasePrivate::createChangeLogs()
|
|||
Database::Database(QObject *parent)
|
||||
: QObject(parent), d_ptr(new DatabasePrivate(this))
|
||||
{
|
||||
// _d = new QSharedDataPointer<DatabasePrivate>(new DatabasePrivate(this));
|
||||
DatabasePrivate::lastId++;
|
||||
}
|
||||
|
||||
|
|
@ -372,7 +373,6 @@ Database::Database(const Database &other)
|
|||
: QObject(other.parent()), d_ptr(new DatabasePrivate(this))
|
||||
{
|
||||
DatabasePrivate::lastId++;
|
||||
// _d = other._d;
|
||||
|
||||
setDriver(other.driver());
|
||||
setHostName(other.hostName());
|
||||
|
|
@ -387,7 +387,7 @@ Database::Database(const QSqlDatabase &other)
|
|||
//TODO: make a polish here
|
||||
DatabasePrivate::lastId++;
|
||||
|
||||
// setDriver(other.driver());
|
||||
setDriver(other.driverName());
|
||||
setHostName(other.hostName());
|
||||
setPort(other.port());
|
||||
setDatabaseName(other.databaseName());
|
||||
|
|
@ -396,6 +396,12 @@ Database::Database(const QSqlDatabase &other)
|
|||
qRegisterMetaType<ChangeLogTable*>();
|
||||
}
|
||||
|
||||
Database::Database(Database &&other)
|
||||
{
|
||||
d_ptr = other.d_ptr;
|
||||
other.d_ptr = nullptr;
|
||||
}
|
||||
|
||||
Database::~Database()
|
||||
{
|
||||
Q_D(Database);
|
||||
|
|
|
|||
|
|
@ -30,7 +30,7 @@
|
|||
NUT_BEGIN_NAMESPACE
|
||||
|
||||
class ChangeLogTable;
|
||||
class NUT_EXPORT DatabasePrivate //: public QSharedData
|
||||
class NUT_EXPORT DatabasePrivate
|
||||
{
|
||||
Database *q_ptr;
|
||||
Q_DECLARE_PUBLIC(Database)
|
||||
|
|
|
|||
Loading…
Reference in New Issue