#[non_exhaustive]pub struct FinishAction {
pub info: Var<Txt>,
pub selected: Var<bool>,
pub action: Box<dyn FnOnce() -> Result<(), Error> + Send>,
}Expand description
Represents an action that FinishPage runs once the wizard finishes.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Non-exhaustive structs could have additional fields added in future. Therefore, non-exhaustive structs cannot be constructed in external crates using the traditional
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.info: Var<Txt>Short display info about the action.
selected: Var<bool>If the action should run.
If this var is modifiable the user will see an enabled checkbox for the action.
action: Box<dyn FnOnce() -> Result<(), Error> + Send>Action to run.
The action will run blocking on the app context, on a FINISH_CMD preview handler. Note
that the setup app will likely exit just after this call, starting async tasks is not recommended.
Implementations§
Source§impl FinishAction
impl FinishAction
Sourcepub fn new(
info: impl IntoVar<Txt>,
enabled_default: bool,
action: impl FnOnce() -> Result<(), Error> + Send + 'static,
) -> FinishAction
pub fn new( info: impl IntoVar<Txt>, enabled_default: bool, action: impl FnOnce() -> Result<(), Error> + Send + 'static, ) -> FinishAction
New action the user can enable/disable.
Sourcepub fn required(self) -> FinishAction
pub fn required(self) -> FinishAction
Force enabled, the user will not be allowed to disable.
Sourcepub fn run_app(run_app_cmd: Command) -> FinishAction
pub fn run_app(run_app_cmd: Command) -> FinishAction
Action that runs the installed app.
Auto Trait Implementations§
impl !Freeze for FinishAction
impl !RefUnwindSafe for FinishAction
impl !Sync for FinishAction
impl !Unpin for FinishAction
impl !UnwindSafe for FinishAction
impl Send for FinishAction
impl UnsafeUnpin for FinishAction
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
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<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
§fn into_any(self: Box<T>) -> Box<dyn 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>
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)
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)
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<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> ⓘ
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> ⓘ
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 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> ⓘ
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