#ifndef PLUGINLISTPROXY_H #define PLUGINLISTPROXY_H #include #include "pluginlist.h" class OrganizerProxy; class PluginListProxy : public MOBase::IPluginList { public: PluginListProxy(OrganizerProxy* oproxy, PluginList* pluginlist); virtual ~PluginListProxy(); QStringList pluginNames() const override; PluginStates state(const QString& name) const override; void setState(const QString& name, PluginStates state) override; int priority(const QString& name) const override; bool setPriority(const QString& name, int newPriority) override; int loadOrder(const QString& name) const override; void setLoadOrder(const QStringList& pluginList) override; bool isMaster(const QString& name) const override; QStringList masters(const QString& name) const override; QString origin(const QString& name) const override; bool onRefreshed(const std::function& callback) override; bool onPluginMoved(const std::function& func) override; bool onPluginStateChanged(const std::function&)>& func) override; private: OrganizerProxy* m_OrganizerProxy; PluginList* m_Proxied; PluginList::SignalRefreshed m_Refreshed; PluginList::SignalPluginMoved m_PluginMoved; PluginList::SignalPluginStateChanged m_PluginStateChanged; std::vector m_Connections; }; #endif // ORGANIZERPROXY_H