Finish 1.4.47

This commit is contained in:
Arin Alexander 2017-10-24 01:54:57 +03:00
commit d0e10863b9
4 changed files with 11 additions and 10 deletions

View File

@ -70,7 +70,7 @@ RCC_DIR = $${ARCH_DIR}/$${BUILD_TYPE}/rcc
LIMEREPORT_VERSION_MAJOR = 1
LIMEREPORT_VERSION_MINOR = 4
LIMEREPORT_VERSION_RELEASE = 43
LIMEREPORT_VERSION_RELEASE = 47
LIMEREPORT_VERSION = '$${LIMEREPORT_VERSION_MAJOR}.$${LIMEREPORT_VERSION_MINOR}.$${LIMEREPORT_VERSION_RELEASE}'
DEFINES *= LIMEREPORT_VERSION_STR=\\\"$${LIMEREPORT_VERSION}\\\"

View File

@ -118,9 +118,9 @@ void QueryHolder::setConnectionName(QString connectionName)
m_connectionName=connectionName;
}
void QueryHolder::invalidate(IDataSource::DatasourceMode mode){
void QueryHolder::invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed){
QSqlDatabase db = QSqlDatabase::database(m_connectionName);
if (!db.isValid()){
if (!db.isValid() || dbWillBeClosed){
setLastError(QObject::tr("Invalid connection! %1").arg(m_connectionName));
delete m_query;
m_dataSource.clear();
@ -562,9 +562,10 @@ IDataSource *ProxyHolder::dataSource(IDataSource::DatasourceMode mode)
return m_datasource.data();
}
void ProxyHolder::invalidate(IDataSource::DatasourceMode mode)
void ProxyHolder::invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed)
{
Q_UNUSED(mode)
Q_UNUSED(dbWillBeClosed);
if (m_model && m_model->isInvalid()){
m_invalid = true;
m_lastError = tr("Datasource has been invalidated");

View File

@ -75,7 +75,7 @@ public:
virtual bool isOwned() const = 0;
virtual bool isEditable() const = 0;
virtual bool isRemovable() const = 0;
virtual void invalidate(IDataSource::DatasourceMode mode) = 0;
virtual void invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed = false) = 0;
virtual void update() = 0;
virtual void clearErrors() = 0;
virtual ~IDataSourceHolder(){}
@ -92,7 +92,7 @@ public:
QString lastError() const { return m_dataSource->lastError(); }
bool isEditable() const { return false; }
bool isRemovable() const { return false; }
void invalidate(IDataSource::DatasourceMode mode){Q_UNUSED(mode)}
void invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed = false){Q_UNUSED(mode) Q_UNUSED(dbWillBeClosed)}
void update(){}
void clearErrors(){}
signals:
@ -201,7 +201,7 @@ public:
bool isPrepared() const {return m_prepared;}
QString lastError() const { return m_lastError; }
void setLastError(QString value){m_lastError=value; if (m_query) {delete m_query; m_query=0;}}
void invalidate(IDataSource::DatasourceMode mode);
void invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed = false);
void update();
void clearErrors(){setLastError("");}
DataSourceManager* dataManager() const {return m_dataManager;}
@ -331,7 +331,7 @@ public:
bool isEditable() const { return true; }
bool isRemovable() const { return true; }
QString lastError() const { return m_lastError; }
void invalidate(IDataSource::DatasourceMode mode);
void invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed = false);
void update(){}
void clearErrors(){m_lastError = "";}
DataSourceManager* dataManager() const {return m_dataManger;}
@ -424,7 +424,7 @@ public:
bool isOwned() const {return m_owned;}
bool isEditable() const {return false;}
bool isRemovable() const {return false;}
void invalidate(IDataSource::DatasourceMode mode){Q_UNUSED(mode)}
void invalidate(IDataSource::DatasourceMode mode, bool dbWillBeClosed = false){Q_UNUSED(mode) Q_UNUSED(dbWillBeClosed)}
~CallbackDatasourceHolder(){delete m_datasource;}
void update(){}
void clearErrors(){}

View File

@ -932,7 +932,7 @@ void DataSourceManager::disconnectConnection(const QString& connectionName)
if (isQuery(datasourceName) || isSubQuery(datasourceName)){
QueryHolder* qh = dynamic_cast<QueryHolder*>(dataSourceHolder(datasourceName));
if (qh && qh->connectionName().compare(connectionName,Qt::CaseInsensitive)==0){
qh->invalidate(designTime()?IDataSource::DESIGN_MODE:IDataSource::RENDER_MODE);
qh->invalidate(designTime()?IDataSource::DESIGN_MODE:IDataSource::RENDER_MODE, true);
qh->setLastError(tr("invalid connection"));
}
}