Salome HOME
Re-factoring: interfaces removed from "XGUI", "GeomModule" renamed to "PartSet"
[modules/shaper.git] / src / XGUI / XGUI_Workbench.h
1
2 #ifndef XGUI_Workbench_H
3 #define XGUI_Workbench_H
4
5 #include <QWidget>
6 #include <QScrollArea>
7 #include <QList>
8
9 class XGUI_Command;
10 class XGUI_MenuGroupPanel;
11 class CommandsArea;
12
13 class QHBoxLayout;
14 class QPushButton;
15
16
17
18 class XGUI_Workbench : public QWidget
19 {
20     Q_OBJECT
21 public:
22     XGUI_Workbench(QWidget* theParent);
23
24     XGUI_MenuGroupPanel* addGroup(const QString& theName = "");
25     XGUI_MenuGroupPanel* findGroup(const QString& theName);
26
27 private slots:
28     void onLeftScroll();
29     void onRightScroll();
30
31 protected:
32     virtual void resizeEvent(QResizeEvent * theEvent);
33
34 private:
35     void addSeparator();
36     bool isExceedsLeft();
37     bool isExceedsRight();
38
39
40     QWidget* myChildWidget;
41     QHBoxLayout* myLayout;
42     QList<XGUI_MenuGroupPanel*> myGroups;
43
44     CommandsArea* myCommandsArea;
45     QPushButton* myRightButton;
46     QPushButton* myLeftButton;
47 };
48
49 #endif;