File indexing completed on 2024-05-12 16:16:03

0001 /*
0002    SPDX-FileCopyrightText: 2019-2023 Laurent Montel <montel@kde.org>
0003 
0004    SPDX-License-Identifier: GPL-2.0-or-later
0005 */
0006 
0007 #pragma once
0008 
0009 #include "textgrammarcheckprivate_export.h"
0010 #include <QObject>
0011 namespace TextGrammarCheck
0012 {
0013 class LanguageToolComboBox;
0014 class TEXTGRAMMARCHECK_TESTS_EXPORT LanguageToolUpdateComboBox : public QObject
0015 {
0016     Q_OBJECT
0017 public:
0018     explicit LanguageToolUpdateComboBox(QObject *parent = nullptr);
0019     ~LanguageToolUpdateComboBox() override;
0020 
0021     Q_REQUIRED_RESULT LanguageToolComboBox *languageToolCombobox() const;
0022     void setLanguageToolCombobox(LanguageToolComboBox *languageToolCombobox);
0023 
0024     void checkListOfLanguagesFromSpecificPath(const QString &url);
0025     void firstRefreshListOfLanguages();
0026     void refreshListOfLanguages();
0027 
0028     Q_REQUIRED_RESULT QWidget *parentWidget() const;
0029     void setParentWidget(QWidget *parentWidget);
0030 
0031 private:
0032     void slotGetLanguagesFinished(const QString &result);
0033     void slotGetLanguagesError(const QString &error);
0034     static inline bool mBListWasLoaded = false;
0035     LanguageToolComboBox *mLanguageToolCombobox = nullptr;
0036     QWidget *mParentWidget = nullptr;
0037 };
0038 }