Struct cursive_extras::StatusView
source · [−]pub struct StatusView { /* private fields */ }
Expand description
View that can be used to report an application’s status. It is meant to be placed at the bottom of the main Cursive layer
Examples
Reporting Application Status
let mut root = cursive::default();
root.add_fullscreen_layer(
LinearLayout::vertical()
.child(
Dialog::text("Yes")
.button("Quit", |v| v.quit())
.title("StatusView Example")
)
.child(StatusView::new().with_name("status"))
);
root.set_fps(30);
root.set_global_callback(Event::Refresh, |view| {
let mut status = view.find_name::<StatusView>("status").expect("StatusView does not exist!");
status.info("Application Status");
status.update();
});
root.run();
Reporting an Error
let mut root = cursive::default();
root.add_fullscreen_layer(
LinearLayout::vertical()
.child(
Dialog::text("Yes")
.button("Quit", |v| v.quit())
.title("StatusView Example")
)
.child(StatusView::new().with_name("status"))
);
root.set_fps(30);
root.set_global_callback(Event::Refresh, |view| {
let error: Result<&str, &str> = Err("Error: Houston, we have a problem!");
let mut status = view.find_name::<StatusView>("status").expect("StatusView does not exist!");
report_error!(status, error);
status.update();
});
root.run();
Implementations
sourceimpl StatusView
impl StatusView
sourcepub fn new() -> StatusView
pub fn new() -> StatusView
Create a new StatusView
sourcepub fn update(&mut self)
pub fn update(&mut self)
This will clear the StatusView
if called more than 5 seconds after the text
was set
sourcepub fn report_error<T: Display>(&mut self, text: T)
pub fn report_error<T: Display>(&mut self, text: T)
Set the text in the StatusView
with error formatting (bright red text)
Trait Implementations
sourceimpl View for StatusView
impl View for StatusView
sourcefn draw(&self, printer: &Printer<'_, '_>)
fn draw(&self, printer: &Printer<'_, '_>)
Draws the view with the given printer (includes bounds) and focus. Read more
sourcefn required_size(&mut self, constraint: Vec2) -> Vec2
fn required_size(&mut self, constraint: Vec2) -> Vec2
Returns the minimum size the view requires with the given restrictions. Read more
sourcefn needs_relayout(&self) -> bool
fn needs_relayout(&self) -> bool
Should return true
if the view content changed since the last call
to layout()
. Read more
sourcefn on_event(&mut self, Event) -> EventResult
fn on_event(&mut self, Event) -> EventResult
Called when an event is received (key press, mouse event, …). Read more
sourcefn call_on_any(
&mut self,
&Selector<'_>,
&'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
fn call_on_any(
&mut self,
&Selector<'_>,
&'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
Runs a closure on the view identified by the given selector. Read more
sourcefn focus_view(&mut self, &Selector<'_>) -> Result<EventResult, ViewNotFound>
fn focus_view(&mut self, &Selector<'_>) -> Result<EventResult, ViewNotFound>
Moves the focus to the view identified by the given selector. Read more
sourcefn take_focus(&mut self, source: Direction) -> Result<EventResult, CannotFocus>
fn take_focus(&mut self, source: Direction) -> Result<EventResult, CannotFocus>
Attempt to give this view the focus. Read more
Auto Trait Implementations
impl RefUnwindSafe for StatusView
impl Send for StatusView
impl Sync for StatusView
impl Unpin for StatusView
impl UnwindSafe for StatusView
Blanket Implementations
sourceimpl<T> BorrowMut<T> for T where
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
const: unstable · sourcefn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
sourceimpl<T> Finder for T where
T: View,
impl<T> Finder for T where
T: View,
sourcefn call_on_all<V, F>(&mut self, sel: &Selector<'_>, callback: F) where
V: View,
F: FnMut(&mut V),
fn call_on_all<V, F>(&mut self, sel: &Selector<'_>, callback: F) where
V: View,
F: FnMut(&mut V),
Runs a callback on all views identified by sel
. Read more
sourcefn call_on<V, F, R>(&mut self, sel: &Selector<'_>, callback: F) -> Option<R> where
V: View,
F: FnOnce(&mut V) -> R,
fn call_on<V, F, R>(&mut self, sel: &Selector<'_>, callback: F) -> Option<R> where
V: View,
F: FnOnce(&mut V) -> R,
Runs a callback on the view identified by sel
. Read more
sourceimpl<T> IntoBoxedView for T where
T: View,
impl<T> IntoBoxedView for T where
T: View,
sourcefn into_boxed_view(self) -> Box<dyn View + 'static, Global>
fn into_boxed_view(self) -> Box<dyn View + 'static, Global>
Returns a Box<View>
.
sourceimpl<T> Resizable for T where
T: View,
impl<T> Resizable for T where
T: View,
sourcefn resized(
self,
width: SizeConstraint,
height: SizeConstraint
) -> ResizedView<Self>
fn resized(
self,
width: SizeConstraint,
height: SizeConstraint
) -> ResizedView<Self>
Wraps self
in a ResizedView
with the given size constraints.
sourcefn fixed_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
fn fixed_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
Wraps self
into a fixed-size ResizedView
.
sourcefn fixed_width(self, width: usize) -> ResizedView<Self>
fn fixed_width(self, width: usize) -> ResizedView<Self>
Wraps self
into a fixed-width ResizedView
.
sourcefn fixed_height(self, height: usize) -> ResizedView<Self>
fn fixed_height(self, height: usize) -> ResizedView<Self>
Wraps self
into a fixed-width ResizedView
.
sourcefn full_screen(self) -> ResizedView<Self>
fn full_screen(self) -> ResizedView<Self>
Wraps self
into a full-screen ResizedView
.
sourcefn full_width(self) -> ResizedView<Self>
fn full_width(self) -> ResizedView<Self>
Wraps self
into a full-width ResizedView
.
sourcefn full_height(self) -> ResizedView<Self>
fn full_height(self) -> ResizedView<Self>
Wraps self
into a full-height ResizedView
.
sourcefn max_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
fn max_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
Wraps self
into a limited-size ResizedView
.
sourcefn max_width(self, max_width: usize) -> ResizedView<Self>
fn max_width(self, max_width: usize) -> ResizedView<Self>
Wraps self
into a limited-width ResizedView
.
sourcefn max_height(self, max_height: usize) -> ResizedView<Self>
fn max_height(self, max_height: usize) -> ResizedView<Self>
Wraps self
into a limited-height ResizedView
.
sourcefn min_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
fn min_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
Wraps self
into a ResizedView
at least sized size
.
sourcefn min_width(self, min_width: usize) -> ResizedView<Self>
fn min_width(self, min_width: usize) -> ResizedView<Self>
Wraps self
in a ResizedView
at least min_width
wide.
sourcefn min_height(self, min_height: usize) -> ResizedView<Self>
fn min_height(self, min_height: usize) -> ResizedView<Self>
Wraps self
in a ResizedView
at least min_height
tall.
sourceimpl<T> Scrollable for T where
T: View,
impl<T> Scrollable for T where
T: View,
sourcefn scrollable(self) -> ScrollView<Self>
fn scrollable(self) -> ScrollView<Self>
Wraps self
in a ScrollView
.