X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_ISelection.h;h=86cfd4f527c5ef6ed7b404ef947b30b0f737cb5e;hb=0cea3be102af7247b2fe2c8035a1bb38b7bf82ae;hp=e3190488af69f6268a61a1998570abbd06a73edd;hpb=83b022b15cfd77512967f4328484371e46c525ae;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_ISelection.h b/src/ModuleBase/ModuleBase_ISelection.h index e3190488a..86cfd4f52 100644 --- a/src/ModuleBase/ModuleBase_ISelection.h +++ b/src/ModuleBase/ModuleBase_ISelection.h @@ -18,6 +18,8 @@ #include +class Handle_SelectMgr_EntityOwner; + /** * \ingroup GUI * A class which provides access to selection. @@ -28,14 +30,18 @@ class ModuleBase_ISelection public: /// Returns a list of viewer selected presentations - /// \param theShapeTypeToSkip the shapes with this type will be skipped during the result list build /// \return list of presentations - virtual QList getSelected(int theShapeTypeToSkip = -1) const = 0; + virtual QList getSelected() const = 0; /// Returns a list of viewer highlited presentations - /// \param theShapeTypeToSkip the shapes with this type will be skipped during the result list build /// \return list of presentations - virtual QList getHighlighted(int theShapeTypeToSkip = -1) const = 0; + virtual QList getHighlighted() const = 0; + + /// Fills the viewer presentation parameters by the parameters from the owner + /// \param thePrs a container for selection + /// \param theOwner a selection owner + virtual void fillPresentation(ModuleBase_ViewerPrs& thePrs, + const Handle_SelectMgr_EntityOwner& theOwner) const = 0; /** * Returns list of features currently selected in object browser @@ -54,6 +60,9 @@ class ModuleBase_ISelection //! \param theList returning list of selected AIS objects virtual void selectedAISObjects(AIS_ListOfInteractive& theList) const = 0; + //! Returns list of currently selected QModelIndexes + virtual ObjectPtr getSelectableObject(const Handle_SelectMgr_EntityOwner& theOwner) const = 0; + //! Returns list of currently selected shapes and their owners (objects). //! Both lists are synchronized //! \param theList returning list of selected AIS objects @@ -61,6 +70,11 @@ class ModuleBase_ISelection virtual void selectedShapes(NCollection_List& theList, std::list& theOwners) const = 0; + //! Wraps the object list into the viewer prs list + //! \param theObjects a list of objects + //! \return a list of prs, where only object is not empty + static MODULEBASE_EXPORT QList getViewerPrs( + const QObjectPtrList& theObjects); }; #endif