X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_SelectionMgr.h;h=b75989abbfb6640bc90ec681c263cc800eb8c4c2;hb=d86c77d1c6210bbe04fbc3e5b00f9e212e1ec930;hp=3b2bc7aa36c10a2fea429ee00f8200ca05adf854;hpb=b948502434f1af72184656e478095dae3fe00f96;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_SelectionMgr.h b/src/XGUI/XGUI_SelectionMgr.h index 3b2bc7aa3..b75989abb 100644 --- a/src/XGUI/XGUI_SelectionMgr.h +++ b/src/XGUI/XGUI_SelectionMgr.h @@ -1,38 +1,56 @@ #ifndef XGUI_SelectionMgr_H #define XGUI_SelectionMgr_H +#include "XGUI.h" #include "XGUI_Constants.h" #include +#include + +#include +#include +#include class XGUI_Workshop; +class XGUI_ObjectsBrowser; /**\class XGUI_SelectionMgr * \ingroup GUI * \brief Selection manager. Provides selection event on selection in * Object Browser and Viewer */ -class XGUI_SelectionMgr : public QObject +class XGUI_EXPORT XGUI_SelectionMgr : public QObject { Q_OBJECT public: XGUI_SelectionMgr(XGUI_Workshop* theParent); virtual ~XGUI_SelectionMgr(); - //! Returns list of currently selected objects - QFeatureList selectedData() const { return mySelectedData; } + //! Returns list of currently selected data objects + QFeatureList selectedFeatures() const; + + //! Returns list of currently selected QModelIndexes + QModelIndexList selectedIndexes() const; + + //! Returns list of currently selected AIS objects + void selectedAISObjects(AIS_ListOfInteractive& theList) const; + + //! Returns list of currently selected shapes + void selectedShapes(NCollection_List& theList) const; + + //! Connects the manager to all viewers accessible by Workshop + void connectViewers(); signals: //! Emited when selection in a one of viewers was changed void selectionChanged(); -public slots: - void onSelectionChanged(); +private slots: + void onObjectBrowserSelection(); + void onViewerSelection(); private: - XGUI_Workshop* myWorkshop; - //! List of selected features - QFeatureList mySelectedData; + XGUI_Workshop* myWorkshop; }; #endif