X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_MainMenu.h;h=945ddcb8d9f890b6d90811986f280805c69dfb01;hb=329d73a7dbce38e38063ff41186be492e3529ab5;hp=028f73b12a87c24c5225017196633afc41044f08;hpb=78f3e64041d09a7611d77fe4df9d428a4d9410d2;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_MainMenu.h b/src/XGUI/XGUI_MainMenu.h index 028f73b12..945ddcb8d 100644 --- a/src/XGUI/XGUI_MainMenu.h +++ b/src/XGUI/XGUI_MainMenu.h @@ -1,8 +1,10 @@ #ifndef XGUI_MainMenu_H #define XGUI_MainMenu_H +#include "XGUI.h" #include #include +#include class XGUI_Command; class XGUI_MainWindow; @@ -13,12 +15,14 @@ class QTabWidget; class QLabel; class QAction; class QDockWidget; +class QEvent; + /**\class XGUI_MainMenu * \ingroup GUI * \brief Class for creation of main menu (set of workbenches) */ -class XGUI_MainMenu: public QObject +class XGUI_EXPORT XGUI_MainMenu: public QObject { Q_OBJECT public: @@ -29,7 +33,7 @@ public: XGUI_Workbench* addWorkbench(const QString& theId, const QString& theText = ""); //! Returns workbench (menu group) by the given name. - XGUI_Workbench* findWorkbench(const QString& theId); + XGUI_Workbench* findWorkbench(const QString& theId) const; //! Returns General page (predefined workbench) XGUI_Workbench* generalPage() const { return myGeneralPage; } @@ -37,10 +41,22 @@ public: //! Rerturns last created workbench in dock widget container QDockWidget* getLastDockWindow() const { return myMenuTabs.last(); } + //! Returns already created command by its ID + XGUI_Command* feature(const QString& theId) const; + + //! Returns list of created commands + QList features() const; + + QList workbenches() const; + + virtual bool eventFilter(QObject *theWatched, QEvent *theEvent); + private: XGUI_MainWindow* myDesktop; QList myMenuTabs; XGUI_Workbench* myGeneralPage; + + QMap myCommandState; }; #endif