Skip to main content

Popover

Struct Popover 

Source
pub struct Popover<A, C> { /* private fields */ }
Expand description

Floating content anchored to a view, open while open is true. Clicking outside or pressing Escape closes it. It opens below the view on a panel, unless told otherwise.

use ravenrs_reactive::State;
use ravenrs_widgets::{Button, Placement, Popover, Text, Ui};

let open = State::new(true);
let popover = Popover::new(open.binding(), Button::new("Refused"), Text::new("Two files"))
    .placement(Placement::Above)
    .surface(false);
let mut ui = Ui::new(popover, ravenrs_style::Theme::raven_dark());
ui.update();

Implementations§

Source§

impl<A: View, C: View> Popover<A, C>

Source

pub fn new(open: Binding<bool>, anchor: A, content: C) -> Self

Shows content below anchor while open is true.

Source

pub fn placement(self, placement: Placement) -> Self

Where it opens relative to the anchor (Placement::Below by default).

Source

pub fn surface(self, surface: bool) -> Self

Whether the content sits on the floating panel (it does by default). Without it, the content draws its own surface and takes only the room it needs.

Source

pub fn padding(self, padding: f32) -> Self

The space between the panel and the content, in logical pixels (16 by default).

Source

pub fn min_width(self, width: f32) -> Self

The narrowest the panel gets, in logical pixels (220 by default).

Trait Implementations§

Source§

impl<A, C> Debug for Popover<A, C>

Source§

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

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

impl<A: View, C: View> View for Popover<A, C>

Source§

fn build(&self, cx: &mut BuildCx<'_>) -> NodeId

Creates this view’s node for the current build.
Source§

fn type_name(&self) -> &'static str

The name the diagnostics panel shows this view’s cost under.

Auto Trait Implementations§

§

impl<A, C> !RefUnwindSafe for Popover<A, C>

§

impl<A, C> !Send for Popover<A, C>

§

impl<A, C> !Sync for Popover<A, C>

§

impl<A, C> !UnwindSafe for Popover<A, C>

§

impl<A, C> Freeze for Popover<A, C>
where A: Freeze, C: Freeze,

§

impl<A, C> Unpin for Popover<A, C>
where A: Unpin, C: Unpin,

§

impl<A, C> UnsafeUnpin for Popover<A, C>
where A: UnsafeUnpin, C: UnsafeUnpin,

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> ErasedDestructor for T
where T: 'static,

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, 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<V> ViewExt for V
where V: View,

Source§

fn padding(self, padding: impl Into<Insets>) -> Styled<Self>

Adds padding inside the box, in logical pixels.
Source§

fn background(self, fill: impl Into<Fill>) -> Styled<Self>

Paints a background behind the content.
Source§

fn frame(self, width: Option<f32>, height: Option<f32>) -> Styled<Self>

Fixes the width and/or height in logical pixels; None keeps the content size.
Source§

fn width(self, width: f32) -> Styled<Self>

Fixes the width in logical pixels.
Source§

fn height(self, height: f32) -> Styled<Self>

Fixes the height in logical pixels.
Source§

fn grow(self, grow: f32) -> Styled<Self>

Takes a share of the free space in the parent stack.
Source§

fn stretch(self) -> Styled<Self>

Stretches across the parent stack’s cross axis.
Source§

fn centered(self) -> Styled<Self>

Centers the content inside the box.
Source§

fn tooltip(self, text: impl Into<String>) -> Tooltip<Self>

Shows text above the view while the pointer is over it; see Tooltip.
Source§

fn opacity(self, opacity: f32) -> Faded<Self>

Draws the view and everything in it at this opacity, from 0.0 to 1.0, easing to it when it changes. Layout and input stay as they are; see Faded.
§

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