Struct pax_std::core::frame::FrameInstance
source · pub struct FrameInstance { /* private fields */ }Trait Implementations§
source§impl InstanceNode for FrameInstance
impl InstanceNode for FrameInstance
fn instantiate(args: InstantiationArgs) -> Rc<Self>where
Self: Sized,
source§fn update(
self: Rc<Self>,
expanded_node: &Rc<ExpandedNode>,
_context: &Rc<RuntimeContext>,
)
fn update( self: Rc<Self>, expanded_node: &Rc<ExpandedNode>, _context: &Rc<RuntimeContext>, )
Updates the expanded node, recomputing its properties and possibly updating its children
source§fn handle_pre_render(
&self,
expanded_node: &ExpandedNode,
_context: &Rc<RuntimeContext>,
rcs: &mut dyn RenderContext,
)
fn handle_pre_render( &self, expanded_node: &ExpandedNode, _context: &Rc<RuntimeContext>, rcs: &mut dyn RenderContext, )
Second lifecycle method during each render loop, occurs after
properties have been computed, but before rendering
Example use-case: perform side-effects to the drawing contexts.
This is how [
Frame] performs clipping, for example.
Occurs in a pre-order traversal of the render tree.source§fn handle_post_render(
&self,
expanded_node: &ExpandedNode,
_context: &Rc<RuntimeContext>,
rcs: &mut dyn RenderContext,
)
fn handle_post_render( &self, expanded_node: &ExpandedNode, _context: &Rc<RuntimeContext>, rcs: &mut dyn RenderContext, )
Fourth and final lifecycle method during each render loop, occurs
after all descendents have been rendered AND the current node has been rendered.
Useful for clean-up, e.g. this is where
Frame cleans up the drawing contexts
to stop clipping.
Occurs in a post-order traversal of the render tree.source§fn handle_mount(
self: Rc<Self>,
expanded_node: &Rc<ExpandedNode>,
context: &Rc<RuntimeContext>,
)
fn handle_mount( self: Rc<Self>, expanded_node: &Rc<ExpandedNode>, context: &Rc<RuntimeContext>, )
Fires during the tick when a node is first attached to the render tree. For example,
this event fires by all nodes on the global first tick, and by all nodes in a subtree
when a
Conditional subsequently turns on a subtree (i.e. when the Conditionals criterion becomes true after being false through the end of at least 1 frame.)
A use-case: send a message to native renderers that a Text element should be rendered and trackedsource§fn handle_unmount(
&self,
expanded_node: &Rc<ExpandedNode>,
context: &Rc<RuntimeContext>,
)
fn handle_unmount( &self, expanded_node: &Rc<ExpandedNode>, context: &Rc<RuntimeContext>, )
Fires during element unmount, when an element is about to be removed from the render tree (e.g. by a
Conditional)
A use-case: send a message to native renderers that a Text element should be removedfn resolve_debug( &self, f: &mut Formatter<'_>, expanded_node: Option<&ExpandedNode>, ) -> Result
source§fn base(&self) -> &BaseInstance
fn base(&self) -> &BaseInstance
Retrieves the base instance, containing common functionality that all instances share
source§fn clips_content(&self, expanded_node: &ExpandedNode) -> bool
fn clips_content(&self, expanded_node: &ExpandedNode) -> bool
Used by frame to control content clipping
source§fn render(
&self,
expanded_node: &ExpandedNode,
context: &Rc<RuntimeContext>,
rcs: &mut dyn RenderContext,
)
fn render( &self, expanded_node: &ExpandedNode, context: &Rc<RuntimeContext>, rcs: &mut dyn RenderContext, )
Third lifecycle method during each render loop, occurs
after all descendents have been rendered.
Occurs in a post-order traversal of the render tree. Most primitives
are expected to draw their contents to the rendering context during this event.
source§fn handle_scroll(&self, args_scroll: Scroll)
fn handle_scroll(&self, args_scroll: Scroll)
Invoked by event interrupts to pass scroll information to render node
fn get_template(&self) -> Option<&RefCell<Vec<Rc<dyn InstanceNode>>>>
fn handle_native_interrupt( &self, _expanded_node: &Rc<ExpandedNode>, _interrupt: &NativeInterrupt, )
Auto Trait Implementations§
impl !Freeze for FrameInstance
impl !RefUnwindSafe for FrameInstance
impl !Send for FrameInstance
impl !Sync for FrameInstance
impl Unpin for FrameInstance
impl !UnwindSafe for FrameInstance
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
source§impl<T, U> RoundInto<U> for Twhere
U: RoundFrom<T>,
impl<T, U> RoundInto<U> for Twhere
U: RoundFrom<T>,
source§fn round_into(self) -> U
fn round_into(self) -> U
Performs the conversion.