pub struct NumberInput<Msg> { /* private fields */ }Expand description
A text field for a number: typing edits it like a text input, Up and Down step it.
Only digits can be typed, a minus when the range allows negative numbers and a decimal
point when the step has decimals. The field shows the invalid state while its text is not a
number or lies outside the range, and the application only ever receives valid numbers
inside the range; an empty or unfinished field keeps the last valid value. Up and Down move
one step and Page Up and Page Down ten, always clamped to the range. Everything else edits
like a TextInput: cursor, selection, undo and clipboard.
With NumberInput::steppers two segments on the right step the value when clicked. The
wheel over the field moves one step per notch, and a right click opens the text input’s edit
menu (Cut, Copy, Paste, Select all); pasted text keeps only the characters a number allows.
Style keys: those of the text input (text-input, text-input-prompt, …) and
number-input-stepper (bg, fg) with states hover, focus, pressed, disabled.
Implementations§
Source§impl<Msg: 'static> NumberInput<Msg>
impl<Msg: 'static> NumberInput<Msg>
Sourcepub fn step(self, step: f64) -> Self
pub fn step(self, step: f64) -> Self
How far Up and Down move the value. The step’s decimals decide how the value is written and whether a decimal point can be typed.
Sourcepub fn steppers(self, steppers: bool) -> Self
pub fn steppers(self, steppers: bool) -> Self
Shows clickable minus and plus segments on the right.
Sourcepub fn placeholder(self, text: impl Into<String>) -> Self
pub fn placeholder(self, text: impl Into<String>) -> Self
Faint text shown while the field is empty.
Trait Implementations§
Source§impl<Msg: 'static> Widget<Msg> for NumberInput<Msg>
impl<Msg: 'static> Widget<Msg> for NumberInput<Msg>
Source§fn measure(&self, cx: &mut MeasureCx<'_>, available: Size) -> Size
fn measure(&self, cx: &mut MeasureCx<'_>, available: Size) -> Size
available.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 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 children_mut(&mut self) -> &mut [Node<Msg>]
fn children_mut(&mut self) -> &mut [Node<Msg>]
Auto Trait Implementations§
impl<Msg> !RefUnwindSafe for NumberInput<Msg>
impl<Msg> !Send for NumberInput<Msg>
impl<Msg> !Sync for NumberInput<Msg>
impl<Msg> !UnwindSafe for NumberInput<Msg>
impl<Msg> Freeze for NumberInput<Msg>
impl<Msg> Unpin for NumberInput<Msg>
impl<Msg> UnsafeUnpin for NumberInput<Msg>
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