diff --git a/LanguageHelper.cpp b/LanguageHelper.cpp index 0f55977..6ebe82d 100644 --- a/LanguageHelper.cpp +++ b/LanguageHelper.cpp @@ -72,13 +72,22 @@ QString LanguageHelper::ocrUiToCode (const QString &text) const { return ocrLanguages_.value (text, text); } -QString LanguageHelper::translateForOcrCode (const QString &text) const { - QString ocrUi = ocrUiToCode (text); - QString translate = translateCodeToUi (ocrUi); - if (translate == ocrUi) { - translate = "auto"; +QString LanguageHelper::ocrToTranslateCodes (const QString &text) const { + QString ocrUi = ocrCodeToUi (text); + QString translateCode = translateUiToCode (ocrUi); + if (translateCode == ocrUi) { + translateCode = "auto"; } - return translate; + return translateCode; +} + +QString LanguageHelper::translateToOcrCodes (const QString &text) const { + QString translateUi = translateCodeToUi (text); + QString ocrCode = ocrUiToCode (translateUi); + if (translateUi == ocrCode) { + return QString (); + } + return ocrCode; } void LanguageHelper::init () { diff --git a/LanguageHelper.h b/LanguageHelper.h index be8d7f7..ac04d86 100644 --- a/LanguageHelper.h +++ b/LanguageHelper.h @@ -19,7 +19,8 @@ class LanguageHelper { QString translateUiToCode (const QString &text) const; QString ocrCodeToUi (const QString &text) const; QString ocrUiToCode (const QString &text) const; - QString translateForOcrCode (const QString &text) const; + QString ocrToTranslateCodes (const QString &text) const; + QString translateToOcrCodes (const QString &text) const; void updateAvailableOcrLanguages (); diff --git a/SelectionDialog.cpp b/SelectionDialog.cpp index ec63fce..7024055 100644 --- a/SelectionDialog.cpp +++ b/SelectionDialog.cpp @@ -90,7 +90,7 @@ bool SelectionDialog::eventFilter (QObject *object, QEvent *event) { } item.ocrLanguage = dictionary_.ocrUiToCode (action->text ()); ST_ASSERT (!item.ocrLanguage.isEmpty ()); - item.sourceLanguage = dictionary_.translateForOcrCode (item.ocrLanguage); + item.sourceLanguage = dictionary_.ocrToTranslateCodes (item.ocrLanguage); ST_ASSERT (!item.sourceLanguage.isEmpty ()); } emit selected (item); diff --git a/SettingsEditor.cpp b/SettingsEditor.cpp index b5887aa..5d2dd89 100644 --- a/SettingsEditor.cpp +++ b/SettingsEditor.cpp @@ -127,7 +127,7 @@ void SettingsEditor::saveSettings () const { settings.setValue (translationDebugMode, ui->translatorDebugCheck->isChecked ()); QString trLanguage = dictionary_.translateUiToCode (ui->translateLangCombo->currentText ()); settings.setValue (translationLanguage, trLanguage); - QString sourceLanguageVal = dictionary_.translateForOcrCode (ocrLanguage); + QString sourceLanguageVal = dictionary_.ocrToTranslateCodes (ocrLanguage); settings.setValue (sourceLanguage, sourceLanguageVal); settings.setValue (translationTimeout, ui->translateTimeoutSpin->value ());