OpenRGB/qt/OpenRGBPluginsPage/OpenRGBPluginsPage.h
Adam Honse a20405a6ef Add Plugins tab to settings for installing, enabling, disabling, and removing plugins
* Rework Plugin Manager so that plugins can be loaded after initialization
* Use a callback function to add plugin tabs to the dialog
* Install button lets you choose plugin file, copies it to plugins directory, and immediately loads it
* Remove button deletes selected plugin file from plugins directory - need to add a means to unload it first
2021-08-25 02:44:53 +00:00

35 lines
713 B
C++

#ifndef OPENRGBPLUGINSPAGE_H
#define OPENRGBPLUGINSPAGE_H
#include <QWidget>
#include "OpenRGBPluginsEntry.h"
#include "ui_OpenRGBPluginsPage.h"
#include "PluginManager.h"
namespace Ui
{
class OpenRGBPluginsPage;
}
class Ui::OpenRGBPluginsPage : public QWidget
{
Q_OBJECT
public:
explicit OpenRGBPluginsPage(PluginManager* plugin_manager_ptr, QWidget *parent = nullptr);
~OpenRGBPluginsPage();
private slots:
void on_InstallPluginButton_clicked();
void on_RemovePluginButton_clicked();
private:
Ui::OpenRGBPluginsPageUi* ui;
PluginManager* plugin_manager;
std::vector<OpenRGBPluginsEntry*> entries;
void RefreshList();
};
#endif // OPENRGBPLUGINSPAGE_H