Salome HOME
Transaction mechanism for operations corrected.
[modules/hydro.git] / src / HYDROGUI / HYDROGUI_Operation.h
index 69cab654ccde1607d2b479171b5237ec469cb72e..05879abfc0ad272539dc1f61a88d7f58dd860160 100644 (file)
 
 class HYDROGUI_Module;
 class HYDROGUI_InputPanel;
+class HYDROGUI_Shape;
+
 class SUIT_SelectionMgr;
+class OCCViewer_ViewManager;
+
 class Handle_HYDROData_Document;
 class Handle_HYDROData_Object;
 
@@ -49,6 +53,9 @@ public:
   SUIT_SelectionMgr*                  selectionMgr() const;
   HYDROGUI_Module*                    module() const;
 
+  int                                 getPreviewZLayer() const;
+  virtual void                        updatePreviewZLayer( int theLayer );
+
 signals:
   void                                helpContextModule( const QString&,
                                                          const QString&,
@@ -58,6 +65,7 @@ protected:
   virtual void                        startOperation();
   virtual void                        abortOperation();
   virtual void                        commitOperation();
+  virtual void                        stopOperation();
   virtual void                        setDialogActive( const bool );
 
   virtual HYDROGUI_InputPanel*        createInputPanel() const;
@@ -72,6 +80,8 @@ protected:
 
   Handle_HYDROData_Document           doc() const;
 
+  virtual bool                        isToAbortOnApply() const { return true; }
+
   void                                printErrorMessage( const QString& theErrorMsg );
   void                                setPrintErrorMessage( const bool theIsPrint );
 
@@ -87,12 +97,20 @@ protected:
   QString                             getHelpFile() const;
   QString                             getHelpContext() const;
 
+  virtual void                        setPreviewZLayer( int theLayer );
+  virtual HYDROGUI_Shape*             getPreviewShape() const;
+  OCCViewer_ViewManager*              getPreviewManager();
+  void                                setPreviewManager( OCCViewer_ViewManager* theManager );
+
 private:
 
   HYDROGUI_Module*                    myModule;
   HYDROGUI_InputPanel*                myPanel;
+  OCCViewer_ViewManager*              myPreviewManager;
   QString                             myName;
   bool                                myIsPrintErrorMessage;
+  bool                                myIsTransactionOpened;
+  int                                 myPreviewZLayer;
 };
 
 #endif