Salome HOME
Merge branch 'master' of newgeom:newgeom.git
[modules/shaper.git] / src / XGUI / XGUI_MainMenu.cpp
index f1926acf0ca3cc204cefc561985ba9bbb2521287..efce9ab2c0bca4aacc50089f752d041dd8094ab4 100644 (file)
@@ -7,38 +7,41 @@
 #include <QLabel>
 #include <QDockWidget>
 
-XGUI_MainMenu::XGUI_MainMenu(XGUI_MainWindow *parent) :
-    QObject(parent), myDesktop(parent)
+XGUI_MainMenu::XGUI_MainMenu(XGUI_MainWindow *parent)
+    QObject(parent), myDesktop(parent)
 {
-    parent->setTabPosition(Qt::TopDockWidgetArea, QTabWidget::North);
+  parent->setTabPosition(Qt::TopDockWidgetArea, QTabWidget::North);
+  myGeneralPage = addWorkbench(tr("General"));
 }
 
-
 XGUI_MainMenu::~XGUI_MainMenu(void)
 {
 }
 
-XGUI_Workbench* XGUI_MainMenu::addWorkbench(const QString& theTitle)
+XGUI_Workbench* XGUI_MainMenu::addWorkbench(const QString& theId, const QString& theTitle)
 {
-    QDockWidget* aDoc = new QDockWidget(myDesktop);
-    QString workbenchObjName = theTitle + "_Workbench";
-    aDoc->setObjectName(workbenchObjName);
-    aDoc->setFeatures(QDockWidget::DockWidgetVerticalTitleBar);
-    aDoc->setAllowedAreas(Qt::TopDockWidgetArea);
-    aDoc->setWindowTitle(theTitle);
-    aDoc->setMinimumHeight(30);
-    aDoc->setContentsMargins(0, 0, 0, 0);
-
-    XGUI_Workbench* aPage = new XGUI_Workbench(aDoc);
-    aDoc->setWidget(aPage);
-
-    myDesktop->addDockWidget(Qt::TopDockWidgetArea, aDoc);
-    if (myMenuTabs.length() > 1) {
-        myDesktop->tabifyDockWidget(myMenuTabs.last(), aDoc);
-    }
-
-    myMenuTabs.append(aDoc);
-    return aPage;
+  QDockWidget* aDock = new QDockWidget(myDesktop);
+  aDock->setFeatures(QDockWidget::DockWidgetVerticalTitleBar);
+  aDock->setAllowedAreas(Qt::TopDockWidgetArea);
+  QString aTitle = theTitle;
+  if (aTitle.isEmpty()) {
+    aTitle = tr(theId.toLatin1().constData());
+  }
+  aDock->setWindowTitle(aTitle);
+  aDock->setMinimumHeight(30);
+  aDock->setContentsMargins(0, 0, 0, 0);
+
+  XGUI_Workbench* aPage = new XGUI_Workbench(aDock);
+  aPage->setObjectName(theId);
+  aDock->setWidget(aPage);
+
+  myDesktop->addDockWidget(Qt::TopDockWidgetArea, aDock);
+  if (myMenuTabs.length() > 1) {
+    myDesktop->tabifyDockWidget(myMenuTabs.last(), aDock);
+  }
+
+  myMenuTabs.append(aDock);
+  return aPage;
 }
 
 /*
@@ -46,17 +49,5 @@ XGUI_Workbench* XGUI_MainMenu::addWorkbench(const QString& theTitle)
  */
 XGUI_Workbench* XGUI_MainMenu::findWorkbench(const QString& theObjName)
 {
-  QDockWidget* aDoc = myDesktop->findChild<QDockWidget*>(theObjName);
-  if(aDoc) {
-    return dynamic_cast<XGUI_Workbench*>(aDoc->widget());
-  }
-  return NULL;
-}
-
-
-XGUI_MenuGroupPanel* XGUI_MainMenu::addGroup(int thePageId)
-{
-    XGUI_Workbench* aPage = dynamic_cast<XGUI_Workbench*>(myMenuTabs[thePageId]->widget());
-    return aPage->addGroup();
+  return myDesktop->findChild<XGUI_Workbench*>(theObjName);
 }
-