pub struct RenderSliverToBoxAdapter { /* private fields */ }Expand description
A RenderSliver that contains a single crate::RenderBox.
The child will not be laid out if it is not visible. It is sized according to the child’s preferences in the main axis, and with a tight constraint forcing it to the dimensions of the viewport in the cross axis.
See also:
crate::RenderViewport, which allowsRenderSliverobjects to be placed inside acrate::RenderBox(the opposite of this class).
Implementations§
Source§impl RenderSliverToBoxAdapter
impl RenderSliverToBoxAdapter
Sourcepub fn new(
app: &mut App,
child: Option<AnyRenderBox>,
) -> RenderHandle<RenderSliverToBoxAdapter>
pub fn new( app: &mut App, child: Option<AnyRenderBox>, ) -> RenderHandle<RenderSliverToBoxAdapter>
Creates a RenderSliver that wraps a crate::RenderBox.
Trait Implementations§
Source§impl RenderObject for RenderSliverToBoxAdapter
impl RenderObject for RenderSliverToBoxAdapter
Source§fn render_object_data(self: RenderHandle<Self>, app: &App) -> &RenderObjectData
fn render_object_data(self: RenderHandle<Self>, app: &App) -> &RenderObjectData
Mixin field access.
Source§fn render_object_data_mut(
self: RenderHandle<Self>,
app: &mut App,
) -> &mut RenderObjectData
fn render_object_data_mut( self: RenderHandle<Self>, app: &mut App, ) -> &mut RenderObjectData
See
render_object_data.Source§fn setup_parent_data(
self: RenderHandle<Self>,
app: &mut App,
child: AnyRenderObject,
)
fn setup_parent_data( self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject, )
Sets up parent data for
child if it has none. Read moreSource§fn visit_children(
self: RenderHandle<Self>,
app: &App,
visitor: &mut dyn FnMut(AnyRenderObject),
)
fn visit_children( self: RenderHandle<Self>, app: &App, visitor: &mut dyn FnMut(AnyRenderObject), )
Calls
visitor for each immediate child.Source§fn apply_paint_transform(
self: RenderHandle<Self>,
app: &App,
child: AnyRenderObject,
transform: &mut Matrix4,
)
fn apply_paint_transform( self: RenderHandle<Self>, app: &App, child: AnyRenderObject, transform: &mut Matrix4, )
Applies the transform that would be applied when painting the given child to the
given matrix. Read more
Source§fn perform_layout(self: RenderHandle<Self>, app: &mut App)
fn perform_layout(self: RenderHandle<Self>, app: &mut App)
Do the work of computing the layout for this render object. Read more
Source§fn paint(
self: RenderHandle<Self>,
app: &mut App,
context: &mut PaintingContext,
offset: Offset,
)
fn paint( self: RenderHandle<Self>, app: &mut App, context: &mut PaintingContext, offset: Offset, )
Paint this render object into the given context at the given offset. Read more
Source§fn as_render_object(self: RenderHandle<Self>, app: &App) -> AnyRenderObject
fn as_render_object(self: RenderHandle<Self>, app: &App) -> AnyRenderObject
Dart’s implicit upcast of a concrete render object to
RenderObject: this object’s
type-erased handle, through the vtable the protocol recorded when it created it.Source§fn perform_resize(self: RenderHandle<Self>, _app: &mut App)
fn perform_resize(self: RenderHandle<Self>, _app: &mut App)
Updates the render object’s size using only the constraints. Read more
Source§fn did_attach(
self: RenderHandle<Self>,
app: &mut App,
owner: Handle<PipelineOwner>,
)
fn did_attach( self: RenderHandle<Self>, app: &mut App, owner: Handle<PipelineOwner>, )
The body of Flutter’s
attach override after super.attach(owner); the base body has
already run. The default attaches the children reported by
visit_children.Source§fn did_detach(self: RenderHandle<Self>, app: &mut App)
fn did_detach(self: RenderHandle<Self>, app: &mut App)
The body of Flutter’s
detach override after super.detach(). The default detaches
the children reported by visit_children.Source§fn redepth_children(self: RenderHandle<Self>, app: &mut App)
fn redepth_children(self: RenderHandle<Self>, app: &mut App)
Adjusts the depth of each child reported by
visit_children.Source§fn sized_by_parent(self: RenderHandle<Self>, _app: &App) -> bool
fn sized_by_parent(self: RenderHandle<Self>, _app: &App) -> bool
Whether the constraints are the only input to the sizing algorithm.
Source§fn is_repaint_boundary(self: RenderHandle<Self>, _app: &App) -> bool
fn is_repaint_boundary(self: RenderHandle<Self>, _app: &App) -> bool
Whether this render object repaints separately from its parent. Read more
Source§fn always_needs_compositing(self: RenderHandle<Self>, _app: &App) -> bool
fn always_needs_compositing(self: RenderHandle<Self>, _app: &App) -> bool
Whether this render object always needs compositing. Read more
Source§fn mouse_tracker_annotation(
self: RenderHandle<Self>,
_app: &App,
) -> Option<MouseTrackerAnnotation>
fn mouse_tracker_annotation( self: RenderHandle<Self>, _app: &App, ) -> Option<MouseTrackerAnnotation>
Dart’s
this is MouseTrackerAnnotation: the annotation this render object implements,
read live each time the mouse tracker consults it. None for a render object that is
not an annotation, which is the default.Source§fn update_composited_layer(
self: RenderHandle<Self>,
app: &mut App,
old_layer: Option<AnyOffsetLayer>,
) -> AnyOffsetLayer
fn update_composited_layer( self: RenderHandle<Self>, app: &mut App, old_layer: Option<AnyOffsetLayer>, ) -> AnyOffsetLayer
Update the composited layer owned by this render object. Read more
Source§fn show_on_screen(
self: RenderHandle<Self>,
app: &mut App,
descendant: Option<AnyRenderObject>,
rect: Option<Rect>,
duration: Duration,
curve: Rc<dyn Curve>,
)
fn show_on_screen( self: RenderHandle<Self>, app: &mut App, descendant: Option<AnyRenderObject>, rect: Option<Rect>, duration: Duration, curve: Rc<dyn Curve>, )
Attempt to make (a portion of) this or a descendant
RenderObject visible on screen. Read moreSource§impl RenderObjectWithChildMixin for RenderSliverToBoxAdapter
impl RenderObjectWithChildMixin for RenderSliverToBoxAdapter
Source§type ChildType = AnyRenderBox
type ChildType = AnyRenderBox
Flutter’s
ChildType: the protocol of this render object’s child.Source§fn child_data(
self: RenderHandle<Self>,
app: &App,
) -> &RenderObjectWithChildData<AnyRenderBox>
fn child_data( self: RenderHandle<Self>, app: &App, ) -> &RenderObjectWithChildData<AnyRenderBox>
Mixin field access.
Source§fn child_data_mut(
self: RenderHandle<Self>,
app: &mut App,
) -> &mut RenderObjectWithChildData<AnyRenderBox>
fn child_data_mut( self: RenderHandle<Self>, app: &mut App, ) -> &mut RenderObjectWithChildData<AnyRenderBox>
See
child_data.Source§impl RenderSliver for RenderSliverToBoxAdapter
impl RenderSliver for RenderSliverToBoxAdapter
Source§fn render_sliver_data(self: RenderHandle<Self>, app: &App) -> &RenderSliverData
fn render_sliver_data(self: RenderHandle<Self>, app: &App) -> &RenderSliverData
Mixin field access.
Source§fn render_sliver_data_mut(
self: RenderHandle<Self>,
app: &mut App,
) -> &mut RenderSliverData
fn render_sliver_data_mut( self: RenderHandle<Self>, app: &mut App, ) -> &mut RenderSliverData
See
render_sliver_data.Source§fn hit_test_children(
self: RenderHandle<Self>,
app: &mut App,
result: &mut SliverHitTestResult<'_>,
main_axis_position: f64,
cross_axis_position: f64,
) -> bool
fn hit_test_children( self: RenderHandle<Self>, app: &mut App, result: &mut SliverHitTestResult<'_>, main_axis_position: f64, cross_axis_position: f64, ) -> bool
Override this method to check whether any children are located at the given position. Read more
Source§fn child_main_axis_position(
self: RenderHandle<Self>,
app: &App,
child: AnyRenderObject,
) -> f64
fn child_main_axis_position( self: RenderHandle<Self>, app: &App, child: AnyRenderObject, ) -> f64
Returns the distance from the leading visible edge of the sliver to the side of the
given child closest to that edge. Read more
Source§fn constraints(self: RenderHandle<Self>, app: &App) -> SliverConstraints
fn constraints(self: RenderHandle<Self>, app: &App) -> SliverConstraints
The sliver constraints most recently supplied by the parent.
Source§fn geometry(self: RenderHandle<Self>, app: &App) -> SliverGeometry
fn geometry(self: RenderHandle<Self>, app: &App) -> SliverGeometry
The amount of space this sliver occupies.
Source§fn set_geometry(
self: RenderHandle<Self>,
app: &mut App,
geometry: SliverGeometry,
)
fn set_geometry( self: RenderHandle<Self>, app: &mut App, geometry: SliverGeometry, )
Sets the geometry of this sliver. Call from
RenderObject::perform_layout.Source§fn paint_bounds(self: RenderHandle<Self>, app: &App) -> Rect
fn paint_bounds(self: RenderHandle<Self>, app: &App) -> Rect
An estimate of the bounds within which this render object will paint: the paint extent
along the main axis by the cross axis extent.
Source§fn center_offset_adjustment(self: RenderHandle<Self>, _app: &App) -> f64
fn center_offset_adjustment(self: RenderHandle<Self>, _app: &App) -> f64
For a center sliver, the distance before the absolute zero scroll offset that this
sliver can cover. Read more
Source§fn hit_test(
self: RenderHandle<Self>,
app: &mut App,
result: &mut SliverHitTestResult<'_>,
main_axis_position: f64,
cross_axis_position: f64,
) -> bool
fn hit_test( self: RenderHandle<Self>, app: &mut App, result: &mut SliverHitTestResult<'_>, main_axis_position: f64, cross_axis_position: f64, ) -> bool
Determines the set of render objects located at the given position. Read more
Source§fn hit_test_self(
self: RenderHandle<Self>,
_app: &App,
_main_axis_position: f64,
_cross_axis_position: f64,
) -> bool
fn hit_test_self( self: RenderHandle<Self>, _app: &App, _main_axis_position: f64, _cross_axis_position: f64, ) -> bool
Override this method if this render object can be hit even if its children were not hit. Read more
Source§fn handle_event(
self: RenderHandle<Self>,
_app: &mut App,
_event: &PointerEvent,
_entry: &SliverHitTestEntry,
)
fn handle_event( self: RenderHandle<Self>, _app: &mut App, _event: &PointerEvent, _entry: &SliverHitTestEntry, )
Override to handle pointer events that hit this render object.
Source§fn calculate_paint_offset(
self: RenderHandle<Self>,
_app: &App,
constraints: SliverConstraints,
from: f64,
to: f64,
) -> f64
fn calculate_paint_offset( self: RenderHandle<Self>, _app: &App, constraints: SliverConstraints, from: f64, to: f64, ) -> f64
Computes the portion of the region from
from to to that is visible, assuming that
only the region from the SliverConstraints::scroll_offset that is
SliverConstraints::remaining_paint_extent high is visible, and that the relationship
between scroll offsets and paint offsets is linear. Read moreSource§fn calculate_cache_offset(
self: RenderHandle<Self>,
_app: &App,
constraints: SliverConstraints,
from: f64,
to: f64,
) -> f64
fn calculate_cache_offset( self: RenderHandle<Self>, _app: &App, constraints: SliverConstraints, from: f64, to: f64, ) -> f64
Computes the portion of the region from
from to to that is within the cache extent
of the viewport, assuming that only the region from the
SliverConstraints::cache_origin that is
SliverConstraints::remaining_cache_extent high is visible, and that the relationship
between scroll offsets and paint offsets is linear. Read moreSource§fn child_cross_axis_position(
self: RenderHandle<Self>,
_app: &App,
_child: AnyRenderObject,
) -> f64
fn child_cross_axis_position( self: RenderHandle<Self>, _app: &App, _child: AnyRenderObject, ) -> f64
Returns the distance along the cross axis from the zero of the cross axis in this
sliver’s paint coordinate space to the nearest side of the given child. Read more
Source§fn child_scroll_offset(
self: RenderHandle<Self>,
app: &App,
child: AnyRenderObject,
) -> Option<f64>
fn child_scroll_offset( self: RenderHandle<Self>, app: &App, child: AnyRenderObject, ) -> Option<f64>
Returns the scroll offset for the leading edge of the given child. Read more
Source§fn get_absolute_size_relative_to_origin(
self: RenderHandle<Self>,
app: &App,
) -> Size
fn get_absolute_size_relative_to_origin( self: RenderHandle<Self>, app: &App, ) -> Size
This returns a
Size with dimensions relative to the leading edge of the sliver,
specifically the same offset that is given to the RenderObject::paint method. This
means that the dimensions may be negative. Read moreSource§fn get_absolute_size(self: RenderHandle<Self>, app: &App) -> Size
fn get_absolute_size(self: RenderHandle<Self>, app: &App) -> Size
Source§fn get_max_paint_rect(self: RenderHandle<Self>, app: &App) -> Rect
fn get_max_paint_rect(self: RenderHandle<Self>, app: &App) -> Rect
Source§fn layout(
self: RenderHandle<Self>,
app: &mut App,
constraints: SliverConstraints,
parent_uses_size: bool,
)
fn layout( self: RenderHandle<Self>, app: &mut App, constraints: SliverConstraints, parent_uses_size: bool, )
Source§fn as_sliver(self: RenderHandle<Self>) -> AnyRenderSliver
fn as_sliver(self: RenderHandle<Self>) -> AnyRenderSliver
The type-erased
RenderSliver handle. Free: the vtable is a const, and the id is copied.Source§fn as_object(self: RenderHandle<Self>) -> AnyRenderObject
fn as_object(self: RenderHandle<Self>) -> AnyRenderObject
The type-erased
RenderObject handle, through as_sliver.Source§fn adopt_child(self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject)
fn adopt_child(self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject)
Source§fn drop_child(self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject)
fn drop_child(self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject)
Source§fn mark_needs_layout(self: RenderHandle<Self>, app: &mut App)
fn mark_needs_layout(self: RenderHandle<Self>, app: &mut App)
Source§fn mark_needs_paint(self: RenderHandle<Self>, app: &mut App)
fn mark_needs_paint(self: RenderHandle<Self>, app: &mut App)
Source§fn mark_needs_composited_layer_update(self: RenderHandle<Self>, app: &mut App)
fn mark_needs_composited_layer_update(self: RenderHandle<Self>, app: &mut App)
Source§fn schedule_initial_layout(self: RenderHandle<Self>, app: &mut App)
fn schedule_initial_layout(self: RenderHandle<Self>, app: &mut App)
Source§fn parent(self: RenderHandle<Self>, app: &App) -> Option<AnyRenderObject>
fn parent(self: RenderHandle<Self>, app: &App) -> Option<AnyRenderObject>
Source§fn owner(self: RenderHandle<Self>, app: &App) -> Option<Handle<PipelineOwner>>
fn owner(self: RenderHandle<Self>, app: &App) -> Option<Handle<PipelineOwner>>
Source§fn debug_needs_layout(self: RenderHandle<Self>, app: &App) -> bool
fn debug_needs_layout(self: RenderHandle<Self>, app: &App) -> bool
Source§impl RenderSliverHelpers for RenderSliverToBoxAdapter
impl RenderSliverHelpers for RenderSliverToBoxAdapter
Source§fn hit_test_box_child(
self: RenderHandle<Self>,
app: &mut App,
result: &mut BoxHitTestResult<'_>,
child: AnyRenderBox,
main_axis_position: f64,
cross_axis_position: f64,
) -> bool
fn hit_test_box_child( self: RenderHandle<Self>, app: &mut App, result: &mut BoxHitTestResult<'_>, child: AnyRenderBox, main_axis_position: f64, cross_axis_position: f64, ) -> bool
Utility function for
RenderSliver::hit_test_children for use when the children are
crate::RenderBox widgets. Read moreSource§fn apply_paint_transform_for_box_child(
self: RenderHandle<Self>,
app: &App,
child: AnyRenderBox,
transform: &mut Matrix4,
)
fn apply_paint_transform_for_box_child( self: RenderHandle<Self>, app: &App, child: AnyRenderBox, transform: &mut Matrix4, )
Utility function for
RenderObject::apply_paint_transform for use when the children
are crate::RenderBox widgets. Read moreSource§impl RenderSliverSingleBoxAdapter for RenderSliverToBoxAdapter
impl RenderSliverSingleBoxAdapter for RenderSliverToBoxAdapter
Source§fn setup_parent_data(
self: RenderHandle<Self>,
app: &mut App,
child: AnyRenderObject,
)
fn setup_parent_data( self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject, )
The body of Flutter’s
setupParentData override; call it from
RenderObject::setup_parent_data.Source§fn set_child_parent_data(
self: RenderHandle<Self>,
app: &mut App,
child: AnyRenderObject,
constraints: SliverConstraints,
geometry: SliverGeometry,
)
fn set_child_parent_data( self: RenderHandle<Self>, app: &mut App, child: AnyRenderObject, constraints: SliverConstraints, geometry: SliverGeometry, )
Sets the
SliverPhysicalParentData::paint_offset for the given child according to the
SliverConstraints::axis_direction and SliverConstraints::growth_direction and
the given geometry.Source§fn hit_test_children(
self: RenderHandle<Self>,
app: &mut App,
result: &mut SliverHitTestResult<'_>,
main_axis_position: f64,
cross_axis_position: f64,
) -> bool
fn hit_test_children( self: RenderHandle<Self>, app: &mut App, result: &mut SliverHitTestResult<'_>, main_axis_position: f64, cross_axis_position: f64, ) -> bool
The body of Flutter’s
hitTestChildren override.Source§fn child_main_axis_position(
self: RenderHandle<Self>,
app: &App,
child: AnyRenderObject,
) -> f64
fn child_main_axis_position( self: RenderHandle<Self>, app: &App, child: AnyRenderObject, ) -> f64
The body of Flutter’s
childMainAxisPosition override.Source§fn apply_paint_transform(
self: RenderHandle<Self>,
app: &App,
child: AnyRenderObject,
transform: &mut Matrix4,
)
fn apply_paint_transform( self: RenderHandle<Self>, app: &App, child: AnyRenderObject, transform: &mut Matrix4, )
The body of Flutter’s
applyPaintTransform override.Source§fn paint(
self: RenderHandle<Self>,
app: &mut App,
context: &mut PaintingContext,
offset: Offset,
)
fn paint( self: RenderHandle<Self>, app: &mut App, context: &mut PaintingContext, offset: Offset, )
The body of Flutter’s
paint override.Auto Trait Implementations§
impl !RefUnwindSafe for RenderSliverToBoxAdapter
impl !Send for RenderSliverToBoxAdapter
impl !Sync for RenderSliverToBoxAdapter
impl !UnwindSafe for RenderSliverToBoxAdapter
impl Freeze for RenderSliverToBoxAdapter
impl Unpin for RenderSliverToBoxAdapter
impl UnsafeUnpin for RenderSliverToBoxAdapter
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<T> RenderObjectBase for Twhere
T: RenderObject,
impl<T> RenderObjectBase for Twhere
T: RenderObject,
Source§fn dispose(self: RenderHandle<Self>, app: &mut App)
fn dispose(self: RenderHandle<Self>, app: &mut App)
Flutter’s
RenderObject.dispose body: releases the layer handle. An override calls it
last, where Dart writes super.dispose().Source§fn mark_needs_layout(self: RenderHandle<Self>, app: &mut App)
fn mark_needs_layout(self: RenderHandle<Self>, app: &mut App)
Flutter’s
RenderObject.markNeedsLayout body; an override calls it where Dart writes
super.markNeedsLayout().Source§fn show_on_screen(
self: RenderHandle<Self>,
app: &mut App,
descendant: Option<AnyRenderObject>,
rect: Option<Rect>,
duration: Duration,
curve: Rc<dyn Curve>,
)
fn show_on_screen( self: RenderHandle<Self>, app: &mut App, descendant: Option<AnyRenderObject>, rect: Option<Rect>, duration: Duration, curve: Rc<dyn Curve>, )
Flutter’s
RenderObject.showOnScreen.