X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_Workshop.h;h=551f23c50d1432e84aa30eb93b185576be30370a;hb=d80699ac131d75798c6c39deff2c5e820aface5f;hp=6c9034d49e30d95b990a8cade7b9627bea1f6db5;hpb=0eb1324aa68cf606e0c556f900c289c6a485c13e;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_Workshop.h b/src/XGUI/XGUI_Workshop.h index 6c9034d49..551f23c50 100644 --- a/src/XGUI/XGUI_Workshop.h +++ b/src/XGUI/XGUI_Workshop.h @@ -16,12 +16,18 @@ class XGUI_Workbench; class XGUI_SelectionMgr; class XGUI_Displayer; class XGUI_OperationMgr; +class XGUI_SalomeConnector; +class XGUI_ObjectsBrowser; +class XGUI_ActionsMgr; class ModuleBase_Operation; class ModuleBase_PropPanelOperation; class Config_FeatureMessage; class Config_PointerMessage; +class QWidget; +class QDockWidget; + /**\class XGUI_Workshop * \ingroup GUI * \brief Class which defines a configuration of the application (Workshop) and launches it. @@ -31,7 +37,7 @@ class XGUI_EXPORT XGUI_Workshop: public QObject, public Events_Listener Q_OBJECT public: - XGUI_Workshop(); + XGUI_Workshop(XGUI_SalomeConnector* theConnector = 0); virtual ~XGUI_Workshop(); //! Starting of the application @@ -47,7 +53,7 @@ public: XGUI_SelectionMgr* selector() const { return mySelector; } //! Returns displayer - XGUI_Displayer* displayer() const { return myDisplayer; } + XGUI_Displayer* displayer() const; //! ! Returns operation manager. XGUI_OperationMgr* operationMgr() const { return myOperationMgr; } @@ -58,6 +64,14 @@ public: //! Redefinition of Events_Listener method virtual void processEvent(const Events_Message* theMessage); + XGUI_SalomeConnector* salomeConnector() const { return mySalomeConnector; } + + //! Returns true if the application works as SALOME module + bool isSalomeMode() const { return mySalomeConnector != 0; } + + //! Returns Object browser + XGUI_ObjectsBrowser* objectBrowser() const { return myObjectBrowser; } + public slots: void updateCommandStatus(); @@ -69,6 +83,13 @@ public slots: void onUndo(); void onRedo(); + void showPropertyPanel(); + void hidePropertyPanel(); + void showObjectBrowser(); + void hideObjectBrowser(); + + void onFeatureTriggered(); + protected: //Event-loop processing methods: void addFeature(const Config_FeatureMessage*); @@ -89,13 +110,28 @@ private: XGUI_Module* loadModule(const QString& theModule); bool activateModule(); + QDockWidget* createObjectBrowser(QWidget* theParent); + QDockWidget* createPropertyPanel(QWidget* theParent); + + // Creates Dock widgets: Object browser and Property panel + void createDockWidgets(); + void setPropertyPannelTitle(const QString& theTitle); + + XGUI_MainWindow* myMainWindow; XGUI_Module* myPartSetModule; + XGUI_ObjectsBrowser* myObjectBrowser; + QDockWidget* myPropertyPanelDock; + XGUI_SelectionMgr* mySelector; XGUI_Displayer* myDisplayer; XGUI_OperationMgr* myOperationMgr; ///< manager to manipulate through the operations + XGUI_ActionsMgr* myActionsMgr; + + + XGUI_SalomeConnector* mySalomeConnector; }; #endif