Salome HOME
Testing GUI version
[modules/shaper.git] / src / XGUI / XGUI_MainMenu.cpp
1 #include "XGUI_MainMenu.h"
2 #include "XGUI_Workbench.h"
3 #include "XGUI_MainWindow.h"
4
5 #include <QLayout>
6 #include <QTabWidget>
7 #include <QLabel>
8 #include <QDockWidget>
9
10 XGUI_MainMenu::XGUI_MainMenu(XGUI_MainWindow *parent) :
11     QObject(parent), myDesktop(parent)
12 {
13     parent->setTabPosition(Qt::TopDockWidgetArea, QTabWidget::North);
14 }
15
16
17 XGUI_MainMenu::~XGUI_MainMenu(void)
18 {
19 }
20
21 int XGUI_MainMenu::addWorkbench(QString theTitle)
22 {
23     QDockWidget* aDoc = new QDockWidget(myDesktop);
24     aDoc->setFeatures(QDockWidget::DockWidgetVerticalTitleBar);
25     aDoc->setAllowedAreas(Qt::TopDockWidgetArea);
26     aDoc->setWindowTitle(theTitle);
27     aDoc->setMinimumHeight(30);
28     aDoc->setContentsMargins(0, 0, 0, 0);
29
30     XGUI_Workbench* aPage = new XGUI_Workbench(aDoc);
31     aDoc->setWidget(aPage);
32
33     myDesktop->addDockWidget(Qt::TopDockWidgetArea, aDoc);
34     if (myMenuTabs.length() > 1) {
35         myDesktop->tabifyDockWidget(myMenuTabs.last(), aDoc);
36     }
37
38
39     myMenuTabs.append(aDoc);
40     return myMenuTabs.length() - 1;
41 }
42
43
44 int XGUI_MainMenu::addGroup(int thePageId)
45 {
46     XGUI_Workbench* aPage = dynamic_cast<XGUI_Workbench*>(myMenuTabs[thePageId]->widget());
47     return aPage->addGroup();
48 }
49
50 void XGUI_MainMenu::addCommand(int thePageId, int theGroupId, XGUI_Command* theCommand)
51 {
52     XGUI_Workbench* aPage = dynamic_cast<XGUI_Workbench*>(myMenuTabs[thePageId]->widget());
53     aPage->addCommand(theGroupId, theCommand);
54 }
55