1 // File: ModuleBase_IWorkshop.h
2 // Created: 2 June 2014
3 // Author: Vitaly Smetannikov
5 #ifndef ModuleBase_IWorkshop_H
6 #define ModuleBase_IWorkshop_H
8 #include "ModuleBase.h"
10 #include <ModelAPI_Object.h>
12 #include <AIS_InteractiveContext.hxx>
16 class ModuleBase_IModule;
19 * Class which provides access to Workshop object serveces
21 class MODULEBASE_EXPORT ModuleBase_IWorkshop: public QObject
25 ModuleBase_IWorkshop(QObject* theParent):QObject(theParent) {}
27 virtual ~ModuleBase_IWorkshop() {};
29 //! Returns AIS_InteractiveContext from current OCCViewer
30 virtual Handle(AIS_InteractiveContext) AISContext() const = 0;
32 //! Returns list of currently selected data objects
33 virtual QList<ObjectPtr> selectedObjects() const = 0;
35 //! Returns instance of loaded module
36 virtual ModuleBase_IModule* module() const = 0;
39 void selectionChanged();