X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_SelectionMgr.h;h=441b52d6436d825cf512964cee732a08db3dea67;hb=220bd2b37119be1c65abf88a88792445cb9d99f8;hp=8d74e0990a9357d1d05985cd3fb8f1b876a5e809;hpb=1209fb70bd8f453208eee8bcc79fdb42a697a8a0;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_SelectionMgr.h b/src/XGUI/XGUI_SelectionMgr.h index 8d74e0990..441b52d64 100644 --- a/src/XGUI/XGUI_SelectionMgr.h +++ b/src/XGUI/XGUI_SelectionMgr.h @@ -5,6 +5,7 @@ #include "XGUI.h" #include +#include #include #include @@ -26,9 +27,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; @@ -39,18 +43,37 @@ Q_OBJECT //! Selects the owners in the context. //! \param theSelectedOwners a container of owners - void setSelectedOwners(const SelectMgr_IndexedMapOfOwner& theSelectedOwners); + /// \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(); + + /// Updates selection, which are depend on the selection in the given place + /// \thePlace a widget where selection has happened. + void updateSelectionBy(const ModuleBase_ISelection::SelectionPlace& thePlace); 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; };