zng_wgt_fill::node

Struct TiledLinearGradient

source
pub struct TiledLinearGradient<S, A, E, O, T, TS> { /* private fields */ }
Expand description

Tiled linear gradient.

Can be used as a node that fills the available space with the gradient tiles, or can continue building a tiled linear gradient.

Use LinearGradient::tile to build.

Implementations§

source§

impl<S, A, E, O, T, TS> TiledLinearGradient<S, A, E, O, T, TS>
where S: Var<GradientStops>, A: Var<LinearGradientAxis>, E: Var<ExtendMode>, O: Var<Point>, T: Var<Size>, TS: Var<Size>,

source

pub fn tile_spacing<TS2>( self, spacing: TS2, ) -> TiledLinearGradient<S, A, E, O, T, TS2::Var>
where TS2: IntoVar<Size>,

Set the space between tiles.

Relative values are resolved on the tile size, so setting this to 100.pct() will skip a tile.

Leftover values are resolved on the space taken by tiles that do not fully fit in the available space, so setting this to 1.lft() will cause the border tiles to always touch the full bounds and the middle filled with the maximum full tiles that fit or empty space.

source

pub fn tile_origin<O2>( self, origin: O2, ) -> TiledLinearGradient<S, A, E, O2::Var, T, TS>
where O2: IntoVar<Point>,

Sets the tile offset.

Relative values are resolved on the tile size, so setting this to 100.pct() will offset a full turn.

Trait Implementations§

source§

impl<S, A, E, O, T, TS> UiNode for TiledLinearGradient<S, A, E, O, T, TS>
where S: Var<GradientStops>, A: Var<LinearGradientAxis>, E: Var<ExtendMode>, O: Var<Point>, T: Var<Size>, TS: Var<Size>,

source§

fn init(&mut self)

Initializes the node in a new UI context. Read more
source§

fn update(&mut self, _: &WidgetUpdates)

Receives variable and other non-event updates. Read more
source§

fn measure(&mut self, _: &mut WidgetMeasure) -> PxSize

Computes the widget size given the contextual layout metrics without actually updating the widget layout. Read more
source§

fn layout(&mut self, _: &mut WidgetLayout) -> PxSize

Computes the widget layout given the contextual layout metrics. Read more
source§

fn render(&mut self, frame: &mut FrameBuilder)

Generates render instructions and updates transforms and hit-test areas. Read more
source§

fn info(&mut self, info: &mut WidgetInfoBuilder)

Builds widget info. Read more
source§

fn deinit(&mut self)

Deinitializes the node in the current UI context. Read more
source§

fn event(&mut self, update: &EventUpdate)

Receives an event. Read more
source§

fn render_update(&mut self, update: &mut FrameUpdate)

Updates values in the last generated frame. Read more
source§

fn boxed(self) -> Box<dyn UiNodeBoxed>
where Self: Sized,

Box this node or just returns self if it is already a BoxedUiNode.
source§

fn cfg_boxed(self) -> Box<dyn UiNodeBoxed>
where Self: Sized,

Helper for complying with the "dyn_node" feature, boxes the node or just returns it depending of the compile time feature.
source§

fn is_widget(&self) -> bool

Gets if this node represents a full widget, that is, it is the outer-most widget node and defines a widget context. Read more
source§

fn is_nil(&self) -> bool

Gets if this node does nothing and is layout collapsed. Read more
source§

fn with_context<R, F>( &mut self, update_mode: WidgetUpdateMode, f: F, ) -> Option<R>
where F: FnOnce() -> R,

Calls f with the WIDGET context of the node if it is_widget. Read more
source§

fn into_widget(self) -> Box<dyn UiNodeBoxed>
where Self: Sized,

Gets a BoxedUiNode that is a full widget. Read more
source§

fn init_widget( self, ) -> (Box<dyn UiNodeBoxed>, ReadOnlyVar<Response<WidgetId>, ArcVar<Response<WidgetId>>>)
where Self: Sized,

Gets a BoxedUiNode that already is a full widget or will be after init and a response var that already is the widget ID or will update once after init with the ID. Read more
source§

fn downcast_unbox<T>(self) -> Result<T, Box<dyn UiNodeBoxed>>
where T: UiNode, Self: Sized,

