Salome HOME
Merge branch 'master' of newgeom:newgeom
[modules/shaper.git] / src / XGUI / XGUI_Workbench.h
index cc362db2b10f9e6cc0e08240bc157079cf5c794f..7ede0b98faa4ff12a4095878697b81d8d73236ba 100644 (file)
@@ -1,6 +1,7 @@
 #ifndef XGUI_Workbench_H
 #define XGUI_Workbench_H
 
+#include "XGUI.h"
 #include <QWidget>
 #include <QScrollArea>
 #include <QList>
@@ -12,23 +13,30 @@ class CommandsArea;
 class QHBoxLayout;
 class QPushButton;
 
-class XGUI_Workbench: public QWidget
+class XGUI_EXPORT XGUI_Workbench : public QWidget
 {
 Q_OBJECT
-public:
+ public:
   XGUI_Workbench(QWidget* theParent);
 
   XGUI_MenuGroupPanel* addGroup(const QString& theId);
   XGUI_MenuGroupPanel* findGroup(const QString& theName);
 
-private slots:
+  //! Returns already created command by its ID
+  XGUI_Command* feature(const QString& theId) const;
+
+  //! Returns list of created commands
+  QList<XGUI_Command*> features() const;
+
+ private slots:
   void onLeftScroll();
   void onRightScroll();
 
-protected:
+ protected:
   virtual void resizeEvent(QResizeEvent * theEvent);
+  virtual bool eventFilter(QObject *theObj, QEvent *theEvent);
 
-private:
+ private:
   void addSeparator();
   bool isExceedsLeft();
   bool isExceedsRight();
@@ -42,4 +50,4 @@ private:
   QPushButton* myLeftButton;
 };
 
-#endif;
+#endif