Struct zng::layer::AnchorMode

source ·
pub struct AnchorMode {
    pub transform: AnchorTransform,
    pub min_size: AnchorSize,
    pub max_size: AnchorSize,
    pub viewport_bound: bool,
    pub visibility: bool,
    pub interactivity: bool,
    pub corner_radius: bool,
}
Expand description

Defines what properties the layered widget takes from the anchor widget.

Fields§

§transform: AnchorTransform

What transforms are copied from the anchor widget and applied as a parent transform of the widget.

§min_size: AnchorSize

What size is copied from the anchor widget and used as the available and final min size of the widget.

§max_size: AnchorSize

What size is copied from the anchor widget and used as the available and final max size of the widget.

§viewport_bound: bool

After the transform and size are resolved the transform is adjusted so that the layered widget is fully visible in the window.

Has no effect if AnchorTransform::None.

§visibility: bool

If the widget is only layout if the anchor widget is not Collapsed and is only rendered if the anchor widget is rendered.

§interactivity: bool

The widget interactivity is set to the same as the anchor widget.

§corner_radius: bool

The widget’s corner radius is set for the layer.

If size is InnerBorder the corner radius are deflated to fit the inner curve of the borders.

Implementations§

source§

impl AnchorMode

source

pub fn window() -> AnchorMode

Mode where widget behaves like an unanchored widget, except that it is still only layout an rendered if the anchor widget exists in the same window.

source

pub fn foreground() -> AnchorMode

Mode where the widget behaves like a foreground to the target widget.

source

pub fn popup(place: AnchorOffset) -> AnchorMode

Mode where widget behaves like a flyout menu for the anchor.

source

pub fn tooltip() -> AnchorMode

Mode where the widget behaves like a tooltip anchored to the cursor.

source

pub fn tooltip_shortcut() -> AnchorMode

Mode where the widget behaves like a tooltip anchored to the widget.

source

pub fn context_menu() -> AnchorMode

Mode where the widget behaves like a context-menu anchored to the cursor.

source

pub fn context_menu_shortcut() -> AnchorMode

Mode where the widget behaves like a context-menu anchored to widget.

source

pub fn with_transform(self, transform: impl Into<AnchorTransform>) -> AnchorMode

Returns the mode with transform set.

source

pub fn with_min_size(self, size: impl Into<AnchorSize>) -> AnchorMode

Returns the mode with min_size set.

source

pub fn with_max_size(self, size: impl Into<AnchorSize>) -> AnchorMode

Returns the mode with max_size set.

source

pub fn with_size(self, size: impl Into<AnchorSize>) -> AnchorMode

Returns the mode with min_size and max_size set.

source

pub fn with_visibility(self, visibility: bool) -> AnchorMode

Returns the mode with visibility set.

source

pub fn with_interactivity(self, interactivity: bool) -> AnchorMode

Returns the mode with interactivity set.

source

pub fn with_corner_radius(self, corner_radius: bool) -> AnchorMode

Returns the mode with corner_radius set.

source

pub fn with_viewport_bound(self, viewport_bound: bool) -> AnchorMode

Returns the mode with viewport_bound set.

Trait Implementations§

source§

impl Clone for AnchorMode

source§

fn clone(&self) -> AnchorMode

Returns a copy of the value. Read more
1.0.0 · source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
source§

impl Debug for AnchorMode

source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result<(), Error>

Formats the value using the given formatter. Read more
source§

impl Default for AnchorMode

source§

fn default() -> AnchorMode

Transform InnerOffset top-left, size infinite, copy visibility and corner-radius.

source§

impl<'de> Deserialize<'de> for AnchorMode

source§

fn deserialize<__D>( __deserializer: __D, ) -> Result<AnchorMode, <__D as Deserializer<'de>>::Error>
where __D: Deserializer<'de>,

Deserialize this value from the given Serde deserializer. Read more
source§

impl<T, S> From<(T, S)> for AnchorMode

source§

fn from(_: (T, S)) -> AnchorMode

Custom transform and size, all else default.

source§

impl From<AnchorOffset> for AnchorMode

source§

fn from(inner_offset: AnchorOffset) -> AnchorMode

Transform InnerOffset, all else default.

source§

impl From<AnchorTransform> for AnchorMode

source§

fn from(transform: AnchorTransform) -> AnchorMode

Custom transform, all else default.

source§

impl<T, S> IntoVar<AnchorMode> for (T, S)

source§

fn into_var(self) -> <(T, S) as IntoVar<AnchorMode>>::Var

Custom transform and size, all else default.

source§

type Var = LocalVar<AnchorMode>

