Generic mixin for render objects with a list of children.
Provides a child model for a render object subclass that has a doubly-linked list of children.
- Implements
-
- RenderObject
Constructors
Properties
- childCount → int
-
The number of children.
read-only - firstChild → ChildType
-
The first child in the child list.
read-only - lastChild → ChildType
-
The last child in the child list.
read-only - alwaysNeedsCompositing → bool
-
Whether this render object always needs compositing.
read-only, inherited - attached → bool
-
Whether this node is in a tree whose root is attached to something.
read-only, inherited - constraints → Constraints
-
The layout constraints most recently supplied by the parent.
read-only, inherited - debugCanParentUseSize → bool
-
Whether the parent render object is permitted to use this render object's size.
read-only, inherited - debugCreator → dynamic
-
The object responsible for creating this render object.
read / write, inherited - debugDoingThisLayout → bool
-
Whether
performLayout
for this render object is currently running.read-only, inherited - debugDoingThisPaint → bool
-
Whether
paint
for this render object is currently running.read-only, inherited - debugDoingThisResize → bool
-
Whether
performResize
for this render object is currently running.read-only, inherited - debugSemantics → SemanticsNode
-
The semantics of this render object.
read-only, inherited - depth → int
-
The depth of this node in the tree.
read-only, inherited - hashCode → int
-
Get a hash code for this object.
read-only, inherited - isRepaintBoundary → bool
-
Whether this render object repaints separately from its parent.
read-only, inherited - isSemanticBoundary → bool
-
Whether this RenderObject introduces a new box for accessibility purposes.
read-only, inherited - layer → OffsetLayer
-
The compositing layer that this render object uses to repaint.
read-only, inherited - needsCompositing → bool
-
Whether we or one of our descendants has a compositing layer.
read-only, inherited - needsLayout → bool
-
Whether this render object's layout information is dirty.
read-only, inherited - owner → PipelineOwner
-
read-only, inherited
- paintBounds → Rect
-
The bounds within which this render object will paint.
read-only, inherited - parent → AbstractNode
-
The parent of this node in the tree.
read-only, inherited - parentData → ParentData
-
Data for use by the parent render object.
read / write, inherited - runtimeType → Type
-
A representation of the runtime type of the object.
read-only, inherited - semanticBounds → Rect
-
The bounding box, in the local coordinate system, of this object, for accessibility purposes.
read-only, inherited - semanticsAnnotator → SemanticsAnnotator
-
Returns a function that will annotate a
SemanticsNode
with the semantics of thisRenderObject
.read-only, inherited - sizedByParent → bool
-
Whether the constraints are the only input to the sizing algorithm (in particular, child nodes have no impact).
read-only, inherited
Operators
-
operator ==(
other) → bool -
The equality operator.
inherited
Methods
-
add(
ChildType child) → void -
Append child to the end of this render object's child list.
-
addAll(
List<ChildType> children) → void -
Add all the children to the end of this render object's child list.
-
attach(
PipelineOwner owner) → void -
Mark this node as attached to the given owner.
-
childAfter(
ChildType child) → ChildType -
The next child after the given child in the child list.
-
childBefore(
ChildType child) → ChildType -
The previous child before the given child in the child list.
-
debugDescribeChildren(
String prefix) → String -
Returns a string describing the current node's descendants. Each line of the subtree in the output should be indented by the prefix argument.
-
detach(
) → void -
Mark this node as detached.
-
insert(
ChildType child, { ChildType after }) → void -
Insert child into this render object's child list after the given child.
-
move(
ChildType child, { ChildType after }) → void -
Move this child in the child list to be before the given child.
-
redepthChildren(
) → void -
Adjust the
depth
of this node's children, if any. -
remove(
ChildType child) → void -
Remove this child from the child list.
-
removeAll(
) → void -
Remove all their children from this render object's child list.
-
visitChildren(
RenderObjectVisitor visitor) → void -
Calls visitor for each immediate child of this render object.
-
adoptChild(
RenderObject child) → void -
Called by subclasses when they decide a render object is a child.
inherited -
applyPaintTransform(
RenderObject child, Matrix4 transform) → void -
Applies the transform that would be applied when painting the given child to the given matrix.
inherited -
clearSemantics(
) → void -
Removes all semantics from this render object and its descendants.
inherited -
debugAssertDoesMeetConstraints(
) → void -
Verify that the object's constraints are being met. Override this function in a subclass to verify that your state matches the constraints object. This function is only called in checked mode and only when needsLayout is false. If the constraints are not met, it should assert or throw an exception.
inherited -
debugFillDescription(
List<String> description) → void -
Accumulates a list of strings describing the current node's fields, one field per string. Subclasses should override this to have their information included in toStringDeep.
inherited -
debugPaint(
PaintingContext context, Offset offset) → void -
Override this method to paint debugging information.
inherited -
debugRegisterRepaintBoundaryPaint(
{bool includedParent: true, bool includedChild: false }) → void -
Called, in checked mode, if isRepaintBoundary is true, when either the this render object or its parent attempt to paint.
inherited -
debugResetSize(
) → void -
If a subclass has a "size" (the state controlled by
parentUsesSize
, whatever it is in the subclass, e.g. the actualsize
property of RenderBox), and the subclass verifies that in checked mode this "size" property isn't used when debugCanParentUseSize isn't set, then that subclass should override debugResetSize to reapply the current values of debugCanParentUseSize to that state.inherited -
describeApproximatePaintClip(
RenderObject child) → Rect -
Returns a rect in this object's coordinate system that describes the approximate bounding box of the clip rect that would be applied to the given child during the paint phase, if any.
inherited -
dropChild(
RenderObject child) → void -
Called by subclasses when they decide a render object is no longer a child.
inherited -
handleEvent(
PointerEvent event, HitTestEntry entry) → void -
Override this method to handle pointer events that hit this render object.
inherited -
invokeLayoutCallback(
LayoutCallback callback) → void -
Allows mutations to be made to this object's child list (and any descendants) as well as to any other dirty nodes in the render tree owned by the same PipelineOwner as this object. The
callback
argument is invoked synchronously, and the mutations are allowed only during that callback's execution.inherited -
layout(
Constraints constraints, { bool parentUsesSize: false }) → void -
Compute the layout for this render object.
inherited -
markNeedsCompositingBitsUpdate(
) → void -
Mark the compositing state for this render object as dirty.
inherited -
markNeedsLayout(
) → void -
Mark this render object's layout information as dirty, and either register this object with its PipelineOwner, or defer to the parent, depending on whether this object is a relayout boundary or not respectively.
inherited -
markNeedsPaint(
) → void -
Mark this render object as having changed its visual appearance.
inherited -
markNeedsSemanticsUpdate(
{bool onlyChanges: false, bool noGeometry: false }) → void -
Mark this node as needing an update to its semantics description.
inherited -
markParentNeedsLayout(
) → void -
Mark this render object's layout information as dirty, and then defer to the parent.
inherited -
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a non-existent method or property is accessed.
inherited -
paint(
PaintingContext context, Offset offset) → void -
Paint this render object into the given context at the given offset.
inherited -
performLayout(
) → void -
Do the work of computing the layout for this render object.
inherited -
performResize(
) → void -
Updates the render objects size using only the constraints.
inherited -
reassemble(
) → void -
Cause the entire subtree rooted at the given RenderObject to be marked dirty for layout, paint, etc. This is called by the RendererBinding in response to the
ext.flutter.reassemble
hook, which is used by development tools when the application code has changed, to cause the widget tree to pick up any changed implementations.inherited -
redepthChild(
AbstractNode child) → void -
Adjust the depth of the given
child
to be greated than this node's own depth.inherited -
replaceRootLayer(
OffsetLayer rootLayer) → void -
Replace the layer. This is only valid for the root of a render object subtree (whatever object scheduleInitialPaint was called on).
inherited -
rotate(
{int oldAngle, int newAngle, Duration time }) → void -
Rotate this render object (not yet implemented).
inherited -
scheduleInitialLayout(
) → void -
Bootstrap the rendering pipeline by scheduling the very first layout.
inherited -
scheduleInitialPaint(
ContainerLayer rootLayer) → void -
Bootstrap the rendering pipeline by scheduling the very first paint.
inherited -
scheduleInitialSemantics(
) → void -
Bootstrap the semantics reporting mechanism by marking this node as needing a semantics update.
inherited -
setupParentData(
RenderObject child) → void -
Override to setup parent data correctly for your children.
inherited -
toString(
) → String -
Returns a string representation of this object.
inherited -
toStringDeep(
[String prefixLineOne = '', String prefixOtherLines = '' ]) → String -
Returns a description of the tree rooted at this node. If the prefix argument is provided, then every line in the output will be prefixed by that string.
inherited -
toStringShallow(
) → String -
Returns a one-line detailed description of the render object. This description is often somewhat long.
inherited -
visitChildrenForSemantics(
RenderObjectVisitor visitor) → void -
Called when collecting the semantics of this node. Subclasses that have children that are not semantically relevant (e.g. because they are invisible) should skip those children here.
inherited