ignis library

Classes

Aabb2
AnchorEffect
An effect that animates an AnchorOwner's anchor over time.
AnchorOwner
Something with an anchor.
AngleOwner
Something with an angle.
Backdrop
Describes how a route treats the route it is pushed over.
BoxNode
Claims a region, optionally at a fixed size, and places every child inside it under a shared padding and alignment.
Cache
Storage for arbitrary assets.
Canvas
An interface for recording graphical operations.
Circle
ClipNode
Clips its subtree to its shape.
ColliderNode
A hitbox that reports overlaps against other colliders registered to the same CollisionArenaNode.
CollisionArena
A sweep-and-prune collision arena, run once per tick.
CollisionArenaNode
Steps a CollisionArena once per tick.
CollisionSet
The colliders a ColliderNode currently overlaps.
ColorFilterOpacityEffect
An effect that fades a color in or out on a Paint by animating a ColorFilter, varying color's alpha with progress.
ColorOpacityEffect
An effect that animates a Paint's opacity by mutating its alpha.
ColumnNode
Lays its children out vertically, equivalent to Flutter's Column.
CombinedEffect
A node that runs effects together, exposing onFinish once every one of them has finished.
ControlDevice
A source of control events.
ControlEvent
Something a device emits: a key going down, a button pressed, a stick moved.
Controls
Routes events emitted by control devices to the handlers bound to them.
CurtainTransition
Fades a veil above everything to full opacity at swapAt, swaps the sides under it, and fades it back out.
CutTransition
Swaps instantly with no visuals, finishing on the first tick.
Debug
Holds debug settings used across all Ignis scenes.
DebugControlsNode
Wires the engine's own debug controls to the keyboard for as long as this node is mounted.
DragEndEvent
DragInput
A hit area that recognizes drags by delegating to an ImmediateMultiDragGestureRecognizer.
DragStartEvent
DragUpdateEvent
DurationTimeline
Progresses from 0 to 1 over duration, shaped by curve.
EffectNode
A Node with a concept of being finished. Also called effect.
FadeTransition
Fades the incoming side in over the still-painting outgoing one.
FlexNode
Lays its children out along direction, giving each child a share of the leftover space by its LayoutNode.flex.
FollowEffect
An effect that moves a PositionOwner toward following at speed.
FpsNode
FrozenBackdrop
Keeps painting, frozen in place.
HiddenBackdrop
Paints during navigation, and then not at all.
HoverEvent
HoverInput
A hit area that recognizes mouse hover.
Ignis
Namespace for global Ignis objects.
ImageLoader
The built-in loader for images.
InfiniteTimeline
Runs child forever, restarting it from the beginning after each run.
InputNode
A pointer hit area.
IntersectionEngine
JsonLoader
The built-in loader for JSON files.
KeyboardDevice
The hardware keyboard, as a control device.
KeyPress
A pressed keyboard key and its modifier state.
LayoutConstraints
The range of sizes a layout item may choose from when it lays itself out.
LayoutEngine
A standalone set of layout algorithms, operating on LayoutItem items.
LayoutFlex
An item's factor share of a flex's leftover main-axis space, and the fit it takes that share at.
LayoutItem
Something a layout algorithm can lay out, position, and allocate space to.
LayoutNode
A SpatialNode whose size is computed via constraint propagation, rather than being intrinsic to its content.
LiveBackdrop
Keeps updating and rendering throughout, as if nothing were over it.
Loader
LoadingContext
Represents a context in which an asset is loaded.
LoadingEffect
An effect that finishes once its preload request lands successfully.
LoadingFilter
LocalAssetBundle
The dart:io-free stand-in for LocalAssetBundle.
MAabb2
Matrix3
Matrix4
MeasurableEffect
An effect with a well-defined "distance".
MMatrix3
MMatrix4
MoveEffect
An effect that animates a PositionOwner's position over time.
MQuad
MVector2
MVector3
Node
Overview
NoopLoader
A loader that does nothing. Useful for stubbing and testing.
OnceTimeline
Runs child once; ignored after that, whether reversing or repeating.
OpacityEffect
Animates an OpacityOwner's opacity, fading its whole subtree as one image.
OpacityNode
Fades its subtree as one image.
OpacityOwner
Something with an opacity.
Paint
A description of the style to use when drawing on a Canvas.
Palette
A managed, ordered collection of named Paints.
PaletteEntry
A named Paint entry, registered with a Palette via Palette.add.
PositionOwner
Something with a position.
Preload
A registry of Loaders, and the pool that runs them.
PreloadRequest
A single Preload.load in flight.
PreloadSnapshot
One PreloadRequest's state at a point in time.
Quad
Rectangle
RepeatTimeline
Runs child times times before finishing, restarting it from the beginning after each completed run.
RotateEffect
An effect that animates an AngleOwner's angle over time.
RoundtripTimeline
Plays child forward, then back to its start.
RouteNode
One entry on a RouterNode's stack.
RouterNode
A stack of RouteNodes.
RowNode
Lays its children out horizontally, equivalent to Flutter's Row.
ScaleEffect
An effect that animates a ScaleOwner's scale over time.
ScaleOwner
Something with a scale.
Scene<T extends Node>
A controller for a mounted Node tree.
SceneWidget
SequenceTimeline
Runs children one after another, advancing to the next once the current one finishes.
SequentialEffect
A node that chains effects one after another.
Shape
The geometry drawn or hit-tested for a node, in its own local space.
ShapeNode
ShapeTarget
Resolves the shape a node inherits, per a ShapeInheritance.
SheetRow
One row of a SpriteSheet's grid, and how it plays.
Signal
A named, type-safe message emitter.
Signal0
A primitive that sends messages to watchers.
Signal1<A>
A primitive that sends messages to watchers. See Signal0 for details.
Signal2<A, B>
A primitive that sends messages to watchers. See Signal0 for details.
Signal3<A, B, C>
A primitive that sends messages to watchers. See Signal0 for details.
SineCurve
Oscillates as a sine wave between -1 and 1, completing one full cycle as t runs from 0 to 1.
SlideTransition
Slides the incoming side in and the outgoing side out, as if being shoved.
SpatialNode
A Node with a transform and a shape.
SpeedOwner
Something with a speed.
SpeedTimeline
Progresses at speed units per second over the distance it is fit to, shaped by curve.
SpinEffect
An effect that spins an AngleOwner by speed, every tick, forever.
Sprite<T>
The frames a SpriteNode draws, and how long each is held.
SpriteAnimation
A run of frames, played.
SpriteEntry<T>
One entry of a Sprite: the frames it draws, and how it plays them.
SpriteGroup
Several Sprites laid end to end, addressed as one run of entries.
SpriteImage
One region, drawn still.
SpriteMap<T>
Several Sprites under names of your choosing.
SpriteNode<T>
Draws one frame of a Sprite at a time, and animates along its entry.
SpriteRegion
Which piece of which asset a sprite draws.
SpriteSheet
A grid measured over an image, and the pieces you can take from it.
SpriteState<T>
What a SpriteNode is drawing.
StandardIntersectionEngine
StandardLayoutEngine
TapDownEvent
TapInput
A hit area that recognizes taps by delegating to a TapGestureRecognizer.
TapUpEvent
Target<T>
Resolves to the nearest ancestor implementing T.
TerminalTimeline
Always finished, at progress 1, consuming no time.
TextNode
TextStyleNode
Holds the base TextStyle every descendant TextNode extends.
Timeline
A run of progress over time: how long it takes, how it is shaped, and how it composes. Drives a TimelineEffect or a Transition.
TimelineEffect
An effect driven by a Timeline.
TimerNode
A node that emits onTrigger every interval seconds.
Transition
Describes a navigation between two routes.
Vector2
Vector3
VelocityEffect
An effect that moves a PositionOwner by velocity, every tick, forever.
WaitTimeline
Holds progress at 1 for duration, without moving it. Used as a generic mid-sequence pause.
WipeTransition
A hard-edged panel sweeps in from the leading edge to full cover, trades the sides, then exits the trailing edge.
ZigzagCurve
Oscillates as a triangle wave between -1 and 1, completing one full cycle as t runs from 0 to 1.

