Salome HOME
Fix solvespace version number in environment.
[modules/shaper.git] / src / ModuleBase / ModuleBase_WidgetToolbox.h
index 639e90f14da10fd57faa7e709d67af45d574207e..28e48c0fce27b20b33ccdd81dbdc47b596ca5dd1 100644 (file)
 #include <ModuleBase.h>
 #include <ModuleBase_PagedContainer.h>
 
-#include <QToolBox>
-
 class ModuleBase_PageBase;
+class ModuleBase_ToolBox;
 
+/**
+* \ingroup GUI
+* Implements a model widget for switch as a container widget. It can be defined in XML with "toolbox" keyword
+*/
 class MODULEBASE_EXPORT ModuleBase_WidgetToolbox : public ModuleBase_PagedContainer
 {
   Q_OBJECT
  public:
+  /// Constructor
+  /// \param theParent the parent object
+  /// \param theData the widget configuration. The attribute of the model widget is obtained from
+  /// \param theParentId is Id of a parent of the current attribute
   ModuleBase_WidgetToolbox(QWidget* theParent, const Config_WidgetAPI* theData,
                            const std::string& theParentId);
   virtual ~ModuleBase_WidgetToolbox();
-  /// Overrides ModuleBase_PagedContainer
-  int addPage(ModuleBase_PageBase* theWidget,
-              const QString& theName, const QString& theCaseId);
+
+  /// Defines if it is supported to set the value in this widget
+  /// \return false because this is an info widget
+  virtual bool canSetValue() const { return false; };
+
+  /// Add a page to the widget
+  /// \param theWidget a page widget
+  /// \param theName a name of page
+  /// \param theCaseId an Id of the page
+  /// \param theIcon an icon of the page
+  virtual int addPage( ModuleBase_PageBase* theWidget,
+                       const QString& theName,
+                       const QString& theCaseId,
+                       const QPixmap& theIcon );
 
  protected:
   /// Implements ModuleBase_PagedContainer
   virtual int currentPageIndex() const;
+
   /// Implements ModuleBase_PagedContainer
   virtual void setCurrentPageIndex(int);
 
  private:
-  QToolBox* myToolBox;
+  ModuleBase_ToolBox* myToolBox;
 };
 
 #endif /* MODULEBASE_WIDGETTOOLBOX_H_ */