Back to API Reference
Class

InteractiveModifier

Inherits:BaseModifier

Declares semantic interaction for ranges selected by a Style source. One per-component UniTextInteractions router owns input, geometry, overlap and pointer state; this modifier owns only authored policy, target events and optional default actions.

Derived Types(2)

Types that inherit from InteractiveModifier.

public ReadOnlySpan<InteractiveRange> InteractiveRanges{ get }

The interactive ranges produced by the last modifier application cycle.

protected string AttributeKey{ get }

Per-instance attribute key. Override only for an intentional shared range buffer.

protected override void OnEnable()
protected override void OnDisable()
protected override void OnDestroy()
protected override void BeforeApply()
protected override void OnApply()

Resolves the primary value and all optional hit-policy slots. Subclasses that own the primary value should consume it, then call AddRange.

protected void AddRange()

Adds an attributed range after consuming the primary value slot.

protected void AddRange()

Adds an attributed range and consumes optional interaction policy slots from the reader.

public virtual bool TryGetRange()

Finds the first owned range containing the rendered cluster.

protected virtual bool IsRangeEnabled()

Whether the entity currently participates in focus, hit testing and events.

public RangeState GetRangeState()

Current aggregate state across all pointer leases for this range.

protected virtual void HandleRangesRebuilt()

Reconciles modifier-owned entity state after the router rebuilds final geometry.

protected virtual void HandleInteraction()

Receives every routed target event after public handlers.

protected virtual void HandleDefaultAction()

Performs built-in behavior after all capture, channel, modifier and bubble handlers. It is skipped when a handler calls PreventDefault.

public RangeInteractionHandler Interaction

Occurs for every event delivered to this modifier's concrete target.