X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_MainWindow.h;h=010f9e309530b3cb12289015b259a85908bfdcee;hb=572b3ab8d9923f505722d9a11e570b2136180205;hp=5ac18d5470b30cefe13f8f2ecca8c4c59612eb42;hpb=cf6ecce56482c1e15c6381d76b553004f87d3dd3;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_MainWindow.h b/src/XGUI/XGUI_MainWindow.h index 5ac18d547..010f9e309 100644 --- a/src/XGUI/XGUI_MainWindow.h +++ b/src/XGUI/XGUI_MainWindow.h @@ -1,15 +1,24 @@ #ifndef XGUI_MAINWINDOW_H #define XGUI_MAINWINDOW_H +#include "XGUI.h" #include class XGUI_MainMenu; class XGUI_Viewer; -class XGUI_ObjectsBrowser; +class XGUI_ActionsMgr; +class XGUI_ViewWindow; class QMdiArea; +class QMdiSubWindow; class PyConsole_EnhConsole; +class QCloseEvent; -class XGUI_MainWindow: public QMainWindow +/**\class XGUI_MainWindow + * \ingroup GUI + * \brief Main window of the application (Desktop). + * It contains: Object Browser, 3d Viewer, Python console, property panel, main menu + */ +class XGUI_EXPORT XGUI_MainWindow: public QMainWindow { Q_OBJECT @@ -17,21 +26,16 @@ public: XGUI_MainWindow(QWidget* parent = 0); virtual ~XGUI_MainWindow(); + //! Returns main menu object XGUI_MainMenu* menuObject() const { return myMenuBar; } - XGUI_ObjectsBrowser* objectBrowser() const - { - return myObjectBrowser; - } - - void showObjectBrowser(); - void hideObjectBrowser(); - + //! Returns MDI area QMdiArea* mdiArea() const; + //! Returns 3d viewer XGUI_Viewer* viewer() const { return myViewer; @@ -40,18 +44,24 @@ public: public slots: void showPythonConsole(); void hidePythonConsole(); - void showPropertyPanel(); - void hidePropertyPanel(); -private: - void createDockWidgets(); - QDockWidget* createObjectBrowser(); - QDockWidget* createPropertyPanel(); + void createSubWindow(); + +private slots: + void cascadeWindows(); + void onViewCreated(XGUI_ViewWindow* theWindow); + void onDeleteView(XGUI_ViewWindow* theWindow); + void activateView(); + void onViewActivated(QMdiSubWindow* theSubWnd); - XGUI_MainMenu* myMenuBar; - XGUI_ObjectsBrowser* myObjectBrowser; - QDockWidget* myPropertyPanelDock; +signals: + void exitKeySequence(); + +protected: + void closeEvent(QCloseEvent* event); +private: + XGUI_MainMenu* myMenuBar; XGUI_Viewer* myViewer; PyConsole_EnhConsole* myPythonConsole;