Class InputProcessorBase
Base class for input processors with default no-op implementations.
public abstract class InputProcessorBase : IInputProcessor
- Inheritance
-
InputProcessorBase
- Implements
- Derived
- Inherited Members
Properties
HandledTypes
The hit target types this processor handles (bitmask).
Use bitwise OR to handle multiple types: HitTargetType.Node | HitTargetType.Group
public abstract HitTargetType HandledTypes { get; }
Property Value
Name
Display name for debugging.
public abstract string Name { get; }
Property Value
Priority
Priority for checking this processor. Higher = checked first.
public abstract int Priority { get; }
Property Value
Methods
CanHandle(HitTargetType)
Checks if this processor handles the given target type (O(1) bitmask check).
public bool CanHandle(HitTargetType targetType)
Parameters
targetTypeHitTargetType
Returns
CapturePointer(PointerEventArgs, Control?)
Captures the pointer on the root panel for drag operations.
protected static void CapturePointer(PointerEventArgs e, Control? target)
Parameters
ePointerEventArgstargetControl
HandlePointerMoved(InputStateContext, GraphHitTestResult, PointerEventArgs)
Handles pointer moved. Called during idle state for hover effects.
public virtual InputProcessorResult HandlePointerMoved(InputStateContext context, GraphHitTestResult hit, PointerEventArgs e)
Parameters
contextInputStateContexthitGraphHitTestResultePointerEventArgs
Returns
HandlePointerPressed(InputStateContext, GraphHitTestResult, PointerPressedEventArgs)
Handles pointer pressed on an element this processor is responsible for.
public virtual InputProcessorResult HandlePointerPressed(InputStateContext context, GraphHitTestResult hit, PointerPressedEventArgs e)
Parameters
contextInputStateContextThe input state context.
hitGraphHitTestResultThe hit test result (guaranteed to be a type from HandledTypes).
ePointerPressedEventArgsThe Avalonia pointer event.
Returns
- InputProcessorResult
Result indicating whether handled and any state transition.
HandlePointerReleased(InputStateContext, GraphHitTestResult, PointerReleasedEventArgs)
Handles pointer released. Rarely needed at processor level.
public virtual InputProcessorResult HandlePointerReleased(InputStateContext context, GraphHitTestResult hit, PointerReleasedEventArgs e)
Parameters
contextInputStateContexthitGraphHitTestResultePointerReleasedEventArgs
Returns
IsCtrlHeld(PointerEventArgs)
Checks if Ctrl modifier is held.
protected static bool IsCtrlHeld(PointerEventArgs e)
Parameters
ePointerEventArgs
Returns
IsDoubleClick(PointerPressedEventArgs)
Checks if this is a double-click.
protected static bool IsDoubleClick(PointerPressedEventArgs e)
Parameters
ePointerPressedEventArgs
Returns
IsShiftHeld(PointerEventArgs)
Checks if Shift modifier is held.
protected static bool IsShiftHeld(PointerEventArgs e)
Parameters
ePointerEventArgs