File indexing completed on 2024-06-16 04:28:08

0001 /*
0002   SPDX-FileCopyrightText: 2022-2024 Laurent Montel <montel@kde.org>
0003 
0004   SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #include "translatorengineclient.h"
0008 #include <KLocalizedString>
0009 
0010 using namespace TextTranslator;
0011 
0012 TranslatorEngineClient::TranslatorEngineClient(QObject *parent)
0013     : QObject{parent}
0014 {
0015 }
0016 
0017 TranslatorEngineClient::~TranslatorEngineClient() = default;
0018 
0019 void TranslatorEngineClient::updateListLanguages()
0020 {
0021     // Nothing by default
0022 }
0023 
0024 bool TranslatorEngineClient::hasConfigurationDialog() const
0025 {
0026     // False by default
0027     return false;
0028 }
0029 
0030 bool TranslatorEngineClient::showConfigureDialog(QWidget *parentWidget)
0031 {
0032     Q_UNUSED(parentWidget);
0033     // Nothing by default
0034     return false;
0035 }
0036 
0037 void TranslatorEngineClient::generateToListFromCurrentToLanguage(const QString &languageCode)
0038 {
0039     Q_UNUSED(languageCode);
0040     // Nothing by default
0041 }
0042 
0043 bool TranslatorEngineClient::hasInvertSupport() const
0044 {
0045     // True by default
0046     return true;
0047 }
0048 
0049 QMap<TextTranslator::TranslatorUtil::Language, QString> TranslatorEngineClient::fillLanguages()
0050 {
0051     QMap<TextTranslator::TranslatorUtil::Language, QString> map;
0052     for (int i = TextTranslator::TranslatorUtil::Language::automatic; i < TextTranslator::TranslatorUtil::Language::lastLanguage; ++i) {
0053         if (isSupported(static_cast<TextTranslator::TranslatorUtil::Language>(i))) {
0054             map.insert(static_cast<TextTranslator::TranslatorUtil::Language>(i),
0055                        TextTranslator::TranslatorUtil::translatedLanguage(static_cast<TextTranslator::TranslatorUtil::Language>(i)));
0056         }
0057     }
0058     return map;
0059 }
0060 
0061 QString TranslatorEngineClient::convertEngineType(TextTranslator::TranslatorEngineClient::EngineType type)
0062 {
0063     switch (type) {
0064     case TextTranslator::TranslatorEngineClient::EngineType::Locale:
0065         return i18n("Locale");
0066     case TextTranslator::TranslatorEngineClient::EngineType::Network:
0067         return i18n("Network");
0068     }
0069     Q_UNREACHABLE();
0070     return {};
0071 }
0072 
0073 #include "moc_translatorengineclient.cpp"