SingleChildRenderObjectElement class
An Element that uses a SingleChildRenderObjectWidget as its configuration.
The child is optional.
This element subclass can be used for RenderObjectWidgets whose RenderObjects use the RenderObjectWithChildMixin mixin. Such widgets are expected to inherit from SingleChildRenderObjectWidget.
- Inheritance
-
- Object
- DiagnosticableTree
- Element
- RenderObjectElement
- SingleChildRenderObjectElement
Constructors
- SingleChildRenderObjectElement(SingleChildRenderObjectWidget widget)
- Creates an element that uses the given widget as its configuration.
Properties
- buildScope → BuildScope
-
A BuildScope whose dirty Elements can only be rebuilt by
BuildOwner.buildScope calls whose
context
argument is an Element within this BuildScope.no setterinherited - debugDoingBuild → bool
-
Whether the widget is currently updating the widget or render tree.
no setterinherited
- debugIsActive → bool
-
Returns true if the Element is active.
no setterinherited
- debugIsDefunct → bool
-
Returns true if the Element is defunct.
no setterinherited
- depth → int
-
An integer that is guaranteed to be greater than the parent's, if any.
The element at the root of the tree must have a depth greater than 0.
no setterinherited
- dirty → bool
-
Returns true if the element has been marked as needing rebuilding.
no setterinherited
- hashCode → int
-
The hash code for this object.
no setterinherited
- mounted → bool
-
Whether the Widget this context is associated with is currently
mounted in the widget tree.
no setterinherited
- owner → BuildOwner?
-
The object that manages the lifecycle of this element.
no setterinherited
- renderObject → RenderObject
-
The underlying RenderObject for this element.
no setterinherited
- renderObjectAttachingChild → Element?
-
Returns the child of this Element that will insert a RenderObject into
an ancestor of this Element to construct the render tree.
no setterinherited
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- size → Size?
-
The size of the RenderBox returned by findRenderObject.
no setterinherited
- slot → Object?
-
Information set by parent to define where this child fits in its parent's
child list.
no setterinherited
- widget → Widget
-
The configuration for this element.
no setterinherited
Methods
-
activate(
) → void -
Transition from the "inactive" to the "active" lifecycle state.
inherited
-
attachNotificationTree(
) → void -
Called in Element.mount and Element.activate to register this element in
the notification tree.
inherited
-
attachRenderObject(
Object? newSlot) → void -
Add renderObject to the render tree at the location specified by
newSlot
.inherited -
deactivate(
) → void -
Transition from the "active" to the "inactive" lifecycle state.
inherited
-
deactivateChild(
Element child) → void -
Move the given element to the list of inactive elements and detach its
render object from the render tree.
inherited
-
debugDeactivated(
) → void -
Called, in debug mode, after children have been deactivated (see deactivate).
inherited
-
debugDescribeChildren(
) → List< DiagnosticsNode> -
Returns a list of DiagnosticsNode objects describing this node's
children.
inherited
-
debugExpectsRenderObjectForSlot(
Object? slot) → bool -
Whether the child in the provided
slot
(or one of its descendants) must insert a RenderObject into its ancestor RenderObjectElement by calling RenderObjectElement.insertRenderObjectChild on it.inherited -
debugFillProperties(
DiagnosticPropertiesBuilder properties) → void -
Add additional properties associated with the node.
inherited
-
debugGetCreatorChain(
int limit) → String -
Returns a description of what caused this element to be created.
inherited
-
debugGetDiagnosticChain(
) → List< Element> -
Returns the parent chain from this element back to the root of the tree.
inherited
-
debugVisitOnstageChildren(
ElementVisitor visitor) → void -
Calls the argument for each child considered onstage.
inherited
-
dependOnInheritedElement(
InheritedElement ancestor, {Object? aspect}) → InheritedWidget -
Registers this build context with
ancestor
such that whenancestor
's widget changes this build context is rebuilt.inherited -
dependOnInheritedWidgetOfExactType<
T extends InheritedWidget> ({Object? aspect}) → T? -
Returns the nearest widget of the given type
T
and creates a dependency on it, or null if no appropriate widget is found.inherited -
describeElement(
String name, {DiagnosticsTreeStyle style = DiagnosticsTreeStyle.errorProperty}) → DiagnosticsNode -
Returns a description of the Element associated with the current build context.
inherited
-
describeMissingAncestor(
{required Type expectedAncestorType}) → List< DiagnosticsNode> -
Adds a description of a specific type of widget missing from the current
build context's ancestry tree.
inherited
-
describeOwnershipChain(
String name) → DiagnosticsNode -
Adds a description of the ownership chain from a specific Element
to the error report.
inherited
-
describeWidget(
String name, {DiagnosticsTreeStyle style = DiagnosticsTreeStyle.errorProperty}) → DiagnosticsNode -
Returns a description of the Widget associated with the current build context.
inherited
-
detachRenderObject(
) → void -
Remove renderObject from the render tree.
inherited
-
didChangeDependencies(
) → void -
Called when a dependency of this element changes.
inherited
-
dispatchNotification(
Notification notification) → void -
Start bubbling this notification at the given build context.
inherited
-
doesDependOnInheritedElement(
InheritedElement ancestor) → bool -
Returns
true
if dependOnInheritedElement was previously called withancestor
.inherited -
findAncestorRenderObjectOfType<
T extends RenderObject> () → T? -
Returns the RenderObject object of the nearest ancestor RenderObjectWidget widget
that is an instance of the given type
T
.inherited -
findAncestorStateOfType<
T extends State< (StatefulWidget> >) → T? -
Returns the State object of the nearest ancestor StatefulWidget widget
that is an instance of the given type
T
.inherited -
findAncestorWidgetOfExactType<
T extends Widget> () → T? -
Returns the nearest ancestor widget of the given type
T
, which must be the type of a concrete Widget subclass.inherited -
findRenderObject(
) → RenderObject? -
The current RenderObject for the widget. If the widget is a
RenderObjectWidget, this is the render object that the widget created
for itself. Otherwise, it is the render object of the first descendant
RenderObjectWidget.
inherited
-
findRootAncestorStateOfType<
T extends State< (StatefulWidget> >) → T? -
Returns the State object of the furthest ancestor StatefulWidget widget
that is an instance of the given type
T
.inherited -
forgetChild(
Element child) → void -
Remove the given child from the element's child list, in preparation for
the child being reused elsewhere in the element tree.
override
-
getElementForInheritedWidgetOfExactType<
T extends InheritedWidget> () → InheritedElement? -
Obtains the element corresponding to the nearest widget of the given type
T
, which must be the type of a concrete InheritedWidget subclass.inherited -
getInheritedWidgetOfExactType<
T extends InheritedWidget> () → T? -
Returns the nearest widget of the given InheritedWidget subclass
T
or null if an appropriate ancestor is not found.inherited -
inflateWidget(
Widget newWidget, Object? newSlot) → Element -
Create an element for the given widget and add it as a child of this
element in the given slot.
inherited
-
insertRenderObjectChild(
covariant RenderObject child, covariant Object? slot) → void -
Insert the given child into renderObject at the given slot.
override
-
markNeedsBuild(
) → void -
Marks the element as dirty and adds it to the global list of widgets to
rebuild in the next frame.
inherited
-
mount(
Element? parent, Object? newSlot) → void -
Add this element to the tree in the given slot of the given parent.
override
-
moveRenderObjectChild(
covariant RenderObject child, covariant Object? oldSlot, covariant Object? newSlot) → void -
Move the given child from the given old slot to the given new slot.
override
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
performRebuild(
) → void -
Cause the widget to update itself.
inherited
-
reassemble(
) → void -
Called whenever the application is reassembled during debugging, for
example during hot reload.
inherited
-
rebuild(
{bool force = false}) → void -
Cause the widget to update itself. In debug builds, also verify various
invariants.
inherited
-
removeRenderObjectChild(
covariant RenderObject child, covariant Object? slot) → void -
Remove the given child from renderObject.
override
-
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 element.
inherited
-
unmount(
) → void -
Transition from the "inactive" to the "defunct" lifecycle state.
inherited
-
update(
covariant SingleChildRenderObjectWidget newWidget) → void -
Change the widget used to configure this element.
override
-
updateChild(
Element? child, Widget? newWidget, Object? newSlot) → Element? -
Update the given child with the given new configuration.
inherited
-
updateChildren(
List< Element> oldChildren, List<Widget> newWidgets, {Set<Element> ? forgottenChildren, List<Object?> ? slots}) → List<Element> -
Updates the children of this element to use new widgets.
inherited
-
updateSlot(
Object? newSlot) → void -
Called by updateSlotForChild when the framework needs to change the slot
that this Element occupies in its ancestor.
inherited
-
updateSlotForChild(
Element child, Object? newSlot) → void -
Change the slot that the given child occupies in its parent.
inherited
-
visitAncestorElements(
ConditionalElementVisitor visitor) → void -
Walks the ancestor chain, starting with the parent of this build context's
widget, invoking the argument for each ancestor.
inherited
-
visitChildElements(
ElementVisitor visitor) → void -
Wrapper around visitChildren for BuildContext.
inherited
-
visitChildren(
ElementVisitor visitor) → void -
Calls the argument for each child. Must be overridden by subclasses that
support having children.
override
Operators
-
operator ==(
Object other) → bool -
Compare two widgets for equality.
inherited