X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FModuleBase%2FModuleBase_ISelection.h;h=86cfd4f527c5ef6ed7b404ef947b30b0f737cb5e;hb=0cea3be102af7247b2fe2c8035a1bb38b7bf82ae;hp=29829a39e51f55031ce5732dd7e58d564633e368;hpb=6d0364ff4f55e3cd5087063b0895635c03e78635;p=modules%2Fshaper.git diff --git a/src/ModuleBase/ModuleBase_ISelection.h b/src/ModuleBase/ModuleBase_ISelection.h index 29829a39e..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. @@ -35,6 +37,12 @@ class ModuleBase_ISelection /// \return list of presentations 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 */ @@ -52,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 @@ -59,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