Salome HOME
another z layer for hilight presentation
[modules/hydro.git] / src / HYDROCurveCreator / CurveCreator_Profile.hxx
index d544c87c304541f3f30a786550ee64b2455725bc..f426fba00e3de200949139c05db68f0694df0cbf 100644 (file)
@@ -50,8 +50,7 @@ public:
   virtual bool clearInternal();
 
   //! For internal use only! Undo/Redo are not used here.
-  virtual bool joinInternal( const int theISectionTo = -1, 
-                             const int theISectionFrom = -1 );
+  virtual bool joinInternal( const std::list<int>& theSections );
 
   //! For internal use only! Undo/Redo are not used here.
   virtual bool moveSectionInternal( const int theISection,
@@ -59,10 +58,9 @@ public:
   //! Move section to new position in list
   virtual bool moveSection( const int theISection,
                             const int theNewIndex );
-
-  //! Join range of sections to one section (join all sections if -1 is passed in one of arguments)
-  virtual bool join( const int theISectionTo = -1, 
-                     const int theISectionFrom = -1 );
+  //! Join list of sections to one section (join all if the list is empty)
+  // The first section in the list is a leader, another sections are joined to it
+  virtual bool join( const std::list<int>& theSections );
 
   //! For internal use only! Undo/Redo are not used here.
   virtual int addSectionInternal( const std::string &theName, 
@@ -110,6 +108,15 @@ public:
   //! For internal use only! Undo/Redo are not used here.
   virtual bool setPointInternal( const CurveCreator::SectionsMap &theSectionsMap );
 
+  /**
+   *  Add one point to the specified section starting from the given theIPnt index.
+   *  Contrary to CurveCreator_Curve::addPoints(...) if \a theIPnt is -1 the right index
+   *  will be calculated automatically in accordance with X coordinate value of the point.
+   */
+  virtual bool addPoints( const CurveCreator::Coordinates &theCoords,
+                          const int theISection,
+                          const int theIPnt = -1 );
+
   /**
    * Indicates whether the points can be sorted.
    */