mirror of
https://github.com/python-LimeReport/LimeReport.git
synced 2025-10-02 03:53:21 +03:00
Fix re-enabling subdetail checkbox #109
This commit is contained in:
@@ -96,31 +96,10 @@ void DataBrowser::slotAddConnection()
|
||||
void DataBrowser::slotSQLEditingFinished(SQLEditResult result)
|
||||
{
|
||||
if (result.dialogMode==SQLEditDialog::AddMode) {
|
||||
switch (result.resultMode) {
|
||||
case SQLEditResult::Query:
|
||||
addQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubQuery:
|
||||
addSubQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubProxy:
|
||||
addProxy(result);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
addDatasource(result);
|
||||
} else {
|
||||
switch(result.resultMode){
|
||||
case SQLEditResult::Query:
|
||||
changeQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubQuery:
|
||||
changeSubQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubProxy:
|
||||
changeProxy(result);
|
||||
}
|
||||
applyChanges(result);
|
||||
}
|
||||
|
||||
updateDataTree();
|
||||
}
|
||||
|
||||
@@ -661,6 +640,50 @@ void DataBrowser::changeProxy(SQLEditResult result)
|
||||
}
|
||||
}
|
||||
|
||||
SQLEditResult::ResultMode DataBrowser::currentDatasourceType(const QString& datasourceName)
|
||||
{
|
||||
if (m_report->dataManager()->isQuery(datasourceName)) return SQLEditResult::Query;
|
||||
if (m_report->dataManager()->isSubQuery(datasourceName)) return SQLEditResult::SubQuery;
|
||||
if (m_report->dataManager()->isProxy(datasourceName)) return SQLEditResult::SubProxy;
|
||||
return SQLEditResult::Undefined;
|
||||
}
|
||||
|
||||
|
||||
void DataBrowser::applyChanges(SQLEditResult result)
|
||||
{
|
||||
if (result.resultMode == currentDatasourceType(result.datasourceName)){
|
||||
switch(result.resultMode){
|
||||
case SQLEditResult::Query:
|
||||
changeQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubQuery:
|
||||
changeSubQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubProxy:
|
||||
changeProxy(result);
|
||||
}
|
||||
} else {
|
||||
removeDatasource(result.datasourceName);
|
||||
addDatasource(result);
|
||||
}
|
||||
}
|
||||
|
||||
void DataBrowser::addDatasource(SQLEditResult result)
|
||||
{
|
||||
switch (result.resultMode) {
|
||||
case SQLEditResult::Query:
|
||||
addQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubQuery:
|
||||
addSubQuery(result);
|
||||
break;
|
||||
case SQLEditResult::SubProxy:
|
||||
addProxy(result);
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
void DataBrowser::addConnectionDesc(ConnectionDesc *connection)
|
||||
{
|
||||
m_report->dataManager()->addConnectionDesc(connection);
|
||||
|
Reference in New Issue
Block a user