X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_MainWindow.h;h=010f9e309530b3cb12289015b259a85908bfdcee;hb=e6aea428c7da7751e753eac36b99e16b7e3166e4;hp=ec5da26a6bdeaa59134c9de3c429d4dc8f1f6227;hpb=499d70af8b5a0301b1d1260dc19455dc4fab7978;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_MainWindow.h b/src/XGUI/XGUI_MainWindow.h index ec5da26a6..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 QTreeWidget; +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,37 +26,42 @@ public: XGUI_MainWindow(QWidget* parent = 0); virtual ~XGUI_MainWindow(); + //! Returns main menu object XGUI_MainMenu* menuObject() const { return myMenuBar; } - QTreeWidget* objectBrowser() const - { - return myObjectBrowser; - } - - void showObjectBrowser(); - void hideObjectBrowser(); - + //! Returns MDI area QMdiArea* mdiArea() const; + //! Returns 3d viewer XGUI_Viewer* viewer() const { return myViewer; } +public slots: void showPythonConsole(); void hidePythonConsole(); -private: - //!! For test purposes only - void fillObjectBrowser(); - void addPropertyPanel(); + 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; - QTreeWidget* myObjectBrowser; +signals: + void exitKeySequence(); + +protected: + void closeEvent(QCloseEvent* event); +private: + XGUI_MainMenu* myMenuBar; XGUI_Viewer* myViewer; PyConsole_EnhConsole* myPythonConsole;