/// the cashed shapes to optimize isInList method: from context to set of shapes in this context
std::map<ResultPtr, std::list<std::shared_ptr<GeomAPI_Shape> > > myCash;
bool myIsCashed; ///< true if cashing is performed
+ /// If true attribute selects geometry instead of shape.
+ bool myIsGeometricalSelection;
public:
/// Adds the new reference to the end of the list
/// \param theContext object where the sub-shape was selected
/// during non-modification operations with this attribute)
MODEL_EXPORT virtual void cashValues(const bool theEnabled);
+ MODEL_EXPORT virtual void setGeometricalSelection(const bool theIsGeometricalSelection) override;
+
+ /// Returns true if is geometrical selection.
+ MODEL_EXPORT virtual bool isGeometricalSelection() const override {
+ return myIsGeometricalSelection;
+ };
+
protected:
/// Objects are created for features automatically
MODEL_EXPORT Model_AttributeSelectionList(TDF_Label& theLabel);