]> SALOME platform Git repositories - modules/shaper.git/blob - src/XGUI/XGUI_Workbench.h
Salome HOME
Implimentation of the Config XML Reader
[modules/shaper.git] / src / XGUI / XGUI_Workbench.h
1
2 #ifndef XGUI_Workbench_H
3 #define XGUI_Workbench_H
4
5 #include "XGUI_Interfaces.h"
6
7 #include <QWidget>
8 #include <QScrollArea>
9 #include <QList>
10
11 class QHBoxLayout;
12 class XGUI_MenuGroupPanel;
13 class QPushButton;
14 class CommandsArea;
15 class XGUI_Command;
16
17
18 class XGUI_Workbench : public QWidget, public IWorkbench
19 {
20     Q_OBJECT
21 public:
22     XGUI_Workbench(QWidget* theParent);
23
24     virtual IMenuGroup* addGroup(const QString& theName = "");
25     virtual IMenuGroup* 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;