Salome HOME
Merge branch 'master' of newgeom:newgeom
[modules/shaper.git] / src / XGUI / XGUI_OperationMgr.h
index 2e74ab0b1d045c300b820b0a6259d6e4ba85d443..41323570ec46fc3e6fcf12566182c9c84e0e48a6 100644 (file)
@@ -34,11 +34,19 @@ public:
   /// Returns the current operation or NULL
   /// \return the current operation
   ModuleBase_Operation* currentOperation() const;
+  /// Returns true is operation manager has at least one non-null operation.
+  bool hasOperation() const;
+  /// Returns number of operations in the stack
+  int operationsCount() const;
   /// Start the operation and append it to the stack of operations
   /// \param theOperation the started operation
   /// \return the state whether the current operation is started
   bool startOperation(ModuleBase_Operation* theOperation);
 
+  /// Abort the operation and append it to the stack of operations
+  /// \return the state whether the current operation is aborted
+  bool abortOperation();
+
 signals:
   /// Signal about an operation is started. It is emitted after the start() of operation is done.
   void operationStarted();
@@ -58,6 +66,9 @@ protected:
   /// \param theOperation an operation to check
   bool canStartOperation(ModuleBase_Operation* theOperation);
 
+  /// Returns whether the operation can be stopped.
+  bool canStopOperation();
+
 protected slots:
   /// Slot that is called by an operation stop. Removes the stopped operation form the stack.
   /// If there is a suspended operation, restart it.