aboutsummaryrefslogtreecommitdiffstats
path: root/SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp
diff options
context:
space:
mode:
authorLibravatarUnit 193 <unit193@unit193.net>2025-01-16 01:58:22 -0500
committerLibravatarUnit 193 <unit193@unit193.net>2025-01-16 01:58:22 -0500
commita5ae79be08125b31bb6b8d9703090a98c6fd2e30 (patch)
tree569ee612c9de85b2bb423efa485688ef1d43852e /SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp
parent21966b4f924b0a1933d9662e75ff253bd154fdb7 (diff)
parent81a21e6ce040e7740de86340c8ea4dba30e69bc3 (diff)
Update upstream source from tag 'upstream/3.4.13+dfsg'
Update to upstream version '3.4.13+dfsg' with Debian dir bf81ee0219cb8e4562a4751df17d75814772d2d6
Diffstat (limited to 'SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp')
-rw-r--r--SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp31
1 files changed, 24 insertions, 7 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp b/SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp
index 86f48bf..b42848a 100644
--- a/SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp
+++ b/SQLiteStudio3/guiSQLiteStudio/windows/tablewindow.cpp
@@ -865,6 +865,9 @@ void TableWindow::changesSuccessfullyCommitted()
}
}
}
+
+ if (ui->tabWidget->currentIndex() == getDataTabIdx())
+ ui->dataView->refreshData();
}
void TableWindow::changesFailedToCommit(int errorCode, const QString& errorText)
@@ -1047,7 +1050,7 @@ bool TableWindow::validate(bool skipWarning)
QStringList nonStrictColumns;
for (SqliteCreateTable::Column* column : createTable->columns)
{
- if (DataType::isStrict(column->type->name))
+ if (DataType::isStrict(column->type ? column->type->name : QString()))
continue;
nonStrictColumns << column->name;
@@ -1310,7 +1313,7 @@ void TableWindow::importTable()
ImportDialog dialog(this);
dialog.setDbAndTable(db, table);
if (dialog.exec() == QDialog::Accepted && dataLoaded)
- ui->dataView->refreshData();
+ ui->dataView->refreshData(false);
}
void TableWindow::populateTable()
@@ -1318,7 +1321,7 @@ void TableWindow::populateTable()
PopulateDialog dialog(this);
dialog.setDbAndTable(db, table);
if (dialog.exec() == QDialog::Accepted && dataLoaded)
- ui->dataView->refreshData();
+ ui->dataView->refreshData(false);
}
void TableWindow::createSimilarTable()
@@ -1342,15 +1345,16 @@ void TableWindow::tabChanged(int newTab)
"Do you want to commit the structure, or do you want to go back to the structure tab?"),
tr("Go back to structure tab"), tr("Commit modifications and browse data."));
- ui->tabWidget->setCurrentIndex(0);
if (res == 1)
commitStructure(true);
+ else
+ focusStructureTab();
return;
}
if (!dataLoaded)
- ui->dataView->refreshData();
+ ui->dataView->refreshData(false);
}
}
@@ -1393,8 +1397,11 @@ void TableWindow::strictChanged()
{
for (SqliteCreateTable::Column* column : createTable->columns)
{
- column->type->precision = QVariant();
- column->type->scale = QVariant();
+ if (column->type)
+ {
+ column->type->precision = QVariant();
+ column->type->scale = QVariant();
+ }
}
}
@@ -1644,6 +1651,16 @@ void TableWindow::delColumn(const QString& columnName)
delColumn(colIdx);
}
+void TableWindow::focusStructureTab()
+{
+ ui->tabWidget->setCurrentIndex(getStructureTabIdx());
+}
+
+void TableWindow::focusDataTab()
+{
+ ui->tabWidget->setCurrentIndex(getDataTabIdx());
+}
+
void TableWindow::updateTabsOrder()
{
tabsMoving = true;