Struct zng::container::Container

source ·
pub struct Container(/* private fields */);
Expand description

W Base container.

Implementations§

source§

impl Container

source

pub fn widget_new() -> Container

Start building a new instance.

source

pub fn widget_type() -> WidgetType

Gets the widget type info.

source§

impl Container

source

pub fn clip_to_bounds(&self, clip: impl IntoVar<bool>)

P Content overflow clipping.

source§

impl Container

source

pub fn child(&self, child: impl UiNode)

P The widget’s child.

Can be any type that implements UiNode, any widget.

In Container! derived widgets or similar this property is captured and used as the actual child, in other widgets this property is an alias for child_under.

source§

impl Container

source

pub fn padding(&self, padding: impl IntoVar<SideOffsets>)

P Margin space around the content of a widget.

This property is margin with nest group CHILD_LAYOUT.

source§

impl Container

source

pub fn child_align(&self, alignment: impl IntoVar<Align>)

P Aligns the widget content within the available space.

This property is align with nest group CHILD_LAYOUT.

source§

impl Container

source

pub fn child_insert( &self, placement: impl IntoVar<ChildInsert>, node: impl UiNode, spacing: impl IntoVar<Length>, )

P Insert node in the placement relative to the widget’s child.

This property disables inline layout for the widget.

source§

impl Container

source

pub fn child_out_insert( &self, placement: impl IntoVar<ChildInsert>, node: impl UiNode, spacing: impl IntoVar<Length>, )

P Insert node in the placement relative to the widget’s child, outside of the child layout.

This is still inside the parent widget, but outside of properties like padding.

This property disables inline layout for the widget.

source§

impl Container

source

pub fn child_left(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the left of the widget’s child.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_right(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the right of the widget’s child.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_top(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node above the widget’s child.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_bottom(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node below the widget’s child.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_start(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the left of the widget’s child in LTR contexts or to the right in RTL contexts.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_end(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the right of the widget’s child in LTR contexts or to the right of the widget’s child in RTL contexts.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_over(&self, node: impl UiNode)

P Insert node over the widget’s child.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_under(&self, node: impl UiNode)

P Insert node under the widget’s child.

This property disables inline layout for the widget. See child_insert for more details.

source§

impl Container

source

pub fn child_out_left(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the left of the widget’s child, outside of the child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_right(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the right of the widget’s child, outside of the child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_top(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node above the widget’s child, outside of the child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_bottom(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node below the widget’s child, outside of the child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_start(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the left of the widget’s child in LTR contexts or to the right in RTL contexts, outside of the child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_end(&self, node: impl UiNode, spacing: impl IntoVar<Length>)

P Insert node to the right of the widget’s child in LTR contexts or to the right of the widget’s child in RTL contexts, outside of the child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_over(&self, node: impl UiNode)

P Insert node over the widget’s child, not affected by child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

source§

impl Container

source

pub fn child_out_under(&self, node: impl UiNode)

P Insert node under the widget’s child, not affected by child layout.

This property disables inline layout for the widget. See child_out_insert for more details.

Methods from Deref<Target = WidgetBase>§

source

pub fn widget_builder(&mut self) -> &mut WidgetBuilder

Returns a mutable reference to the widget builder.

source

pub fn widget_when(&mut self) -> Option<&mut WhenInfo>

Returns a mutable reference to the when block if called inside a when block.

source

pub fn widget_take(&mut self) -> WidgetBuilder

Takes the widget builder, finishing the widget macro build.

After this call trying to set a property using self will panic, the returned builder can still be manipulated directly.

source

pub fn widget_build(&mut self) -> impl UiNode

Build the widget.

After this call trying to set a property will panic.

source

pub fn widget_importance(&mut self) -> &mut Importance

Returns a mutable reference to the importance of the next property assigns, unsets or when blocks.

Note that during the widget_intrinsic call this is Importance::WIDGET and after it is Importance::INSTANCE.

source

pub fn start_when_block( &mut self, inputs: Box<[WhenInput]>, state: Box<dyn VarBoxed<bool>>, expr: &'static str, location: SourceLocation, )

Start building a when block, all properties set after this call are pushed in the when block.

source

pub fn end_when_block(&mut self)

End the current when block, all properties set after this call are pushed in the widget.

source

pub fn id(&self, id: impl IntoValue<WidgetId>)

c Unique ID of the widget instance.

Note that the id can convert from a &'static str unique name.

Trait Implementations§

source§

impl Deref for Container

source§

type Target = WidgetBase

The resulting type after dereferencing.
source§

fn deref(&self) -> &<Container as Deref>::Target

Dereferences the value.
source§

impl DerefMut for Container

source§

fn deref_mut(&mut self) -> &mut <Container as Deref>::Target

Mutably dereferences the value.

Auto Trait Implementations§

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
§

impl<T> Downcast for T
where T: Any,

§

fn into_any(self: Box<T>) -> Box<dyn Any>

Convert Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.
§

fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>

Convert Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be further downcast into Rc<ConcreteType> where ConcreteType implements Trait.
§

fn as_any(&self) -> &(dyn Any + 'static)

Convert &Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &Any’s vtable from &Trait’s.
§

fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)

Convert &mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot generate &mut Any’s vtable from &mut Trait’s.
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> Instrument for T

source§

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

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

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> Same for T

source§

type Output = T

Should always be Self
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.
§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

§

fn vzip(self) -> V

§

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> WithSubscriber for T

source§

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
source§

fn with_current_subscriber(self) -> WithDispatch<Self>

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

impl<T> ErasedDestructor for T
where T: 'static,

§

impl<T> MaybeSendSync for T