File indexing completed on 2024-05-12 04:39:40

0001 /*
0002     SPDX-FileCopyrightText: 2015 Sergey Kalinichev <kalinichev.so.0@gmail.com>
0003 
0004     SPDX-License-Identifier: GPL-2.0-only OR GPL-3.0-only OR LicenseRef-KDE-Accepted-GPL
0005 */
0006 
0007 #ifndef PARSERWIDGET_H
0008 #define PARSERWIDGET_H
0009 
0010 #include <QWidget>
0011 #include <QScopedPointer>
0012 
0013 namespace Ui
0014 {
0015 class ParserWidget;
0016 }
0017 
0018 namespace KDevelop
0019 {
0020 class IProject;
0021 }
0022 
0023 struct ParserArguments;
0024 
0025 class ParserWidget : public QWidget
0026 {
0027     Q_OBJECT
0028 public:
0029     explicit ParserWidget(QWidget* parent);
0030     ~ParserWidget() override;
0031 
0032     void setParserArguments(const ParserArguments& arguments);
0033     ParserArguments parserArguments() const;
0034 
0035 Q_SIGNALS:
0036     void changed();
0037 
0038 private Q_SLOTS:
0039     void textEdited();
0040     void languageStandardChangedC(const QString& standard);
0041     void languageStandardChangedCpp(const QString& standard);
0042     void languageStandardChangedOpenCl(const QString& standard);
0043     void languageStandardChangedCuda(const QString& standard);
0044     void updateEnablements();
0045 
0046 private:
0047     QScopedPointer<Ui::ParserWidget> m_ui;
0048 };
0049 
0050 #endif // PARSERWIDGET_H