diff options
Diffstat (limited to 'libs/installer_bsplugins/src/MOPlugin/BSPlugins.h')
| -rw-r--r-- | libs/installer_bsplugins/src/MOPlugin/BSPlugins.h | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/libs/installer_bsplugins/src/MOPlugin/BSPlugins.h b/libs/installer_bsplugins/src/MOPlugin/BSPlugins.h new file mode 100644 index 0000000..81248d7 --- /dev/null +++ b/libs/installer_bsplugins/src/MOPlugin/BSPlugins.h @@ -0,0 +1,39 @@ +#ifndef BSPLUGINS_H +#define BSPLUGINS_H + +#include "IPluginPanel.h" + +class BSPlugins final : public IPluginPanel +{ + Q_OBJECT + Q_INTERFACES(MOBase::IPlugin IPluginPanel) + Q_PLUGIN_METADATA(IID "org.tannin.BSPlugins" FILE "bsplugins.json") + +public: + inline static const QString NAME = QStringLiteral("Bethesda Plugin Manager"); + + BSPlugins() = default; + + // IPlugin + + QString name() const override; + std::vector<std::shared_ptr<const MOBase::IPluginRequirement>> + requirements() const override; + QString author() const override; + QString description() const override; + MOBase::VersionInfo version() const override; + QList<MOBase::PluginSetting> settings() const override; + bool enabledByDefault() const override; + + // IPluginPanel + + bool initPlugin(MOBase::IOrganizer* organizer); + QWidget* createWidget(IPanelInterface* panelInterface, QWidget* parent) override; + QString label() const override; + Position position() const override; + +private: + MOBase::IOrganizer* m_Organizer; +}; + +#endif // BSPLUGINS_H |
