X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_Workshop.h;h=50e0a44cc0759dc0702f330cc29d552712a5c36c;hb=29b4b1b5e692ebc45e8a27703b9307b075d2cff2;hp=16c5425431e84a38f96446511712afededd8fe71;hpb=00740b42f9c46511b2c880857372e37195cae304;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_Workshop.h b/src/XGUI/XGUI_Workshop.h index 16c542543..50e0a44cc 100644 --- a/src/XGUI/XGUI_Workshop.h +++ b/src/XGUI/XGUI_Workshop.h @@ -1,7 +1,7 @@ #ifndef XGUI_WORKSHOP_H #define XGUI_WORKSHOP_H -#include +#include "XGUI.h" #include #include @@ -14,7 +14,9 @@ class XGUI_Command; class XGUI_Module; class XGUI_Workbench; class XGUI_SelectionMgr; +class XGUI_Displayer; class ModuleBase_Operation; +class ModuleBase_PropPanelOperation; class Config_FeatureMessage; class Config_PointerMessage; @@ -23,7 +25,7 @@ class Config_PointerMessage; * \ingroup GUI * \brief Class which defines a configuration of the application (Workshop) and launches it. */ -class XGUI_Workshop: public QObject, public Event_Listener +class XGUI_EXPORT XGUI_Workshop: public QObject, public Event_Listener { Q_OBJECT public: @@ -43,23 +45,33 @@ public: //! Returns selection manager object XGUI_SelectionMgr* selector() const { return mySelector; } + //! Returns displayer + XGUI_Displayer* displayer() const { return myDisplayer; } + //! Creates and adds a new workbench (menu group) with the given name and returns it XGUI_Workbench* addWorkbench(const QString& theName); + //! Returns the current operation or NULL + ModuleBase_Operation* currentOperation() { return myCurrentOperation; } + //! Redefinition of Event_Listener method virtual void processEvent(const Event_Message* theMessage); public slots: + void updateCommandStatus(); + void onNew(); void onOpen(); void onSave(); void onSaveAs(); void onExit(); + void onUndo(); + void onRedo(); protected: //Event-loop processing methods: void addFeature(const Config_FeatureMessage*); - void fillPropertyPanel(ModuleBase_Operation* theOperation); + void fillPropertyPanel(ModuleBase_PropPanelOperation* theOperation); void connectToPropertyPanel(ModuleBase_Operation* theOperation); void setCurrentOperation(ModuleBase_Operation* theOperation); @@ -73,6 +85,7 @@ private: XGUI_Module* myPartSetModule; XGUI_SelectionMgr* mySelector; + XGUI_Displayer* myDisplayer; ModuleBase_Operation* myCurrentOperation; };