ClipPathModifier class

A widget that clips its child using a path.

Calls a callback on a delegate whenever the widget is to be painted. The callback returns a path and the widget prevents the child from painting outside the path.

Clipping to a path is expensive. Certain shapes have more optimized widgets:

  • To clip to a rectangle, consider ClipRect.
  • To clip to an oval or circle, consider ClipOval.
  • To clip to a rounded rectangle, consider ClipRRect.

To clip to a particular ShapeBorder, consider using either the ClipPath.shape static method or the ShapeBorderClipper custom clipper class.

Inheritance
Available extensions

Constructors

ClipPathModifier({Key? key, Widget? child, Key? modifierKey, CustomClipper<Path>? clipper, Clip clipBehavior = Clip.antiAlias})
Creates a path clip.
const

Properties

clipBehavior → Clip
Controls how to clip.
final
clipper → CustomClipper<Path>?
If non-null, determines which clip to use.
final
hashCode → int
The hash code for this object.
no setterinherited
key → Key?
Controls how one widget replaces another widget in the tree.
finalinherited
modifierKey → Key?
The actual key of the widget, which Modifier wrapped
finalinherited
runtimeType → Type
A representation of the runtime type of the object.
no setterinherited

Methods

build(BuildContext context) → Widget
Describes the part of the user interface represented by this widget.
inherited
buildWithChild(BuildContext context, Widget? child) → Widget
A build method that receives an extra child parameter.
override
createElement() → SingleChildStatelessElement
Create a SingleChildStatelessElement
inherited
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
modified() → Modifier

Available on Widget, provided by the ModifierTransformer extension

Transform normal widget to Modifier
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

Static Methods

shape({Key? key, required ShapeBorder shape, Clip clipBehavior = Clip.antiAlias}) → SingleChildModifier
Creates a shape clip.