Salome HOME
Image positioning by two points.
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_PolylineOp.h
index be473d9774e553d6b6a3f71e6a5b7a517cf603de..614960dfecb719eeae3c0bc93ac8cc77b5b8c3d7 100755 (executable)
 
 #include "HYDROGUI_Operation.h"
 
+#include <HYDROData_Polyline.h>
+
+class OCCViewer_ViewManager;
+class CurveCreator_Curve;
+class HYDROGUI_AISCurve;
+
 class HYDROGUI_PolylineOp : public HYDROGUI_Operation
 {
   Q_OBJECT
 
 public:
-  HYDROGUI_PolylineOp( HYDROGUI_Module* theModule );
+  HYDROGUI_PolylineOp( HYDROGUI_Module* theModule, bool isEdit );
   virtual ~HYDROGUI_PolylineOp();
 
 protected:
+  virtual void               startOperation();
+  virtual void               abortOperation();
+  virtual void               commitOperation();
+
   virtual HYDROGUI_InputPanel* createInputPanel() const;
 
-  virtual bool processApply( int& theUpdateFlags );
+  virtual bool               processApply( int& theUpdateFlags, QString& theErrorMsg );
+
+protected slots:
+  void                       onEditorSelectionChanged();
+
+private:
+  void                       displayPreview();
+  void                       erasePreview();
+
+private:
+  OCCViewer_ViewManager*     myViewManager;
 
+  bool                       myIsEdit;
+  Handle(HYDROData_Polyline) myEditedObject;
+  CurveCreator_Curve*        myCurve;
+  HYDROGUI_AISCurve*         myAISCurve;
 };
 
 #endif