Editor: fix importing color schemes

Change-Id: I286de6030462e692a673a61f3630ad3ca7f95a2d
Reviewed-by: Artem Sokolovskii <artem.sokolovskii@qt.io>
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
David Schulz
2022-08-25 14:19:20 +02:00
parent 0d4dce4d7e
commit e3408a8a0a

View File

@@ -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());
connect(dialog,
&QInputDialog::textValueSelected,
this,
[this, importedFile](const QString &name) {
const Utils::FilePath saveFileName = createColorSchemeFileName(
importedFile.baseName() + "%1." + importedFile.suffix());
ColorScheme scheme = m_value.colorScheme();
ColorScheme scheme;
if (scheme.load(importedFile.path())) {
scheme.setDisplayName(name);
if (scheme.save(fileName.path(), Core::ICore::dialogParent()))
m_value.setColorSchemeFileName(fileName.path());
scheme.save(saveFileName.path(), Core::ICore::dialogParent());
m_value.loadColorScheme(saveFileName.path(), m_descriptions);
} else {
qWarning() << "Failed to import color scheme:" << importedFile;
}
refreshColorSchemeList();
});
dialog->open();
}