pub struct Wizard { /* private fields */ }Expand description
A task in steps: where it stands at the top, one step on the screen, and buttons to go on. A step can refuse to be left, and steps already done can be reopened.
use ravenrs_reactive::State;
use ravenrs_widgets::{Text, Ui, Wizard, WizardStep};
let step = State::new(0);
let wizard = Wizard::new(
step.binding(),
vec![
WizardStep::new("Data", Text::new("Where it comes from")),
WizardStep::new("Layout", Text::new("How it looks")).check(|| Err("Pick one".into())),
],
)
.on_finish(|| println!("done"));
let mut ui = Ui::new(wizard, ravenrs_style::Theme::raven_dark());
ui.update();Implementations§
Source§impl Wizard
impl Wizard
Sourcepub fn new(step: Binding<usize>, steps: Vec<WizardStep>) -> Wizard
pub fn new(step: Binding<usize>, steps: Vec<WizardStep>) -> Wizard
A wizard over these steps, bound to the index of the one showing.
Sourcepub fn on_finish(self, handler: impl Fn() + 'static) -> Wizard
pub fn on_finish(self, handler: impl Fn() + 'static) -> Wizard
Runs after the last step’s check passes.
Sourcepub fn on_cancel(self, handler: impl Fn() + 'static) -> Wizard
pub fn on_cancel(self, handler: impl Fn() + 'static) -> Wizard
Shows a Cancel button that runs this.
Sourcepub fn finish_label(self, label: impl Into<String>) -> Wizard
pub fn finish_label(self, label: impl Into<String>) -> Wizard
The text of the last button.
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for Wizard
impl !Send for Wizard
impl !Sync for Wizard
impl !UnwindSafe for Wizard
impl Freeze for Wizard
impl Unpin for Wizard
impl UnsafeUnpin for Wizard
Blanket Implementations§
impl<T> AutoreleaseSafe for Twhere
T: ?Sized,
impl<T> AutoreleaseSafe for Twhere
T: ?Sized,
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
Mutably borrows from an owned value. Read more
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
impl<S, T> Duplex<S> for Twhere
T: FromSample<S> + ToSample<S>,
impl<T> ErasedDestructor for Twhere
T: 'static,
§impl<S> FromSample<S> for S
impl<S> FromSample<S> for S
fn from_sample_(s: S) -> S
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
fn instrument(self, span: Span) -> Instrumented<Self> ⓘ
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
§impl<T, U> ToSample<U> for Twhere
U: FromSample<T>,
impl<T, U> ToSample<U> for Twhere
U: FromSample<T>,
fn to_sample_(self) -> U
Source§impl<V> ViewExt for Vwhere
V: View,
impl<V> ViewExt for Vwhere
V: View,
Source§fn padding(self, padding: impl Into<Insets>) -> Styled<Self>
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>
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>
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.