1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
3 #ifndef XGUI_SelectionMgr_H
4 #define XGUI_SelectionMgr_H
7 #include <ModuleBase_Definitions.h>
9 #include <QModelIndexList>
11 #include <AIS_ListOfInteractive.hxx>
12 #include <NCollection_List.hxx>
13 #include <TopoDS_Shape.hxx>
14 #include <SelectMgr_IndexedMapOfOwner.hxx>
17 class XGUI_ObjectsBrowser;
20 /**\class XGUI_SelectionMgr
22 * \brief Selection manager. Provides selection event on selection in
23 * Object Browser and Viewer
25 class XGUI_EXPORT XGUI_SelectionMgr : public QObject
29 XGUI_SelectionMgr(XGUI_Workshop* theParent);
30 virtual ~XGUI_SelectionMgr();
32 XGUI_Selection* selection() const
37 //! Connects the manager to all viewers accessible by Workshop
38 void connectViewers();
40 //! Selects the owners in the context.
41 //! \param theSelectedOwners a container of owners
42 void setSelectedOwners(const SelectMgr_IndexedMapOfOwner& theSelectedOwners);
45 //! Emited when selection in a one of viewers was changed
46 void selectionChanged();
49 void onObjectBrowserSelection();
50 void onViewerSelection();
53 XGUI_Workshop* myWorkshop;
54 XGUI_Selection* mySelection;