From 7d84bd2f7b052598b65af8d437659c98eb24a4e2 Mon Sep 17 00:00:00 2001 From: Gres Date: Thu, 24 Mar 2022 20:39:39 +0300 Subject: [PATCH] Fixed translators order persistence fixes #91 --- src/settingseditor.cpp | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/settingseditor.cpp b/src/settingseditor.cpp index 9865c07..4bf4f17 100644 --- a/src/settingseditor.cpp +++ b/src/settingseditor.cpp @@ -323,7 +323,9 @@ void SettingsEditor::setSettings(const Settings &settings) ui->proxySaveCheck->setChecked(settings.proxySavePassword); ui->tessdataPath->setText(settings.tessdataPath); + ui->translatorsPath->setText(settings.translatorsPath); updateModels(); + ui->tesseractLangCombo->setCurrentText( LanguageCodes::name(settings.sourceLanguage)); ui->tesseractVersion->setCurrentIndex(int(settings.tesseractVersion)); @@ -336,7 +338,6 @@ void SettingsEditor::setSettings(const Settings &settings) ui->doTranslationCheck->setChecked(settings.doTranslation); ui->ignoreSslCheck->setChecked(settings.ignoreSslErrors); ui->translateTimeoutSpin->setValue(settings.translationTimeout.count()); - ui->translatorsPath->setText(settings.translatorsPath); ui->translateLangCombo->setCurrentText( LanguageCodes::name(settings.targetLanguage)); updateTranslators(settings.translators); @@ -408,7 +409,14 @@ void SettingsEditor::updateTranslators(const QStringList &translators) if (models_.translators().isEmpty()) return; - ui->translatorList->addItems(models_.translators()); + QStringList all; + for (const auto &i : translators) { + if (models_.translators().contains(i)) + all.append(i); + } + all += models_.translators(); + all.removeDuplicates(); + ui->translatorList->addItems(all); for (auto i = 0, end = ui->translatorList->count(); i < end; ++i) { auto item = ui->translatorList->item(i);