File indexing completed on 2025-02-16 04:49:31
0001 /* 0002 SPDX-FileCopyrightText: 2019-2024 Laurent Montel <montel@kde.org> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #include "languagetoolplugin.h" 0008 #include "languagetoolinterface.h" 0009 #include <KLocalizedString> 0010 #include <KPluginFactory> 0011 #include <PimCommon/CustomToolsWidgetng> 0012 #include <TextGrammarCheck/LanguageToolConfigDialog> 0013 #include <TextGrammarCheck/LanguageToolManager> 0014 0015 K_PLUGIN_CLASS_WITH_JSON(LanguageToolPlugin, "kmail_languagetoolplugin.json") 0016 LanguageToolPlugin::LanguageToolPlugin(QObject *parent, const QList<QVariant> &) 0017 : PimCommon::CustomToolsPlugin(parent) 0018 { 0019 } 0020 0021 LanguageToolPlugin::~LanguageToolPlugin() = default; 0022 0023 PimCommon::CustomToolsViewInterface *LanguageToolPlugin::createView(KActionCollection *ac, PimCommon::CustomToolsWidgetNg *parent) 0024 { 0025 auto view = new LanguageToolInterface(ac, parent); 0026 0027 connect(view, &LanguageToolInterface::toolsWasClosed, parent, &PimCommon::CustomToolsWidgetNg::slotToolsWasClosed); 0028 connect(view, &LanguageToolInterface::insertText, parent, &PimCommon::CustomToolsWidgetNg::insertText); 0029 connect(view, &LanguageToolInterface::activateView, parent, &PimCommon::CustomToolsWidgetNg::slotActivateView); 0030 connect(view, &LanguageToolInterface::configure, this, &LanguageToolPlugin::showConfigureDialog); 0031 return view; 0032 } 0033 0034 QString LanguageToolPlugin::customToolName() const 0035 { 0036 return i18n("LanguageTool Plugin"); 0037 } 0038 0039 bool LanguageToolPlugin::hasConfigureDialog() const 0040 { 0041 return true; 0042 } 0043 0044 void LanguageToolPlugin::showConfigureDialog(QWidget *parent) 0045 { 0046 TextGrammarCheck::LanguageToolConfigDialog dlg(parent); 0047 if (dlg.exec()) { 0048 TextGrammarCheck::LanguageToolManager::self()->loadSettings(); 0049 } 0050 } 0051 0052 #include "languagetoolplugin.moc" 0053 0054 #include "moc_languagetoolplugin.cpp"