class PluginInterface { public: virtual QDomDocument* configuration() = 0; virtual void setConfiguration( QDomDocument* pluginConfig ) = 0; virtual void unload() = 0; virtual void load( GlooxInterface* glooxInterface ) = 0; signals: void configurationChanged( PluginInterface* pluginSource ); }; class PluginUIInterface { public: virtual Page* getMaximizedWidget() const = 0; virtual PluginFrame* getMinimizedWidget() const = 0; public slots: void selected(bool selected); }; Q_DECLARE_INTERFACE(PluginInterface, "com.netk5.testPlugin.PluginInterface/1.0") Q_DECLARE_INTERFACE(PluginUIInterface, "com.netk5.testPlugin.PluginUIInterface/1.0")