pub struct SuspendCallback<FN, T>{ /* private fields */ }
Expand description
A callback called when Ctrl-Z
is pressed.
§Example
extern crate newt;
use newt::callbacks::SuspendCallback;
use newt::prelude::*;
pub fn main() {
// Receives the new value when the SuspendCallback is activated.
let mut value: i32 = 0;
newt::init().unwrap();
newt::cls();
newt::centered_window(20, 5, Some("Suspend Callback Test")).unwrap();
let label = Label::new(4, 1, "Press Ctrl-Z");
let ok = CompactButton::new(7, 4, "Ok");
let mut form = Form::new(None, 0);
form.add_components(&[&label, &ok]).unwrap();
// Closure `f` borrows `value` as mutable so create a new subscope here
// allowing `value` to be borrowed immutably when printing the result
// later.
{
// Create closure to be called by SuspendCallback
let mut f = |data: Option<&i32>| {
value = *data.unwrap();
};
// Create SuspendCallback using `10` as data.
let _callback = SuspendCallback::new(Some(10), &mut f);
form.run().unwrap();
newt::finished();
}
// `value` will be `10` if Ctrl-Z was pressed.
println!("value = {}", value);
}
Implementations§
Source§impl<FN, T> SuspendCallback<FN, T>
impl<FN, T> SuspendCallback<FN, T>
Sourcepub fn new(data: Option<T>, function: FN) -> Box<SuspendCallback<FN, T>>
pub fn new(data: Option<T>, function: FN) -> Box<SuspendCallback<FN, T>>
Create a new SuspendCallback
to be called when a suspend (Ctrl-Z
)
event occurs.
data
- The optional user data to pass to the function.function
- The function or closure to be called when a suspend event occurs.
Trait Implementations§
Auto Trait Implementations§
impl<FN, T> Freeze for SuspendCallback<FN, T>
impl<FN, T> RefUnwindSafe for SuspendCallback<FN, T>where
FN: RefUnwindSafe,
T: RefUnwindSafe,
impl<FN, T> Send for SuspendCallback<FN, T>
impl<FN, T> Sync for SuspendCallback<FN, T>
impl<FN, T> Unpin for SuspendCallback<FN, T>
impl<FN, T> UnwindSafe for SuspendCallback<FN, T>where
FN: UnwindSafe,
T: 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
Mutably borrows from an owned value. Read more