InteractiveState class abstract
The state of the interactive layer.
This abstract class defines the interface for different states that the InteractiveLayer
can be in. It allows the interactive layer to change its behavior dynamically by
switching between different states.
There are three main states implemented:
- InteractiveNormalState: The default state where no tools are selected or being added
- InteractiveSelectedToolState: Activated when a tool is selected, enabling manipulation
- InteractiveAddingToolState: Active when a new tool is being created
Each state handles user interactions (tap, pan events) differently and can transition
to other states using InteractiveLayerBase.updateStateTo.
- Implementers
- Available extensions
Constructors
- InteractiveState({required InteractiveLayerBehaviour interactiveLayerBehaviour})
- Initializes the state with the interactive layer.
Properties
- epochFromX → EpochFromX
-
Converts x coordinate (in pixels) to epoch timestamp.
no setter
- epochToX → EpochToX
-
Converts epoch timestamp to x coordinate (in pixels).
no setter
- hashCode → int
-
The hash code for this object.
no setterinherited
- interactiveLayer → InteractiveLayerBase
-
The interactive layer that owns this state.
no setter
- interactiveLayerBehaviour → InteractiveLayerBehaviour
-
The interactive layer.
final
-
previewDrawings
→ List<
DrawingV2> -
Additional drawings of the state to be drawn on top of the main drawings.
no setter
-
previewWidgets
→ List<
Widget> -
Additional widgets to be rendered on top of the interactive layer.
no setter
- quoteFromY → QuoteFromY
-
Converts y coordinate (in pixels) to quote value.
no setter
- quoteToY → QuoteFromY
-
Converts quote value to y coordinate (in pixels).
no setter
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
Methods
-
anyDrawingHit(
Offset hitOffset) → InteractableDrawing< DrawingToolConfig> ? -
Available on InteractiveState, provided by the InteractiveStateExtension extension
Returns the drawing that was hit by the tap event. Returns null if no drawing was hit. -
getToolState(
DrawingV2 drawing) → Set< DrawingToolState> - Returns the state of the drawing tool.
-
getToolZOrder(
DrawingV2 drawing) → DrawingZOrder - Returns the z-order for the tool drawings.
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
onHover(
PointerHoverEvent event) → bool - Handles hover event. Returns true if the hover is over a drawing tool, false otherwise.
-
onLongPress(
Offset localPosition) → bool - Handles long press event. Returns true if the long press was handled by a drawing tool, false otherwise.
-
onLongPressEnd(
) → bool - Handles long press end event. Returns true if the long press end was handled by a drawing tool, false otherwise.
-
onPanEnd(
DragEndDetails details) → bool - Handles pan end event. Returns true if the pan end is affecting a drawing tool, false otherwise.
-
onPanStart(
DragStartDetails details) → bool - Handles pan start event. Returns true if the pan was started on a drawing tool, false otherwise.
-
onPanUpdate(
DragUpdateDetails details) → bool - Handles pan update event. Returns true if the pan update is affecting a drawing tool, false otherwise.
-
onTap(
TapUpDetails details) → bool - Handles tap event. Returns true if the tap was handled by a drawing tool, false otherwise.
-
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited