aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/dbtree
diff options
context:
space:
mode:
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/dbtree')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/dbtree/dbtree.cpp9
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.cpp5
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.h4
3 files changed, 14 insertions, 4 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtree.cpp b/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtree.cpp
index 98baaa9..8e137a4 100644
--- a/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtree.cpp
+++ b/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtree.cpp
@@ -1484,15 +1484,24 @@ void DbTree::deleteItems(const QList<DbTreeItem*>& itemsToDelete)
return;
// Deleting items
+ QSet<Db*> deletedDatabases;
QSet<Db*> databasesToRefresh;
for (DbTreeItem* item : items)
{
+ if (item->getType() == DbTreeItem::Type::DB)
+ deletedDatabases << item->getDb();
+
databasesToRefresh << item->getDb();
deleteItem(item);
}
for (Db* dbToRefresh : databasesToRefresh)
+ {
+ if (deletedDatabases.contains(dbToRefresh))
+ continue;
+
DBTREE->refreshSchema(dbToRefresh);
+ }
}
void DbTree::refreshSchemas()
diff --git a/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.cpp b/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.cpp
index 8a71a10..281510f 100644
--- a/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.cpp
+++ b/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.cpp
@@ -1152,7 +1152,7 @@ void DbTreeModel::moveOrCopyDbObjects(const QList<DbTreeItem*>& srcItems, DbTree
bool DbTreeModel::confirmReferencedTables(const QStringList& tables)
{
QMessageBox::StandardButton result = QMessageBox::question(MAINWINDOW, tr("Referenced tables"),
- tr("Do you want to include following referenced tables as well:\n%1").arg(tables.join(", ")));
+ tr("Do you want to include following referenced tables as well:\n%1").arg(tables.join(", ")));
return result == QMessageBox::Yes;
}
@@ -1180,7 +1180,7 @@ bool DbTreeModel::confirmConversion(const QList<QPair<QString, QString> >& diffs
return dialog.exec() == QDialog::Accepted;
}
-bool DbTreeModel::confirmConversionErrors(const QHash<QString,QSet<QString>>& errors)
+bool DbTreeModel::confirmConversionErrors(const QHash<QString, QSet<QString> >& errors)
{
ErrorsConfirmDialog dialog(MAINWINDOW);
dialog.setTopLabel(tr("Following error occurred while converting SQL statements to the target SQLite version:"));
@@ -1188,6 +1188,7 @@ bool DbTreeModel::confirmConversionErrors(const QHash<QString,QSet<QString>>& er
dialog.setErrors(errors);
return dialog.exec() == QDialog::Accepted;
}
+
bool DbTreeModel::getIgnoreDbLoadedSignal() const
{
return ignoreDbLoadedSignal;
diff --git a/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.h b/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.h
index c92fa2c..ee97e87 100644
--- a/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.h
+++ b/SQLiteStudio3/guiSQLiteStudio/dbtree/dbtreemodel.h
@@ -89,8 +89,8 @@ class GUI_API_EXPORT DbTreeModel : public QStandardItemModel
static bool confirmReferencedTables(const QStringList& tables);
static bool resolveNameConflict(QString& nameInConflict);
- static bool confirmConversion(const QList<QPair<QString,QString>>& diffs);
- static bool confirmConversionErrors(const QHash<QString, QSet<QString> >& errors);
+ static bool confirmConversion(const QList<QPair<QString, QString>>& diffs);
+ static bool confirmConversionErrors(const QHash<QString, QSet<QString>>& errors);
static const QString toolTipTableTmp;
static const QString toolTipHdrRowTmp;