File indexing completed on 2024-05-05 04:39:54
0001 /* 0002 SPDX-FileCopyrightText: 2012-2013 Miquel Sabaté <mikisabate@gmail.com> 0003 0004 SPDX-License-Identifier: GPL-2.0-or-later 0005 */ 0006 0007 #ifndef GHPROVIDERPLUGIN_H 0008 #define GHPROVIDERPLUGIN_H 0009 0010 0011 #include <interfaces/iplugin.h> 0012 #include <interfaces/iprojectprovider.h> 0013 0014 0015 namespace gh 0016 { 0017 0018 /** 0019 * @class ProviderPlugin 0020 * This is the class that embeds the code of the Github provider into a plugin. 0021 */ 0022 class ProviderPlugin : public KDevelop::IPlugin, KDevelop::IProjectProvider 0023 { 0024 Q_OBJECT 0025 Q_INTERFACES(KDevelop::IProjectProvider) 0026 0027 public: 0028 /// Constructor. 0029 explicit ProviderPlugin(QObject *parent, const QList<QVariant> &args); 0030 0031 /// Destructor. 0032 ~ProviderPlugin() override; 0033 0034 /// @returns the name of this plugin. 0035 QString name() const override; 0036 0037 /// @returns the main widget for this plugin. 0038 KDevelop::IProjectProviderWidget * providerWidget(QWidget *parent) override; 0039 }; 0040 0041 } // End of namespace gh 0042 0043 0044 #endif // GHPROVIDERPLUGIN_H