- Additional (plugin)tabs closable in MainWindow
[qtrapids] / src / plugins / PluginInterface.h
index a5ea554..c89ba22 100644 (file)
@@ -56,13 +56,14 @@ namespace qtrapids
                        /// @todo Additional functionality request constants.
                        enum PluginRequest {
                                OPEN_FILE,
+                               READ_BUFFER,
                                UNKNOWN_REQUEST
                        };
                        
                        /// @brief Sets the plugin GUI element to host application
                        /// @note It is up to the host application to decide how to manage
                        /// and show the actual widget.
-                       virtual bool setGui(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE) = 0;
+                       virtual bool setGui(QWidget* widget, PluginWidgetType type = UNKNOWN_TYPE, PluginInterface* plugin = NULL) = 0;
                        
                        /// @brief Adds additional plugin wigdets to the host application.
                        /// This functio can be called by the plugin recursively, i.e. when GUI events occur
@@ -102,6 +103,11 @@ namespace qtrapids
                        
                        /// @brief Initializes the plugin instance.
                        virtual void initialize(PluginHostInterface* host, Info info = Info()) = 0;
+                       
+                       /// @brief Returns plugin identifier to be used by the host application
+                       /// @returns Plugin identifier as string representation.
+                       virtual QString identifier() = 0;
+                       
                        virtual QWidget* getGui() = 0;
        };