LogoSignals.dart
Copy Markdown
rodydavis/signals.dart 999999

Type: SignalPainterWidget

API reference and details for SignalPainterWidget from signals.dart.

SignalPainterWidget#

Kind: class  |  Package: package:signals_flutter

Class: SignalPainterWidget#

A high-performance, leaf render-object widget driven by a double progress signal.

SignalPainterWidget bypasses the entire widget build and layout phases, subscribing directly to a progress signal and rendering on the canvas. When progress updates, only the GPU paint phase is run.

Example#

final progress = signal(0.0);

@override
Widget build(BuildContext context) {
  return SignalPainterWidget(
    progress: progress,
    painter: (canvas, size, value) {
      final paint = Paint()
        ..color = Colors.blue
        ..style = PaintingStyle.stroke
        ..strokeWidth = 4.0;
      canvas.drawCircle(
        Offset(size.width / 2, size.height / 2),
        value * 50.0,
        paint,
      );
    },
  );
}

Members of SignalPainterWidget#

Member Type Signature Description
progress field dart core.ReadonlySignal progress The progress signal whose value will be passed to painter.
painter field dart void Function(Canvas canvas, Size size, double value) painter The custom painting callback function.
SignalPainterWidget constructor dart SignalPainterWidget({super.key, required this.progress, required this.painter}) Creates a new SignalPainterWidget.
createRenderObject method dart RenderSignalBox createRenderObject(BuildContext context)
updateRenderObject method dart void updateRenderObject(BuildContext context, RenderSignalBox renderObject)

References#

The SignalPainterWidget type is referenced and used in the following pages: