X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_ISelection.h;h=86cfd4f527c5ef6ed7b404ef947b30b0f737cb5e;hb=0cea3be102af7247b2fe2c8035a1bb38b7bf82ae;hp=5551999f4e6d77bf32daeefb67effc4b98ce8838;hpb=5b24ea6ca4e9754fa89f7c742dce060abb2f3cda;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_ISelection.h b/src/ModuleBase/ModuleBase_ISelection.h index 5551999f4..86cfd4f52 100644 --- a/src/ModuleBase/ModuleBase_ISelection.h +++ b/src/ModuleBase/ModuleBase_ISelection.h @@ -18,7 +18,10 @@ #include +class Handle_SelectMgr_EntityOwner; + /** +* \ingroup GUI * A class which provides access to selection. * A selection can be obtained as from a viewer as from Object browser in various forms */ @@ -27,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 @@ -53,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 @@ -60,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