pub struct CopyValue<Msg> { /* private fields */ }Expand description
A value on a raised surface that copies itself to the clipboard: an install command, a token, a URL.
Enter, Space or c while focused, or a click, copies the value, flashes the surface and
turns the trailing copy word into a success mark with copied that fades back after a
moment, so no toast is needed. The value is truncated with … when narrow; the marker always
stays visible. The copy goes to the terminal clipboard (OSC 52) and to the application’s
in-process clipboard.
Style keys: copy-value (bg, fg, padding) with hover, focus, pressed,
disabled; copy-value-marker (fg) with variant copied; copy-value-label (fg) for a
labelled value’s label and its whole value above a narrow box. Words come from
quvyta.copy-value.copy and quvyta.copy-value.copied.
Implementations§
Source§impl<Msg> CopyValue<Msg>
impl<Msg> CopyValue<Msg>
Sourcepub fn labelled(self, label: impl Into<String>) -> Self
pub fn labelled(self, label: impl Into<String>) -> Self
A faint label above the value, such as “Install command”. When the value does not fit
its box it is also written out whole above the box, wrapped, so it can be read while the
box keeps its one line; a masked value is never written out.
Sourcepub fn masked(self, masked: bool) -> Self
pub fn masked(self, masked: bool) -> Self
Draws the value as mask dots while still copying the real text, for secrets.
Trait Implementations§
Source§impl<Msg: Clone + 'static> Widget<Msg> for CopyValue<Msg>
impl<Msg: Clone + 'static> Widget<Msg> for CopyValue<Msg>
Source§fn measure(&self, cx: &mut MeasureCx<'_>, available: Size) -> Size
fn measure(&self, cx: &mut MeasureCx<'_>, available: Size) -> Size
available.Source§fn event(&self, cx: &mut EventCx<'_, Msg>, event: &Event) -> bool
fn event(&self, cx: &mut EventCx<'_, Msg>, event: &Event) -> bool
true when the event was used; unused key and scroll events
bubble to the parent widget.Source§fn paint_overlay(&self, _cx: &mut PaintCx<'_>, _anchor: Rect)
fn paint_overlay(&self, _cx: &mut PaintCx<'_>, _anchor: Rect)
PaintCx::request_overlay. anchor is the area the widget was painted in.Source§fn children_mut(&mut self) -> &mut [Node<Msg>]
fn children_mut(&mut self) -> &mut [Node<Msg>]
Auto Trait Implementations§
impl<Msg> Freeze for CopyValue<Msg>
impl<Msg> RefUnwindSafe for CopyValue<Msg>where
Option<Msg>: RefUnwindSafe,
impl<Msg> Send for CopyValue<Msg>
impl<Msg> Sync for CopyValue<Msg>
impl<Msg> Unpin for CopyValue<Msg>
impl<Msg> UnsafeUnpin for CopyValue<Msg>where
Option<Msg>: UnsafeUnpin,
impl<Msg> UnwindSafe for CopyValue<Msg>where
Option<Msg>: UnwindSafe,
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
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
fn into_either(self, into_left: bool) -> Either<Self, Self> ⓘ
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 moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self> ⓘ
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