InkAnalyzer.Abort Method

Cancels the current analysis operation.

Namespace: System.Windows.Ink
Assembly: IAWinFX (in iawinfx.dll)

Syntax

'Declaration
Public Function Abort As AnalysisRegion
'Usage
Dim instance As InkAnalyzer
Dim returnValue As AnalysisRegion

returnValue = instance.Abort
public AnalysisRegion Abort ()
public:
AnalysisRegion^ Abort ()
public AnalysisRegion Abort ()
public function Abort () : AnalysisRegion
Not applicable.

Return Value

The dirty region of current analysis operation.

Remarks

After this method is called, the InkAnalyzer stops raising events for the canceled analysis operation. If a background analysis operation is canceled, this method runs asynchronously until the InkAnalyzer stops the operation. Also, consider the following conditions:

  • If no analysis operations are in progress, Abort returns an empty analysis region.

  • If one analysis operation is in progress, Abort cancels the operation.

  • If both synchronous and asynchronous analysis operations are in progress, Abort cancels the synchronous operation.

  • If this method is called more than once for the same analysis operation, the first call returns the dirty region for the operation and subsequent calls return an empty region.

  • If your application maintains its own synchronized data structure with that of the InkAnalyzer, calling Abort can leave your document with partial results. To avoid this, do not call Abort from the time InkAnalyzer raises the InkAnalyzerStateChanging event to the time InkAnalyzer raises the IntermediateResults or Results event.

For more information about synchronizing your application data with the InkAnalyzer, see Data Proxy with Ink Analysis.

Example

This example defines an event handler for the InkAnalyzer.Activity event. If the analysis operation needs to be canceled, the event handler calls Abort on the InkAnalyzer that generated the event and updates the InkAnalyzer object's DirtyRegion.

' <summary>
' The ink analyzer's Activity event handler.
' </summary>
' <param name="sender">The source of the event.</param>
' <param name="e">The event data.</param>
Sub theInkAnalyzer_Activity(ByVal sender As Object, ByVal e As EventArgs) 
    Dim abortAnalysis As Boolean = False
    
    ' Check if the analysis operation should be canceled.
    ' Abort analysis if the flag to do so is set.
    If abortAnalysis Then
        ' Get the InkAnalyzer that raised the Activity event.
        Dim theInkAnalyzer As InkAnalyzer = sender

        ' Abort the analysis and get the region that was being analyzed.
        Dim theAnalysisRegion As AnalysisRegion = theInkAnalyzer.Abort()
        
        ' Add the region that was being analyzed to the analyzer's dirty region.
        theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion)
    End If

End Sub 'theInkAnalyzer_Activity
/// <summary>
/// The ink analyzer's Activity event handler.
/// </summary>
/// <param name="sender">The source of the event.</param>
/// <param name="e">The event data.</param>
void theInkAnalyzer_Activity(object sender, EventArgs e)
{
    bool abortAnalysis = false;

    // Check if the analysis operation should be canceled.

    // Abort analysis if the flag to do so is set.
    if (abortAnalysis)
    {
        // Get the InkAnalyzer that raised the Activity event.
        InkAnalyzer theInkAnalyzer =
            sender as InkAnalyzer;

        // Abort the analysis and get the region that was being analyzed.
        AnalysisRegion theAnalysisRegion = theInkAnalyzer.Abort();

        // Add the region that was being analyzed to the analyzer's dirty region.
        theInkAnalyzer.DirtyRegion.Union(theAnalysisRegion);
    }
}

Platforms

Windows 98, Windows Server 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile for Pocket PC, Windows Mobile for Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The Microsoft .NET Framework 3.0 is supported on Windows Vista, Microsoft Windows XP SP2, and Windows Server 2003 SP1.

Version Information

.NET Framework

Supported in: 3.0

See Also

Reference

InkAnalyzer Class
InkAnalyzer Members
System.Windows.Ink Namespace
InkAnalyzer.Analyze
System.Windows.Ink.InkAnalyzerBase.BackgroundAnalyze
InkAnalyzer.DirtyRegion