+ /// \param theContext object where the sub-shape was selected
+ /// \param theSubShape selected sub-shape (if null, the whole context is selected)
+ /// \param theTemporarily if it is true, do not store and name the added in the data framework
+ /// (used to remove immediately, without the following updates)
+ virtual void append(const ObjectPtr& theContext,
+ const std::shared_ptr<GeomAPI_Shape>& theSubShape,
+ const bool theTemporarily = false) = 0;
+
+ /// Adds the new reference to the end of the list by the naming name of the selected shape
+ /// The type of shape is taken from the current selection type if the given is empty
+ virtual void append(const std::string& theNamingName, const std::string& theType = "") = 0;
+
+ /// Adds the new reference to the end of the list by inner point on the selected shape
+ virtual void append(const std::shared_ptr<GeomAPI_Pnt>& thePoint,
+ const std::string& theType) = 0;
+
+ /// Adds the new reference to the end of the list by weak naming index
+ virtual void append(const std::string& theType, const std::string& theContextName,
+ const int theIndex) = 0;
+
+ /// Copy the selection list to the destination attribute
+ virtual void copyTo(std::shared_ptr<ModelAPI_AttributeSelectionList> theTarget) const = 0;
+
+ /// Reset temporary stored values
+ virtual void removeTemporaryValues() = 0;
+
+ /// Removes the last element in the list
+ virtual void removeLast() = 0;