Variable type that will wrap the T value. Read more
source§

fn into_boxed_var(self) -> Box<dyn VarBoxed<T>>
where Self: Sized,

Converts into BoxedVar<T>. Read more
source§

impl IntoVar<AnchorMode> for AnchorOffset

source§

fn into_var(self) -> <AnchorOffset as IntoVar<AnchorMode>>::Var

Transform InnerOffset, all else default.

source§

type Var = LocalVar<AnchorMode>

Variable type that will wrap the T value. Read more
source§

fn into_boxed_var(self) -> Box<dyn VarBoxed<T>>
where Self: Sized,

Converts into BoxedVar<T>. Read more
source§

impl IntoVar<AnchorMode> for AnchorTransform

source§

fn into_var(self) -> <AnchorTransform as IntoVar<AnchorMode>>::Var

Custom transform, all else default.

source§

type Var = LocalVar<AnchorMode>

Variable type that will wrap the T value. Read more
source§

fn into_boxed_var(self) -> Box<dyn VarBoxed<T>>
where Self: Sized,

Converts into BoxedVar<T>. Read more
source§

impl PartialEq for AnchorMode

source§

fn eq(&self, other: &AnchorMode) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
source§

impl Serialize for AnchorMode

source§

fn serialize<__S>( &self, __serializer: __S, ) -> Result<<__S as Serializer>::Ok, <__S as Serializer>::Error>
where __S: Serializer,

Serialize this value into the given Serde serializer. Read more
source§

impl<T, S> IntoValue<AnchorMode> for (T, S)

source§

impl IntoValue<AnchorMode> for AnchorOffset

source§

impl IntoValue<AnchorMode> for AnchorTransform

source§

impl StructuralPartialEq for AnchorMode

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
§

impl<T> AnyEq for T
where T: Any + PartialEq,

§

fn equals(&self, other: &(dyn Any + 'static)) -> bool

§

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

source§

impl<T> AnyVarValue for T
where T: VarValue,

source§

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

Access to dyn Any methods.
source§

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

Access to mut dyn Any methods.
source§

fn clone_boxed(&self) -> Box<dyn AnyVarValue>

Clone the value.
source§

fn clone_boxed_var(&self) -> Box<dyn AnyVar>

Clone the value into a new boxed LocalVar<Self>.
source§

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

Access to Box<dyn Any> methods.
source§

fn eq_any(&self, other: &(dyn AnyVarValue + 'static)) -> bool

Gets if self equals other.
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> CloneToUninit for T
where T: Clone,

source§

unsafe fn clone_to_uninit(&self, dst: *mut T)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dst. 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.
§

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

§

fn into_any_arc(self: Arc<T>) -> Arc<dyn Any + Sync + Send>

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

impl<T> From<T> for T

source§

fn from(t: T) -> T

Returns the argument unchanged.

source§

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

source§

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

Access any.
§

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

impl<T> IntoVar<T> for T
where T: VarValue,

source§

type Var = LocalVar<T>

Variable type that will wrap the T value. Read more
source§

fn into_var(self) -> <T as IntoVar<T>>::Var

Converts the source value into a var.
source§

fn into_boxed_var(self) -> Box<dyn VarBoxed<T>>
where Self: Sized,

Converts into BoxedVar<T>. Read more
§

impl<T> NoneValue for T
where T: Default,

§

type NoneType = T

§

fn null_value() -> T

The none-equivalent value.
§

impl<T> NoneValue for T
where T: Default,

§

type NoneType = T

§

fn null_value() -> T

The none-equivalent value.
§

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<R, P> ReadPrimitive<R> for P
where R: Read + ReadEndian<P>, P: Default,

source§

fn read_from_little_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_little_endian().
source§

fn read_from_big_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_big_endian().
source§

fn read_from_native_endian(read: &mut R) -> Result<Self, Error>

Read this value from the supplied reader. Same as ReadEndian::read_from_native_endian().
source§

impl<T> Same for T

source§

type Output = T

Should always be Self
source§

impl<T> ToOwned for T
where T: Clone,

source§

type Owned = T

The resulting type after obtaining ownership.
source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. 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.
§

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

impl<T> ConfigValue for T

source§

impl<T> DeserializeOwned for T
where T: for<'de> Deserialize<'de>,

§

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

source§

impl<T> IntoValue<T> for T
where T: VarValue,

source§

impl<T> IpcValue for T
where T: Debug + Serialize + for<'d> Deserialize<'d> + Send + 'static,

§

impl<T> MaybeSendSync for T

source§

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

source§

impl<T> VarValue for T
where T: Debug + Clone + PartialEq + Any + Send + Sync,