X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_SelectionMgr.h;h=b75989abbfb6640bc90ec681c263cc800eb8c4c2;hb=d86c77d1c6210bbe04fbc3e5b00f9e212e1ec930;hp=23849befe8930785c3c23d381e1c0990badff671;hpb=10c74b99318f5265c9a60a178932b03f69adfee5;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_SelectionMgr.h b/src/XGUI/XGUI_SelectionMgr.h index 23849befe..b75989abb 100644 --- a/src/XGUI/XGUI_SelectionMgr.h +++ b/src/XGUI/XGUI_SelectionMgr.h @@ -1,8 +1,14 @@ #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; @@ -12,31 +18,39 @@ class XGUI_ObjectsBrowser; * \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; - void connectObjectBrowser(XGUI_ObjectsBrowser* theOB); + //! 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; - XGUI_ObjectsBrowser* myObjectBrowser; - //! List of selected features - QFeatureList mySelectedData; + XGUI_Workshop* myWorkshop; }; -#endif; \ No newline at end of file +#endif