Roll class

A widget that provides shared gradient and animation properties to descendant Foil widgets.

The Roll widget acts as a coordinator for multiple Foil instances, allowing them to share a common gradient and animation characteristics. This creates a cohesive visual effect across multiple elements.

A Roll can provide:

  1. A shared gradient that descendant Foil widgets can use
  2. Animation parameters through crinkle that affect how foil effects animate

In the future, this widget will also support creating a single gradient sheet that spans the entire Roll area, with descendant Foils using portions of that shared gradient.

animated by Roll.crinkle

Inheritance
Mixed-in types

Constructors

Roll({Key? key, Gradient? gradient, Crinkle crinkle = Crinkle.smooth, Widget? child})
Creates a Roll that can provide gradient and animation properties to descendant Foil widgets.
const

Properties

child → Widget?
The widget below this widget in the tree.
final
crinkle → Crinkle
Animation properties for descendant Foil widgets.
final
gradient → Gradient?
The gradient to share with descendant Foil widgets.
final
hashCode → int
The hash code for this object.
no setterinherited
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

createElement() → StatefulElement
Creates a StatefulElement to manage this widget's location in the tree.
inherited
createState() → RollState
Creates the mutable state for this widget at a given location in the tree.
override
debugDescribeChildren() → List<DiagnosticsNode>
Returns a list of DiagnosticsNode objects describing this node's children.
inherited
debugFillProperties(DiagnosticPropertiesBuilder properties) → void
Add additional properties associated with the node.
override
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
toDiagnosticsNode({String? name, DiagnosticsTreeStyle? style}) → DiagnosticsNode
Returns a debug representation of the object that is used by debugging tools and by DiagnosticsNode.toStringDeep.
inherited
toString({DiagnosticLevel minLevel = DiagnosticLevel.info}) → String
A string representation of this object.
inherited
toStringDeep({String prefixLineOne = '', String? prefixOtherLines, DiagnosticLevel minLevel = DiagnosticLevel.debug, int wrapWidth = 65}) → String
Returns a string representation of this node and its descendants.
inherited
toStringShallow({String joiner = ', ', DiagnosticLevel minLevel = DiagnosticLevel.debug}) → String
Returns a one-line detailed description of the object.
inherited
toStringShort() → String
A brief description of this object, usually just the runtimeType and the hashCode.
inherited

Operators

operator ==(Object other) → bool
The equality operator.
inherited

Static Methods

of(BuildContext context) → RollState?
Finds and returns the nearest ancestor RollState in the widget tree.