MatchesCriteriaBaseCallback Delegate
Represents a function that is used to evaluate if a ContextNodeBase object meets or fails a specified criteria.
Namespace: System.Windows.Ink.AnalysisCore
Assembly: IACore (in IACore.dll)
Syntax
'Declaration
Public Delegate Function MatchesCriteriaBaseCallback ( _
visitingNode As ContextNodeBase, _
data As Object _
) As Boolean
'Usage
Dim instance As New MatchesCriteriaBaseCallback(AddressOf HandlerMethod)
public delegate bool MatchesCriteriaBaseCallback(
ContextNodeBase visitingNode,
Object data
)
public delegate bool MatchesCriteriaBaseCallback(
ContextNodeBase^ visitingNode,
Object^ data
)
JScript does not support delegates.
Parameters
visitingNode
Type: System.Windows.Ink.AnalysisCore.ContextNodeBaseThe ContextNodeBase object that will be checked against the criteria.
data
Type: System.ObjectOptional data that can be used for the criteria.
Return Value
Type: System.Boolean
A Boolean value which indicates whether the visitingNode object matches the criteria.
Examples
The following example finds the collection of ContextNodeBase objects in an InkAnalyzerBase, theInkAnalyzerBase, that satisfies the criteria specified in the MatchesCriteriaBaseCallback delegate function LineIsLowerThan by using an integer, yValue.
Dim lineIsLowerThanCallback As _
New System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback(AddressOf LineIsLowerThan)
Dim nodesBelowYValue As ContextNodeBaseCollection = _
theInkAnalyzerBase.FindNodes(lineIsLowerThanCallback, yValue)
System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback
lineIsLowerThanCallback = new System.Windows.Ink.AnalysisCore.MatchesCriteriaBaseCallback(LineIsLowerThan);
ContextNodeBaseCollection nodesBelowYValue =
theInkAnalyzerBase.FindNodes(lineIsLowerThanCallback, yValue);
LineIsLowerThan returns a true if the ContextNodeBase is of type Line and if the bottom of the bounding box is lower than an integer that is passed in. (Remember that higher y values appear lower on the screen.) Therefore, the nodesBelowYValue collection contains all lines with strokes below the value, yValue.
Public Function LineIsLowerThan( _
ByVal nodeBase As System.Windows.Ink.AnalysisCore.ContextNodeBase, _
ByVal data As Object) As Boolean
' Return false if not a line
If nodeBase.Type <> System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line Then
Return False
End If
' Check if bottom is lower than yValue passed in
Dim yValue As Integer = Fix(data)
Return nodeBase.Location.GetBounds()(3) > yValue
End Function 'LineIsLowerThan
public bool LineIsLowerThan(System.Windows.Ink.AnalysisCore.ContextNodeBase nodeBase, object data)
{
// Return false if not a line
if (!(nodeBase.Type == System.Windows.Ink.AnalysisCore.ContextNodeTypeBase.Line))
return false;
// Check if bottom is lower than yValue passed in
int yValue = (int)data;
return (nodeBase.Location.GetBounds()[3] > yValue);
}
Platforms
Windows 7, Windows Vista, Windows XP SP2, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003
The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
Version Information
.NET Framework
Supported in: 3.0