> ## Documentation Index
> Fetch the complete documentation index at: https://docs.abbyy.com/llms.txt
> Use this file to discover all available pages before exploring further.

# OnDeleteBlocks Method of the IImageViewerEvents Interface

> OnDeleteBlocks method of the IImageViewerEvents Interface in ABBYY FineReader Engine Visual Components on Windows — This method is implemented on the client-side.

This method is implemented on the client-side. It is called by ABBYY FineReader Engine before deleting the blocks in [Image Viewer](/fine-reader/engine/visual-components-reference/imageviewer) if the process is invoked in one of the following ways:

* with the help of the <img src="https://mintcdn.com/abbyy/i-EfCQVmseNiPQcp/images/fine-reader/engine/tb_delblocks.gif?s=df46e9a8cb585622a6ed50468ed4cf17" alt="tb_delBlocks" width="24" height="23" data-path="images/fine-reader/engine/tb_delblocks.gif" /> Delete Block ([MI\_ChooseTool\_DeleteBlock](/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_choosetool_deleteblock)) tool
* by calling [MI\_BlockDelete](/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands#mi_blockdelete) command

See the [Image Viewer Commands](/fine-reader/engine/visual-components-reference/imageviewer/image-viewer-commands) list to find out how the commands can be called.

The method delivers to the client the indices of the blocks which are going to be deleted. With the help of this method it is possible to cancel the operation.

## Syntax

### C++

```cpp theme={null}
HRESULT OnDeleteBlocks(
  IIntsCollection* BlocksToDelete,
  VARIANT_BOOL*    Cancel
);
```

### C\#

```csharp theme={null}
void OnDeleteBlocks(
  IIntsCollection BlocksToDelete,
  out bool        Cancel
);
```

### Visual Basic .NET

```vb theme={null}
Sub OnDeleteBlocks( _
  BlocksToDelete As IIntsCollection, _
  ByRef Cancel As Boolean _
)
```

## Parameters

BlocksToDelete

\[in] Contains the indices of blocks that have to be deleted as an [IntsCollection](/fine-reader/engine/api-reference/supplementary-objects-and-methods/intscollection) object.

Cancel

\[out] You may set this variable to TRUE to indicate that the process should be terminated. In this case, the blocks will not be deleted.

## Return values

\[C++ only] If this method returns a value other than S\_OK, it indicates that an error occurred on the client-side, and in this case the value of the Cancel parameter is not taken into account.

## Remarks

The client implementation of this method must assure that all exceptions thrown inside the method are caught and handled and no exceptions are propagated outside the method. Propagation of an exception outside the method may lead to unpredictable results (such as program termination).

## See also

[IImageViewerEvents](/fine-reader/engine/visual-components-reference/iimageviewerevents)
