- //! Activate local selection
- //! \param theAIS the list of objects
- //! \param theMode the selection mode
- //! \param isUpdateViewer the state wether the viewer should be updated immediatelly
- void setLocalSelection(const AIS_ListOfInteractive& theAISObjects, const int theMode,
- const bool isUpdateViewer);
- //! Deactivate local selection
- //! \param isUpdateViewer the state wether the viewer should be updated immediatelly
- void setGlobalSelection(const bool isUpdateViewer);
+ //! Returns an active view window or NULL
+ XGUI_ViewWindow* activeViewWindow() const;
+
+ /// Return objects selected in 3D viewer
+ /// \param theList - list to be filled with selected objects
+ void getSelectedObjects(AIS_ListOfInteractive& theList);
+
+ /// Return shapes selected in 3D viewer
+ /// \param theList - list to be filled with selected shapes
+ void getSelectedShapes(NCollection_List<TopoDS_Shape>& theList);
+
+ /// Selects objects in 3D viewer. Other selected objects are left as selected
+ /// \param theList - list objects to be selected
+ void setObjectsSelected(const AIS_ListOfInteractive& theList);
+
+ /// Select the object in 3D viewer.
+ /// \param theIO - list objects to be selected
+ void setSelected(const Handle(AIS_InteractiveObject)& theIO) { myAISContext->SetSelected(theIO); }