Enums

DebugMode
What the debug overlay draws, one wireframe at a time.
HitBehavior
Governs whether an InputNode blocks nodes behind it once it claims an event, or lets the search continue regardless.
InputResult
Whether an InputNode claimed an event routed to it.
ShapeInheritance
What a SpatialNode's shape falls back to when it states none.

Mixins

Live
Re-runs a node's Node.build on every reload, and grants keep.

Extension Types

Activity
What a node takes part in, as bits: ticking, rendering, and hearing input.
Anchor
Represents a relative position inside some 2D object with a rectangular size or bounding box.

Extensions

AxisToVector2 on Axis
AxisVector2 on Vector2
BuiltInFilters on Loader
Mount on T
Mounts a node as the root of a new Scene.
NearestSpatialNode on Iterable<T>
OffsetToVector2 on Offset
SizeToVector2 on Size

Typedefs

Cleanup = void Function()
Call to undo whatever was set up.
ControlHandler = void Function(ControlEvent event)
Responds to an event a device emitted.
DebugDraw = void Function(Canvas canvas)
Paints a node's debug overlay, in the same space as a Draw.
Draw = void Function(Canvas canvas)
Paints a node to the canvas, in its own coordinate space.
Painter = void Function(Canvas canvas, Paint paint)
Paints one of a Palette's entries to the canvas.
Tick = void Function(double dt)
Advances a node by the seconds elapsed since the last frame.