Salome HOME
Minor changes.
[modules/hydro.git] / src / HYDROCurveCreator / CurveCreator_Curve.hxx
index 34ff73f3ca1957caaff80311ccfca36782e231eb..adcfc87a8f6f8e21448d463583bfbcb14ae5597a 100644 (file)
@@ -41,7 +41,7 @@ class Handle_AIS_InteractiveObject;
  *  The CurveCreator_Curve object is represented as one or more sets of
  *  connected points; thus CurveCreator_Curve object can contain several
  *  not connected curves (polylines or b-splines), each such curve has two
- *  only ends � start and end points � in other words non-manifold curves
+ *  only ends "start and end points" in other words non-manifold curves
  *  are not supported.
  */
 class CURVECREATOR_EXPORT CurveCreator_Curve : public CurveCreator_ICurve
@@ -140,11 +140,11 @@ public:
   virtual bool clear();
 
   //! For internal use only! Undo/Redo are not used here.
-  virtual bool joinInternal( const int theISectionTo = -1, 
-                             const int theISectionFrom = -1 );
-  //! 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 );
+  virtual bool joinInternal( const std::list<int>& theSections );
+
+  //! 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 );
 
   //! Get number of sections
   virtual int getNbSections() const;
@@ -298,6 +298,12 @@ protected:
 
 protected:
   virtual void constructAISObject();
+  /**
+   * Returns the section by the section index or NULL if the index is out of the section
+   * list range
+   * \param theSectionId the section index
+   */
+  CurveCreator_Section* getSection( const int theSectionId ) const;
 
 protected:
   bool                            mySkipSorting;