X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_SelectionMgr.h;h=a38546fa0d88a36ff03d6f9b75cf0715abab1b2e;hb=73b63afd03a150740406d8c5cebf45ac5125f2e3;hp=6b45fff70adb6f2b564d602964cfd97ad3b20b79;hpb=7bf19255421b34594c7b0a76d0ce28166d0ce895;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_SelectionMgr.h b/src/XGUI/XGUI_SelectionMgr.h index 6b45fff70..a38546fa0 100644 --- a/src/XGUI/XGUI_SelectionMgr.h +++ b/src/XGUI/XGUI_SelectionMgr.h @@ -11,6 +11,7 @@ #include #include #include +#include class XGUI_Workshop; class XGUI_ObjectsBrowser; @@ -25,9 +26,12 @@ class XGUI_EXPORT XGUI_SelectionMgr : public QObject { Q_OBJECT public: + /// Constructor + /// \param theParent a parent workshop XGUI_SelectionMgr(XGUI_Workshop* theParent); virtual ~XGUI_SelectionMgr(); + /// Returns current selection XGUI_Selection* selection() const { return mySelection; @@ -36,16 +40,35 @@ Q_OBJECT //! Connects the manager to all viewers accessible by Workshop void connectViewers(); + //! Selects the owners in the context. + //! \param theSelectedOwners a container of owners + /// \param isUpdateViewer the parameter whether the viewer should be update immediatelly + void setSelectedOwners(const SelectMgr_IndexedMapOfOwner& theSelectedOwners, + bool isUpdateViewer); + + //! Check that the selected owners are valid for the current filters + /// \param isUpdateViewer the parameter whether the viewer should be update immediatelly + void updateSelectedOwners(bool isUpdateViewer); + + //! Clears selection in Viewer and object Browser + void clearSelection(); + signals: //! Emited when selection in a one of viewers was changed void selectionChanged(); private slots: + /// Reaction on selectio0n in Object browser void onObjectBrowserSelection(); + + /// Reaction on selectio0n in Viewer void onViewerSelection(); private: + /// Reference to workshop XGUI_Workshop* myWorkshop; + + /// Current selection object XGUI_Selection* mySelection; };