PaintCanvas class

A widget for creating a canvas for paint on images.

This widget allows you to create a canvas for paint on images loaded from various sources, including network URLs, asset paths, files, or memory (Uint8List). It provides customization options for appearance and behavior.

Inheritance

Constructors

PaintCanvas.new({Key? key, required VoidCallback onRefresh, required dynamic onCreated(PaintedModel item), required ValueChanged<List<String>> onRemoveLayer, required dynamic onRemovePartialStart(), required dynamic onRemovePartialEnd(bool hasRemovedAreas), required dynamic onTap(TapDownDetails details), required Size drawAreaSize, required Size editorBodySize, required PaintController paintCtrl, required PaintEditorConfigs paintEditorConfigs, required List<Layer> layers, required double layerStackScaleFactor, required EraserMode eraserMode, required double eraserRadius})
Constructs a PaintCanvas widget.
const

Properties

drawAreaSize Size
Size of the image.
final
editorBodySize Size
Size of the paint editor body.
final
eraserMode EraserMode
The current eraser mode used in the paint canvas.
final
eraserRadius double
The radius of the eraser tool in logical pixels.
final
hashCode int
The hash code for this object.
no setterinherited
key Key?
Controls how one widget replaces another widget in the tree.
finalinherited
layers List<Layer>
A list of layers that make up the paint canvas.
final
layerStackScaleFactor double
The scale factor applied to the layer stack, used to adjust the size of the canvas layers relative to their original dimensions.
final
onCreated → dynamic Function(PaintedModel item)
Callback function when the active paint is done.
final
onRefresh VoidCallback
Callback to refresh the current state or view.
final
onRemoveLayer ValueChanged<List<String>>
Callback invoked when layers are removed.
final
onRemovePartialEnd → dynamic Function(bool hasRemovedAreas)
Callback triggered when the user finishes a partial erase action.
final
onRemovePartialStart → dynamic Function()
Callback triggered when the user begins a partial erase action.
final
onTap → dynamic Function(TapDownDetails details)
Callback function that is triggered when a tap down event occurs on the canvas.
final
paintCtrl PaintController
The PaintController class is responsible for managing and controlling the paint state.
final
paintEditorConfigs PaintEditorConfigs
Configuration settings for the paint editor. This field holds an instance of PaintEditorConfigs which contains various settings and options used to customize the behavior and appearance of the paint editor.
final
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() PaintCanvasState
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.
inherited
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 short, textual description of this widget.
inherited

Operators

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