diff options
| author | 2025-01-16 01:58:22 -0500 | |
|---|---|---|
| committer | 2025-01-16 01:58:22 -0500 | |
| commit | a5ae79be08125b31bb6b8d9703090a98c6fd2e30 (patch) | |
| tree | 569ee612c9de85b2bb423efa485688ef1d43852e /SQLiteStudio3/guiSQLiteStudio/uiutils.cpp | |
| parent | 21966b4f924b0a1933d9662e75ff253bd154fdb7 (diff) | |
| parent | 81a21e6ce040e7740de86340c8ea4dba30e69bc3 (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/uiutils.cpp')
| -rw-r--r-- | SQLiteStudio3/guiSQLiteStudio/uiutils.cpp | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/SQLiteStudio3/guiSQLiteStudio/uiutils.cpp b/SQLiteStudio3/guiSQLiteStudio/uiutils.cpp index a73b8ee..cdad77c 100644 --- a/SQLiteStudio3/guiSQLiteStudio/uiutils.cpp +++ b/SQLiteStudio3/guiSQLiteStudio/uiutils.cpp @@ -35,7 +35,7 @@ const QStringList pageSizes = map<QPageSize::PageSizeId, QString>(pageSizeIds, [ const QStringList pageSizesWithDimensions; -QString getDbPath(const QString &startWith) +QString getDbPath(bool newFileMode, const QString &startWith) { QString dir = startWith; if (dir.isNull()) @@ -48,8 +48,15 @@ QString getDbPath(const QString &startWith) }); QFileDialog dialog(nullptr, QObject::tr("Select database file"), dir, QString()); - dialog.setAcceptMode(QFileDialog::AcceptOpen); + dialog.setAcceptMode(newFileMode ? QFileDialog::AcceptSave : QFileDialog::AcceptOpen); + + /* As we don't actually overwrite a selected existing database file, switch off the + * overwrite warning. + * FIXME: QFileDialog::DontConfirmOverwrite does not work on MacOS native dialogs. + * Probably some better UX is needed. + */ dialog.setOption(QFileDialog::DontConfirmOverwrite, true); + dialog.setLabelText(QFileDialog::Accept, QObject::tr("Select")); dialog.setLabelText(QFileDialog::FileType, QObject::tr("File type")); dialog.setNameFilters(filters); @@ -97,6 +104,11 @@ void setValidStateTooltip(QWidget* widget, const QString& tip) INDICATOR(widget)->setVisible(widget->isEnabled(), tip); } +bool isValidStateIndicatorVisible(QWidget* widget) +{ + return EXISTS_INDICATOR(widget) && INDICATOR(widget)->isVisible(); +} + QString convertPageSize(QPageSize::PageSizeId size) { return QPageSize::name(size); |
