/** * @RDE_HEADER@ * plugin manager widget * $Id$ * $HeadURL$ * $Author$ * * Created by Mike Wille, SLSE, 2016-07-07 */ #pragma once #include #include namespace Ui { class LtsPluginWidget; } namespace LtsPluginManager { class LtsPluginWidget : public QWidget { Q_OBJECT public: enum Status { UNKNOWN = 0, // not a real status, more like an error INVALID, // not a DataPlugin, not a GuiPlugin LOADED, // valid and loaded and probably used CONFLICT, // conflicting with other plugin(s), was unloaded for safety UNLOADED, // unloaded by user INIT_FAILED, // init() has failed on the plugin MISSING_SERVICE, // service is requiered that is not available OBLIBATORY_INTERFACES_MISSING, // some plugins did not pronounce their interfaces INVALID_PLUGIN_VERSION, // plugin manager not compatible }; explicit LtsPluginWidget(const QString &filename, QWidget *parent = nullptr); ~LtsPluginWidget(); void setStatus(Status status); void setType(const QString &type = QString()); void setIdent(const QString &ident = QString()); private: Ui::LtsPluginWidget *m_ui; }; } // namespace LtsPluginManager