Struct cursive::views::CircularFocus [−][src]
pub struct CircularFocus<T> where
T: View, { /* fields omitted */ }
Expand description
Adds circular focus to a wrapped view.
Wrap a view in CircularFocus
to enable wrap-around focus
(when the focus exits this view, it will come back the other side).
It can be configured to wrap Tab (and Shift+Tab) keys, and/or Arrow keys.
Implementations
Creates a new CircularFocus
around the given view.
Does not wrap anything by default, so you’ll want to call one of the setters.
Returns true
if Arrow keys cause focus to wrap around.
Return true
if left/right keys cause focus to wrap around.
Return true
if up/down keys cause focus to wrap around.
Make this view now wrap focus around when arrow keys are pressed.
Make this view now wrap focus around when the up/down keys are pressed.
Make this view now wrap focus around when the left/right keys are pressed.
Make this view now wrap focus around when the Tab key is pressed.
Chainable variant.
Make this view now wrap focus around when the Tab key is pressed.
Chainable variant.
Make this view now wrap focus around when the left/right keys are pressed.
Make this view now wrap focus around when the up/down keys are pressed.
Make this view now wrap focus around when arrow keys are pressed.
Make this view now wrap focus around when the Tab key is pressed.
Make this view now wrap focus around when arrow keys are pressed.
Make this view now wrap focus around when the up/down keys are pressed.
Make this view now wrap focus around when the left/right keys are pressed.
Gets mutable access to the inner view.
Trait Implementations
type V = T
type V = T
Type that this view wraps.
pub fn with_view<F, R>(&self, f: F) -> Option<R> where
F: FnOnce(&<CircularFocus<T> as ViewWrapper>::V) -> R,
pub fn with_view<F, R>(&self, f: F) -> Option<R> where
F: FnOnce(&<CircularFocus<T> as ViewWrapper>::V) -> R,
Runs a function on the inner view, returning the result. Read more
pub fn with_view_mut<F, R>(&mut self, f: F) -> Option<R> where
F: FnOnce(&mut <CircularFocus<T> as ViewWrapper>::V) -> R,
pub fn with_view_mut<F, R>(&mut self, f: F) -> Option<R> where
F: FnOnce(&mut <CircularFocus<T> as ViewWrapper>::V) -> R,
Runs a function on the inner view, returning the result. Read more
pub fn into_inner(
self
) -> Result<<CircularFocus<T> as ViewWrapper>::V, CircularFocus<T>> where
<CircularFocus<T> as ViewWrapper>::V: Sized,
pub fn into_inner(
self
) -> Result<<CircularFocus<T> as ViewWrapper>::V, CircularFocus<T>> where
<CircularFocus<T> as ViewWrapper>::V: Sized,
Attempts to retrieve the inner view.
Wraps the on_event
method.
Wraps the layout
method.
Wraps the take_focus
method.
fn wrap_call_on_any(
&mut self,
selector: &Selector<'_>,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
fn wrap_call_on_any(
&mut self,
selector: &Selector<'_>,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
Wraps the find
method.
Wraps the focus_view
method.
Wraps the needs_relayout
method.
Wraps the important_area
method.
Auto Trait Implementations
impl<T> RefUnwindSafe for CircularFocus<T> where
T: RefUnwindSafe,
impl<T> Send for CircularFocus<T> where
T: Send,
impl<T> Sync for CircularFocus<T> where
T: Sync,
impl<T> Unpin for CircularFocus<T> where
T: Unpin,
impl<T> UnwindSafe for CircularFocus<T> where
T: UnwindSafe,
Blanket Implementations
Mutably borrows from an owned value. Read more
pub fn into_boxed_view(self) -> Box<dyn View + 'static, Global>ⓘ
pub fn into_boxed_view(self) -> Box<dyn View + 'static, Global>ⓘ
Returns a Box<View>
.
Wraps self
in a ResizedView
with the given size constraints.
Wraps self
into a fixed-size ResizedView
.
Wraps self
into a fixed-width ResizedView
.
Wraps self
into a fixed-width ResizedView
.
Wraps self
into a full-screen ResizedView
.
Wraps self
into a full-width ResizedView
.
Wraps self
into a full-height ResizedView
.
Wraps self
into a limited-size ResizedView
.
Wraps self
into a limited-width ResizedView
.
Wraps self
into a limited-height ResizedView
.
Wraps self
into a ResizedView
at least sized size
.
Wraps self
in a ResizedView
at least min_width
wide.
Wraps self
in a ResizedView
at least min_height
tall.
Wraps self
in a ScrollView
.
Draws the view with the given printer (includes bounds) and focus. Read more
Returns the minimum size the view requires with the given restrictions. Read more
Called when an event is received (key press, mouse event, …). Read more
Called once the size for this view has been decided. Read more
Attempt to give this view the focus. Read more
pub fn call_on_any(
&mut self,
selector: &Selector<'_>,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
pub fn call_on_any(
&mut self,
selector: &Selector<'_>,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
Runs a closure on the view identified by the given selector. Read more
Should return true
if the view content changed since the last call
to layout()
. Read more
Moves the focus to the view identified by the given selector. Read more
What part of the view is important and should be visible? Read more
Calls the given closure and return the result. Read more
Calls the given closure on self
.