Salome HOME
refs #567: add "POLYLINES" partition and modified icon for Land Cover object.
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_SplitPolylinesDlg.h
index 3dca4fba869b43615d28ecef1558273cf4166e5d..c550472a7d3a99482a2572930d56745bf45fb681 100644 (file)
 #define HYDROGUI_SplitPolylinesDlg_H
 
 #include "HYDROGUI_InputPanel.h"
+#include <HYDROData_PolylineXY.h>
+
+class QTabWidget;
+class QtxDoubleSpinBox;
+class HYDROGUI_ObjComboBox;
+class HYDROGUI_ObjListBox;
+class gp_Pnt2d;
+class OCCViewer_Viewer;
+class SUIT_ViewWindow;
+class OCCViewer_ViewPort3d;
 
 class HYDROGUI_SplitPolylinesDlg : public HYDROGUI_InputPanel
 {
   Q_OBJECT
 
+public:
+  enum Mode { ByPoint, ByTool, Split };
+
 public:
   HYDROGUI_SplitPolylinesDlg( HYDROGUI_Module* theModule, const QString& theTitle );
   virtual ~HYDROGUI_SplitPolylinesDlg();
+
+  Mode GetMode() const; 
+  Handle( HYDROData_PolylineXY ) GetMainPolyline() const;
+  Handle( HYDROData_PolylineXY ) GetToolPolyline() const;
+  gp_Pnt2d GetPoint() const;
+  HYDROData_SequenceOfObjects GetPolylines() const;
+
+  void setPolylinesFromSelection();
+  void setOCCViewer( OCCViewer_Viewer* theViewer );
+
+signals:
+  void modeChanged();
+  void pointMoved();
+  void selectionChanged();
+
+private slots:
+  void onMousePress( SUIT_ViewWindow*, QMouseEvent* );
+
+private:
+  OCCViewer_ViewPort3d* getViewPort() const;
+
+private:
+  QTabWidget* myTab;
+  QtxDoubleSpinBox* myX;
+  QtxDoubleSpinBox* myY;
+  HYDROGUI_ObjComboBox* myMainPolyline1;
+  HYDROGUI_ObjComboBox* myMainPolyline2;
+  HYDROGUI_ObjComboBox* myToolPolyline;
+  HYDROGUI_ObjListBox*  myPolylines;
+  OCCViewer_Viewer*     myOCCViewer;
 };
 
 #endif