Salome HOME
Make property panel as a GUI of an operation
[modules/shaper.git] / src / XGUI / XGUI_ModuleConnector.h
1 // File:        XGUI_ModuleConnector.h
2 // Created:     3 June 2014
3 // Author:      Vitaly Smetannikov
4
5 #ifndef XGUI_ModuleConnector_H
6 #define XGUI_ModuleConnector_H
7
8 #include "XGUI.h"
9 #include <ModuleBase_Definitions.h>
10 #include <ModuleBase_IWorkshop.h>
11
12 class Handle_AIS_InteractiveContext;
13 class XGUI_Workshop;
14 class XGUI_Displayer;
15
16 /**
17  * Implementation of IWorkshop interface which provides access to Workshop sevices at module level
18  */
19 class XGUI_EXPORT XGUI_ModuleConnector : public ModuleBase_IWorkshop
20 {
21 Q_OBJECT
22  public:
23   XGUI_ModuleConnector(XGUI_Workshop* theWorkshop);
24
25   virtual ~XGUI_ModuleConnector();
26
27   //! Returns AIS_InteractiveContext from current OCCViewer
28   virtual Handle(AIS_InteractiveContext) AISContext() const;
29
30   //! Returns list of currently selected data objects
31   virtual QList<ObjectPtr> selectedObjects() const;
32
33   //! Returns instance of loaded module
34   virtual ModuleBase_IModule* module() const;
35
36  private:
37   XGUI_Workshop* myWorkshop;
38 };
39
40 #endif