Salome HOME
It removes SketchShapePlugin from plugins
[modules/shaper.git] / src / ModuleBase / ModuleBase_OperationFeature.h
index 3e5da99146947bf83248bbfba91056d814163556..ab0ce8c900ab13485f5ecf6333ff950674daf10b 100755 (executable)
@@ -64,6 +64,13 @@ Q_OBJECT
   /// Returns True id the current operation is launched in editing mode
   bool isEditOperation() const { return myIsEditing; }
 
+  /// Change the operation mode from create to edit.
+  /// The transaction and the operation name in the model history of transaction are the same.
+  /// It updates the edit state in the widgets of property panel
+  /// \param theRestartTransaction if true, the current model transaction is committed and
+  /// the new one is started
+  void setEditOperation(const bool theRestartTransaction);
+
   /// Returns the operation feature
   /// \return the feature
   FeaturePtr feature() const;
@@ -96,8 +103,6 @@ Q_OBJECT
   /// \return Currently installed property panel
   //ModuleBase_IPropertyPanel* propertyPanel() const { return myPropertyPanel; }
 
-  void setCurrentFeature(const FeaturePtr& theFeature);
-
   /// Activates widgets by preselection if it is accepted. Emits signal if the activation is correct
   virtual void activateByPreselection();
 
@@ -109,6 +114,14 @@ Q_OBJECT
   /// \return Installed parent feature (can be NULL)
   CompositeFeaturePtr parentFeature() const;
 
+  /// Stores the previous to the operation current feature
+  /// \param theFeature a feature
+  void setPreviousCurrentFeature(const FeaturePtr& theFeature);
+
+  /// Returns the previous to the operation current feature
+  /// \return theFeature a feature
+  FeaturePtr previousCurrentFeature();
+
 signals:
   /// The operation is filled with existing preselection
   void activatedByPreselection(); 
@@ -120,7 +133,8 @@ signals:
   /// to change behavior of operation. There is no point in using this method. It would
   /// be better to inherit own operator from base one and redefine startOperation method
   /// instead.
-  void start();
+  /// \return true if the start is successful
+  virtual bool start();
 
   /// Aborts operation
   /// Public slot. Aborts operation. This slot is not virtual and cannot be redefined.
@@ -139,9 +153,6 @@ signals:
   /// Hide feature/results if they were hided on start
   virtual void stopOperation();
 
-  /// Virtual method called after operation resume (see resume() method for more description)
-  virtual void resumeOperation();
-
   /// Creates an operation new feature
   /// \param theFlushMessage the flag whether the create message should be flushed
   /// \returns the created feature