Salome HOME
Support of wide string
[modules/shaper.git] / src / Model / Model_ResultPart.h
index cd8142cf1ab427262ff13fcd4289d2eb8ce5647d..8fc6ea0621b0c856ce53048123039aa828b40f9d 100644 (file)
@@ -1,4 +1,4 @@
-// Copyright (C) 2014-2017  CEA/DEN, EDF R&D
+// Copyright (C) 2014-2019  CEA/DEN, EDF R&D
 //
 // This library is free software; you can redistribute it and/or
 // modify it under the terms of the GNU Lesser General Public
@@ -12,9 +12,9 @@
 //
 // You should have received a copy of the GNU Lesser General Public
 // License along with this library; if not, write to the Free Software
-// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
+// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
 //
-// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com<mailto:webmaster.salome@opencascade.com>
+// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com
 //
 
 #ifndef Model_ResultPart_H_
@@ -52,7 +52,7 @@ class Model_ResultPart : public ModelAPI_ResultPart
   /// Returns the part-document of this result
   MODEL_EXPORT virtual std::shared_ptr<ModelAPI_Document> partDoc();
 
-  /// Returns the original part result: for transfomration features results this is
+  /// Returns the original part result: for transformation features results this is
   /// the original Part feature result
   MODEL_EXPORT virtual std::shared_ptr<ModelAPI_ResultPart> original();
 
@@ -70,19 +70,23 @@ class Model_ResultPart : public ModelAPI_ResultPart
   /// \param theShape selected shape in this document
   /// \param theIndex is returned as one-based index if selection was required, "0" otherwise
   /// \returns empty name is selection is not correct
-  MODEL_EXPORT virtual std::string nameInPart(const std::shared_ptr<GeomAPI_Shape>& theShape,
+  MODEL_EXPORT virtual std::wstring nameInPart(const std::shared_ptr<GeomAPI_Shape>& theShape,
     int& theIndex);
 
   /// Updates the selection inside of the part by the selection index
   MODEL_EXPORT virtual bool updateInPart(const int theIndex);
   /// Returns the shape by the name in the part
   MODEL_EXPORT virtual std::shared_ptr<GeomAPI_Shape> shapeInPart(
-    const std::string& theName, const std::string& theType, int& theIndex);
+    const std::wstring& theName, const std::string& theType, int& theIndex);
+  /// Updates the selection inside of the part as a geometrical selection
+  MODEL_EXPORT virtual bool combineGeometrical(const int theIndex, std::wstring& theNewName);
   /// Updates the shape-result of the part (called on Part feature execution)
   MODEL_EXPORT virtual void updateShape();
   /// Applies the additional transformation of the part
   MODEL_EXPORT virtual void setTrsf(std::shared_ptr<ModelAPI_Result> theThis,
     const std::shared_ptr<GeomAPI_Trsf>& theTransformation);
+  /// Returns the summary transformations of all references to the origin
+  MODEL_EXPORT virtual std::shared_ptr<GeomAPI_Trsf> summaryTrsf();
 
   /// Returns the parameters of color definition in the resources config manager
   MODEL_EXPORT virtual void colorConfigInfo(std::string& theSection, std::string& theName,
@@ -91,6 +95,9 @@ class Model_ResultPart : public ModelAPI_ResultPart
   /// Returns the shape selected in the selection index
   MODEL_EXPORT virtual std::shared_ptr<GeomAPI_Shape> selectionValue(const int theIndex);
 
+  /// Loading the part from file
+  MODEL_EXPORT virtual void loadPart();
+
 protected:
   /// makes a result on a temporary feature (an action)
   Model_ResultPart();