Macro cursive_extras::report_error
source · macro_rules! report_error { ($status_view:expr, $res_val:expr) => { ... }; }
Expand description
Convenience macro that updates the specified StatusView
reference with an error message and returns
from the current callback if an error happens, returns the Ok
value otherwise
Example
let mut root = cursive::default();
root.add_fullscreen_layer(
hlayout!(
Dialog::text("Yes")
.button("Quit", |r| r.quit())
.title("Error Reporting example")
StatusView::new().with_name("status")
)
);
root.set_fps(30);
root.set_global_callback(Event::Refresh, |root| {
let error: Result<&str, &str> = Err("Error: Houston, we have a problem!");
let mut status = root.find_name::<StatusView>("status").expect("StatusView does not exist!");
report_error!(status, error);
status.update();
});
root.run();