X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_MainWindow.cpp;h=b675c5fd7d59639c83e5075dec96d6d27092df76;hb=6654a921211670c15a79a997ca666a174fe8a6f6;hp=40a0d26cfae25c68f665bc88c03f02287c5f8586;hpb=196e9b5ccfef56a00ce7764708469685613616c9;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_MainWindow.cpp b/src/XGUI/XGUI_MainWindow.cpp index 40a0d26cf..b675c5fd7 100644 --- a/src/XGUI/XGUI_MainWindow.cpp +++ b/src/XGUI/XGUI_MainWindow.cpp @@ -1,7 +1,9 @@ #include "XGUI_MainWindow.h" +#include "XGUI_Constants.h" #include "XGUI_MainMenu.h" #include "XGUI_ViewWindow.h" #include "XGUI_Viewer.h" +#include "XGUI_ObjectsBrowser.h" #include #include @@ -22,14 +24,15 @@ #include #include #include - +#include XGUI_MainWindow::XGUI_MainWindow(QWidget* parent) : QMainWindow(parent), - myObjectBrowser(0), - myPythonConsole(0) + myObjectBrowser(0), + myPythonConsole(0), + myPropertyPanelDock(0) { - setWindowTitle(tr("WINDOW_TITLE")); + setWindowTitle(tr("New Geom")); myMenuBar = new XGUI_MainMenu(this); QMdiArea* aMdiArea = new QMdiArea(this); @@ -37,7 +40,7 @@ XGUI_MainWindow::XGUI_MainWindow(QWidget* parent) myViewer = new XGUI_Viewer(this); - createDockWidgets(); + //createDockWidgets(); } XGUI_MainWindow::~XGUI_MainWindow(void) @@ -72,11 +75,7 @@ void XGUI_MainWindow::showPythonConsole() aDoc->setMinimumHeight(0); aDoc->setWindowTitle("Console"); myPythonConsole = new PyConsole_EnhConsole( aDoc, new PyConsole_EnhInterp()); - //myPythonConsole = new QTextEdit(aDoc); - //myPythonConsole->setGeometry(0,0,200, 50); - //myPythonConsole->setText(">>>"); aDoc->setWidget(myPythonConsole); - //myPythonConsole->setMinimumHeight(0); addDockWidget(Qt::TopDockWidgetArea, aDoc); tabifyDockWidget(myMenuBar->getLastDockWindow(), aDoc); } @@ -90,6 +89,23 @@ void XGUI_MainWindow::hidePythonConsole() myPythonConsole->parentWidget()->hide(); } +void XGUI_MainWindow::showPropertyPanel() +{ + QAction* aViewAct = myPropertyPanelDock->toggleViewAction(); + //setEnabled(true); + myPropertyPanelDock->show(); + myPropertyPanelDock->raise(); +} + +void XGUI_MainWindow::hidePropertyPanel() +{ + QAction* aViewAct = myPropertyPanelDock->toggleViewAction(); + //setEnabled(false); + myPropertyPanelDock->hide(); +} + /* * Creates dock widgets, places them in corresponding area * and tabifies if necessary. @@ -98,10 +114,16 @@ void XGUI_MainWindow::createDockWidgets() { QDockWidget* aObjDock = createObjectBrowser(); addDockWidget(Qt::LeftDockWidgetArea, aObjDock); - QDockWidget* aPropPanelDock = createPropertyPanel(); - addDockWidget(Qt::LeftDockWidgetArea, aPropPanelDock); + myPropertyPanelDock = createPropertyPanel(); + addDockWidget(Qt::LeftDockWidgetArea, myPropertyPanelDock); + hidePropertyPanel(); //setWindowTitle(theTitle); } @@ -109,17 +131,14 @@ QDockWidget* XGUI_MainWindow::createPropertyPanel() { QDockWidget* aPropPanel = new QDockWidget(this); aPropPanel->setWindowTitle(tr("Property Panel")); + QAction* aViewAct = aPropPanel->toggleViewAction(); + aPropPanel->setObjectName(XGUI::PROP_PANEL); QWidget* aContent = new QWidget(aPropPanel); QVBoxLayout* aMainLay = new QVBoxLayout(aContent); aMainLay->setContentsMargins(3, 3, 3, 3); aPropPanel->setWidget(aContent); - QWidget* aCustomWidget = new QWidget(aContent); - aCustomWidget->setObjectName("PropertyPanelWidget"); - aMainLay->addWidget(aCustomWidget); - aMainLay->addStretch(1); - QFrame* aFrm = new QFrame(aContent); aFrm->setFrameStyle(QFrame::Sunken); aFrm->setFrameShape(QFrame::Panel); @@ -129,15 +148,25 @@ QDockWidget* XGUI_MainWindow::createPropertyPanel() QPushButton* aBtn = new QPushButton(QIcon(":pictures/button_help.png"), "", aFrm); aBtn->setFlat(true); + //connect(aBtn, SIGNAL(clicked()), this, SIGNAL(propertyHelpPressed())); aBtnLay->addWidget(aBtn); aBtnLay->addStretch(1); aBtn = new QPushButton(QIcon(":pictures/button_ok.png"), "", aFrm); + aBtn->setObjectName(XGUI::PROP_PANEL_OK); aBtn->setFlat(true); + //connect(aBtn, SIGNAL(clicked()), this, SIGNAL(propertyOkPressed())); aBtnLay->addWidget(aBtn); aBtn = new QPushButton(QIcon(":pictures/button_cancel.png"), "", aFrm); + aBtn->setObjectName(XGUI::PROP_PANEL_CANCEL); aBtn->setFlat(true); + //connect(aBtn, SIGNAL(clicked()), this, SIGNAL(propertyClosePressed())); aBtnLay->addWidget(aBtn); + QWidget* aCustomWidget = new QWidget(aContent); + aCustomWidget->setObjectName(XGUI::PROP_PANEL_WDG); + aMainLay->addWidget(aCustomWidget); + aMainLay->addStretch(1); + return aPropPanel; } @@ -145,62 +174,8 @@ QDockWidget* XGUI_MainWindow::createObjectBrowser() { QDockWidget* aObjDock = new QDockWidget(this); aObjDock->setAllowedAreas(Qt::LeftDockWidgetArea | Qt::RightDockWidgetArea); - aObjDock->setWindowTitle(tr("OBJECT_BROWSER_TITLE")); - myObjectBrowser = new QTreeWidget(aObjDock); - myObjectBrowser->setColumnCount(1); - myObjectBrowser->setHeaderHidden(true); + aObjDock->setWindowTitle(tr("Object browser")); + myObjectBrowser = new XGUI_ObjectsBrowser(aObjDock); aObjDock->setWidget(myObjectBrowser); -// fillObjectBrowser(); return aObjDock; } - -//****************************************************** - -// TEST FUNCTIONS - -//****************************************************** -void XGUI_MainWindow::fillObjectBrowser() -{ - QStringList aNames; - aNames << "Parameters" << "Constructions"; - aNames << "Part 1" << "Part 2" << "Part 3"; - aNames << "Properties"; - - QStringList aIcons; - aIcons << ":pictures/params_folder.png"; - aIcons << ":pictures/constr_folder.png"; - aIcons << ":pictures/part_ico.png"; - aIcons << ":pictures/part_ico.png"; - aIcons << ":pictures/part_ico.png"; - aIcons << ":pictures/properties.png"; - - QList aItems; - foreach(QString aName, aNames) - { - QTreeWidgetItem* aItem = new QTreeWidgetItem(myObjectBrowser); - aItem->setText(0, aName); - aItems.append(aItem); - } - for(int i = 0; i < aItems.length(); i++) { - aItems[i]->setIcon(0, QIcon(aIcons[i])); - } - myObjectBrowser->addTopLevelItems(aItems); - - for(int i = 2; i < 5; i++) { - QTreeWidgetItem* aItem = new QTreeWidgetItem(aItems[i]); - aItem->setText(0, "Parameters"); - aItem->setIcon(0, QIcon(":pictures/params_folder.png")); - - aItem = new QTreeWidgetItem(aItems[i]); - aItem->setText(0, "Construction"); - aItem->setIcon(0, QIcon(":pictures/constr_folder.png")); - - aItem = new QTreeWidgetItem(aItems[i]); - aItem->setText(0, "Bodies"); - aItem->setIcon(0, QIcon(":pictures/part_ico.png")); - - aItem = new QTreeWidgetItem(aItems[i]); - aItem->setText(0, "Features"); - aItem->setIcon(0, QIcon(":pictures/features.png")); - } -}