diff options
author | David Schulz <david.schulz@qt.io> | 2022-08-25 14:19:20 +0200 |
---|---|---|
committer | David Schulz <david.schulz@qt.io> | 2022-08-30 06:59:35 +0000 |
commit | e3408a8a0abfd861d741a9deb3d43d8ddf10fad7 (patch) | |
tree | 883cefc538f48aac9f5ec1aa7ac70a18e9da07fb /src/plugins/texteditor/fontsettingspage.cpp | |
parent | 0d4dce4d7e9eaf44118700cc842b8e784d045824 (diff) |
Editor: fix importing color schemes
Change-Id: I286de6030462e692a673a61f3630ad3ca7f95a2d
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
Diffstat (limited to 'src/plugins/texteditor/fontsettingspage.cpp')
-rw-r--r-- | src/plugins/texteditor/fontsettingspage.cpp | 30 |
1 files changed, 18 insertions, 12 deletions
diff --git a/src/plugins/texteditor/fontsettingspage.cpp b/src/plugins/texteditor/fontsettingspage.cpp index 7cced1e7aa..1e6b65d56b 100644 --- a/src/plugins/texteditor/fontsettingspage.cpp +++ b/src/plugins/texteditor/fontsettingspage.cpp @@ -547,9 +547,6 @@ void FontSettingsPageWidget::importScheme() if (importedFile.isEmpty()) return; - Utils::FilePath fileName = createColorSchemeFileName(importedFile.baseName() + "%1." - + importedFile.suffix()); - // Ask about saving any existing modifications maybeSaveColorScheme(); @@ -560,16 +557,25 @@ void FontSettingsPageWidget::importScheme() dialog->setLabelText(tr("Color scheme name:")); dialog->setTextValue(importedFile.baseName()); - connect(dialog, &QInputDialog::textValueSelected, this, [this, fileName](const QString &name) { - m_value.setColorScheme(m_ui.schemeEdit->colorScheme()); - - ColorScheme scheme = m_value.colorScheme(); - scheme.setDisplayName(name); - if (scheme.save(fileName.path(), Core::ICore::dialogParent())) - m_value.setColorSchemeFileName(fileName.path()); + connect(dialog, + &QInputDialog::textValueSelected, + this, + [this, importedFile](const QString &name) { + const Utils::FilePath saveFileName = createColorSchemeFileName( + importedFile.baseName() + "%1." + importedFile.suffix()); + + ColorScheme scheme; + if (scheme.load(importedFile.path())) { + scheme.setDisplayName(name); + scheme.save(saveFileName.path(), Core::ICore::dialogParent()); + m_value.loadColorScheme(saveFileName.path(), m_descriptions); + } else { + qWarning() << "Failed to import color scheme:" << importedFile; + } + + refreshColorSchemeList(); + }); - refreshColorSchemeList(); - }); dialog->open(); } |