Downcast to T, if self is T or self is a BoxedUiNode that is T.
source§

fn actual_type_id(&self) -> TypeId

Returns the type_id of the unboxed node.
source§

fn as_any(&self) -> &(dyn Any + 'static)
where Self: Sized,

Access to dyn Any methods.
source§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
where Self: Sized,

Access to mut dyn Any methods.
source§

fn trace<E, S>(self, enter_mtd: E) -> Box<dyn UiNodeBoxed>
where Self: Sized, E: FnMut(UiNodeOpMethod) -> S + Send + 'static,

Wraps the node in a node that, before delegating each method, calls a closure with the UiNodeOpMethod, the closure can return a span that is dropped after the method delegation. Read more
source§

fn op(&mut self, op: UiNodeOp<'_>)

Runs the UiNodeOp.

Auto Trait Implementations§

§

impl<S, A, E, O, T, TS> Freeze for TiledLinearGradient<S, A, E, O, T, TS>
where S: Freeze, A: Freeze, E: Freeze, O: Freeze, T: Freeze, TS: Freeze,

§

impl<S, A, E, O, T, TS> RefUnwindSafe for TiledLinearGradient<S, A, E, O, T, TS>

§

impl<S, A, E, O, T, TS> Send for TiledLinearGradient<S, A, E, O, T, TS>
where S: Send, A: Send, E: Send, O: Send, T: Send, TS: Send,

§

impl<S, A, E, O, T, TS> Sync for TiledLinearGradient<S, A, E, O, T, TS>
where S: Sync, A: Sync, E: Sync, O: Sync, T: Sync, TS: Sync,

§

impl<S, A, E, O, T, TS> Unpin for TiledLinearGradient<S, A, E, O, T, TS>
where S: Unpin, A: Unpin, E: Unpin, O: Unpin, T: Unpin, TS: Unpin,

§

impl<S, A, E, O, T, TS> UnwindSafe for TiledLinearGradient<S, A, E, O, T, TS>

Blanket Implementations§

source§

impl<T> Any for T
where T: 'static + ?Sized,

source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
source§

impl<T> Borrow<T> for T
where T: ?Sized,

source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
source§

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

§

impl<T> Instrument for T

§

fn instrument(self, span: Span) -> Instrumented<Self>

Instruments this type with the provided [Span], returning an Instrumented wrapper. Read more
§

fn in_current_span(self) -> Instrumented<Self>

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
source§

impl<T, U> Into<U> for T
where U: From<T>,

source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

source§

impl<T> IntoEither for T

source§

fn into_either(self, into_left: bool) -> Either<Self, Self>

Converts self into a Left variant of Either<Self, Self> if into_left is true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
source§

fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
where F: FnOnce(&Self) -> bool,

Converts self into a Left variant of Either<Self, Self> if into_left(&self) returns true. Converts self into a Right variant of Either<Self, Self> otherwise. Read more
§

impl<T> Pointable for T

§

const ALIGN: usize = _

The alignment of pointer.
§

type Init = T

The type for initializers.
§

unsafe fn init(init: <T as Pointable>::Init) -> usize

Initializes a with the given initializer. Read more
§

unsafe fn deref<'a>(ptr: usize) -> &'a T

Dereferences the given pointer. Read more
§

unsafe fn deref_mut<'a>(ptr: usize) -> &'a mut T

Mutably dereferences the given pointer. Read more
§

unsafe fn drop(ptr: usize)

Drops the object pointed to by the given pointer. Read more
source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

source§

type Error = Infallible

The type returned in the event of a conversion error.
source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
source§

impl<U> UpdatesTraceUiNodeExt for U
where U: UiNode,

source§

fn instrument<S>(self, tag: S) -> Box<dyn UiNodeBoxed>
where S: Into<String>,

Defines a custom span.
§

impl<T> WithSubscriber for T

§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self>
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a [WithDispatch] wrapper. Read more
§

fn with_current_subscriber(self) -> WithDispatch<Self>

Attaches the current default Subscriber to this type, returning a [WithDispatch] wrapper. Read more
source§

impl<T> StateValue for T
where T: Any + Send + Sync,