+ const Standard_Integer theMode) ;
+
+private:
+ /// If the shape of this presentation is Vertex, it appends custom sensitive and owners for it.
+ /// Owner is a usual Brep owner with "isDecomposite" in true. It is necessary to have "Ring"
+ /// highlight/selected marker.
+ /// \param theSelection a current filled selection
+ /// \param theMode a selection mode
+ /// \return true if the owner is created
+ bool appendVertexSelection(const Handle(SelectMgr_Selection)& aSelection,
+ const Standard_Integer theMode);
+
+ /// Creates compound of vertices, edges and faces.
+ /// If the shape is COMPOUND, iterate by sub-shapes.
+ /// If the shape is SOLID/SHEL, explore shape by FACES,
+ /// If the shape is WIRE, explore shape by EDGES
+ /// \param theBuilder result compound builder
+ /// \param theCompound the result shape
+ /// \param theShape the processed shape
+ /// \param theHiddenSubShapes container of shapes to be skipped (faces)
+ void collectSubShapes(BRep_Builder& theBuilder, TopoDS_Shape& theCompound,
+ const TopoDS_Shape& theShape, const NCollection_List<TopoDS_Shape>& theHiddenSubShapes);
+
+ void setEdgesDefaultColor();