Salome HOME
OCC functionality moving out from the widget
[modules/hydro.git] / src / HYDROCurveCreator / CurveCreator_Widget.h
index 0e6e51e81e842caff9678f3bd23ab901695e61b9..43fdb492fbc398e53fbd5ac11f2e3f506006e0ea 100644 (file)
@@ -20,9 +20,9 @@
 #ifndef CURVECREATOR_WIDGET_H
 #define CURVECREATOR_WIDGET_H
 
-//#include "CurveCreator_ICurve.hxx"
-#include "CurveCreator.hxx"
 #include "CurveCreator_Macro.hxx"
+#include "CurveCreator.hxx"
+#include "CurveCreator_ICurve.hxx"
 
 #include <QWidget>
 #include <QMap>
@@ -43,7 +43,6 @@ class AIS_ListOfInteractive;
 class QAction;
 class QPixmap;
 class QTableWidget;
-class CurveCreator_ICurve;
 class CurveCreator_TreeView;
 class CurveCreator_NewPointDlg;
 class CurveCreator_NewSectionDlg;
@@ -147,9 +146,6 @@ protected:
     DetectionMode
   };
 
-  typedef std::pair< int, int > SectionToPoint;
-  typedef std::deque< SectionToPoint > SectionToPointList;
-
 private:
   OCCViewer_Viewer* getOCCViewer();
 
@@ -171,33 +167,28 @@ private:
 
   void setDragStarted( const bool theState, const QPoint& thePoint = QPoint() );
 
-  void getSelectedPonts( SectionToPointList& thePoints );
-  void setSelectedPonts( const SectionToPointList& = SectionToPointList() );
+  void getSelectedPonts( CurveCreator_ICurve::SectionToPointList& thePoints );
+  void setSelectedPonts( const CurveCreator_ICurve::SectionToPointList& =
+                               CurveCreator_ICurve::SectionToPointList() );
 
-  void startCurveModification( SectionToPointList& thePoints,
+  void startCurveModification( CurveCreator_ICurve::SectionToPointList& thePoints,
                                const bool theFillPoints = true );
-  void finishCurveModification( const SectionToPointList& thePoints = SectionToPointList() );
+  void finishCurveModification( const CurveCreator_ICurve::SectionToPointList& thePoints = 
+                                      CurveCreator_ICurve::SectionToPointList() );
 
   // curve algorithm
   int  findLocalPointIndex( int theSectionId, float theX, float theY );
   void findSectionsToPoints( const double theX, const double theY,
-                             SectionToPointList& thePoints );
-  void convert( const SectionToPointList& thePoints,
+                             CurveCreator_ICurve::SectionToPointList& thePoints );
+  void convert( const CurveCreator_ICurve::SectionToPointList& thePoints,
                 QMap<int, QList<int> >& theConvPoints );
 
-  // OCC algorithm
-  bool pointOnObject( Handle(AIS_InteractiveObject) theObject,
-                      const int theX, const int theY,
-                      gp_Pnt& thePoint, gp_Pnt& thePoint1, gp_Pnt& thePoint2 );
-  bool hasProjectPointOnCurve( const int theX, const int theY,
-                               const Handle(Geom_Curve)& theCurve,
-                               Standard_Real& theParameter );
-
   // local point view table methods
   int getSectionId( const int theRowId ) const;
   int getPointId( const int theRowId ) const;
 
-  bool contains( const SectionToPointList& theList, const SectionToPoint& theValue ) const;
+  bool contains( const CurveCreator_ICurve::SectionToPointList& theList,
+                 const CurveCreator_ICurve::SectionToPoint& theValue ) const;
 
 private:
   QMap<ActionId, QAction*>    myActionMap;
@@ -211,7 +202,7 @@ private:
   bool                        myDragStarted;
   QPoint                      myDragStartPosition;
   int                         myDragInteractionStyle;
-  SectionToPointList          myDragPoints;
+  CurveCreator_ICurve::SectionToPointList myDragPoints;
   bool                        myDragged;
   QByteArray                  myGuiState;
 };