[−][src]Struct cursive::views::EnableableView
Wrapper around another view that can be enabled/disabled at will.
When disabled, all child views will be disabled and will stop receiving events.
Examples
use cursive_core::Cursive; use cursive_core::views::{Button, EnableableView, Checkbox, LinearLayout}; use cursive_core::traits::Identifiable; let mut siv = Cursive::dummy(); siv.add_layer(LinearLayout::vertical() .child(EnableableView::new(Checkbox::new()).with_name("my_view")) .child(Button::new("Toggle", |s| { s.call_on_name("my_view", |v: &mut EnableableView<Checkbox>| { // This will disable (or re-enable) the checkbox, preventing the user from // interacting with it. v.set_enabled(!v.is_enabled()); }); })) );
Implementations
impl<V> EnableableView<V>
[src]
pub fn new(view: V) -> EnableableView<V>
[src]
Creates a new EnableableView
around view
.
It will be enabled by default.
pub fn disable(&mut self)
[src]
Disables this view.
A disabled view cannot be selected.
pub fn disabled(self) -> EnableableView<V>
[src]
Disables this view.
Chainable variant.
pub fn enable(&mut self)
[src]
Re-enables this view.
pub fn set_enabled(&mut self, enabled: bool)
[src]
Enable or disable this view.
pub fn with_enabled(self, is_enabled: bool) -> EnableableView<V>
[src]
Enable or disable this view.
Chainable variant.
pub fn is_enabled(&self) -> bool
[src]
Returns true
if this view is enabled.
pub fn get_inner(&self) -> &V
[src]
Gets access to the inner view.
pub fn get_inner_mut(&mut self) -> &mut V
[src]
Gets mutable access to the inner view.
Trait Implementations
impl<V> ViewWrapper for EnableableView<V> where
V: View,
[src]
V: View,
type V = V
Type that this view wraps.
fn with_view<F, R>(&self, f: F) -> Option<R> where
F: FnOnce(&<EnableableView<V> as ViewWrapper>::V) -> R,
[src]
F: FnOnce(&<EnableableView<V> as ViewWrapper>::V) -> R,
fn with_view_mut<F, R>(&mut self, f: F) -> Option<R> where
F: FnOnce(&mut <EnableableView<V> as ViewWrapper>::V) -> R,
[src]
F: FnOnce(&mut <EnableableView<V> as ViewWrapper>::V) -> R,
fn into_inner(
self
) -> Result<<EnableableView<V> as ViewWrapper>::V, EnableableView<V>> where
<EnableableView<V> as ViewWrapper>::V: Sized,
[src]
self
) -> Result<<EnableableView<V> as ViewWrapper>::V, EnableableView<V>> where
<EnableableView<V> as ViewWrapper>::V: Sized,
fn wrap_on_event(&mut self, event: Event) -> EventResult
[src]
fn wrap_draw(&self, printer: &Printer)
[src]
fn wrap_required_size(&mut self, req: XY<usize>) -> XY<usize>
[src]
fn wrap_layout(&mut self, size: XY<usize>)
[src]
fn wrap_take_focus(&mut self, source: Direction) -> bool
[src]
fn wrap_call_on_any(
&mut self,
selector: &Selector,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
[src]
&mut self,
selector: &Selector,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
fn wrap_focus_view(&mut self, selector: &Selector) -> Result<(), ()>
[src]
fn wrap_needs_relayout(&self) -> bool
[src]
fn wrap_important_area(&self, size: XY<usize>) -> Rect
[src]
Auto Trait Implementations
impl<V> RefUnwindSafe for EnableableView<V> where
V: RefUnwindSafe,
V: RefUnwindSafe,
impl<V> Send for EnableableView<V> where
V: Send,
V: Send,
impl<V> Sync for EnableableView<V> where
V: Sync,
V: Sync,
impl<V> Unpin for EnableableView<V> where
V: Unpin,
V: Unpin,
impl<V> UnwindSafe for EnableableView<V> where
V: UnwindSafe,
V: UnwindSafe,
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> AnyView for T where
T: View,
[src]
T: View,
fn as_any(&self) -> &(dyn Any + 'static)
[src]
Downcast self to a Any
.
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
[src]
Downcast self to a mutable Any
.
fn as_boxed_any(self: Box<T>) -> Box<dyn Any + 'static>
[src]
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> Erased for T
impl<T> Finder for T where
T: View,
[src]
T: View,
fn call_on<V, F, R>(&mut self, sel: &Selector, callback: F) -> Option<R> where
F: FnOnce(&mut V) -> R,
V: View,
[src]
F: FnOnce(&mut V) -> R,
V: View,
fn call_on_name<V, F, R>(&mut self, name: &str, callback: F) -> Option<R> where
F: FnOnce(&mut V) -> R,
V: View,
[src]
F: FnOnce(&mut V) -> R,
V: View,
fn call_on_id<V, F, R>(&mut self, id: &str, callback: F) -> Option<R> where
F: FnOnce(&mut V) -> R,
V: View,
[src]
F: FnOnce(&mut V) -> R,
V: View,
fn find_name<V>(
&mut self,
name: &str
) -> Option<OwningHandle<OwningRef<Rc<RefCell<V>>, RefCell<V>>, RefMut<'static, V>>> where
V: View,
[src]
&mut self,
name: &str
) -> Option<OwningHandle<OwningRef<Rc<RefCell<V>>, RefCell<V>>, RefMut<'static, V>>> where
V: View,
fn find_id<V>(
&mut self,
id: &str
) -> Option<OwningHandle<OwningRef<Rc<RefCell<V>>, RefCell<V>>, RefMut<'static, V>>> where
V: View,
[src]
&mut self,
id: &str
) -> Option<OwningHandle<OwningRef<Rc<RefCell<V>>, RefCell<V>>, RefMut<'static, V>>> where
V: View,
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> IntoBoxedView for T where
T: View,
[src]
T: View,
fn as_boxed_view(self) -> Box<dyn View + 'static>
[src]
impl<T> Nameable for T where
T: View,
[src]
T: View,
fn with_name<S>(self, name: S) -> NamedView<Self> where
S: Into<String>,
[src]
S: Into<String>,
fn with_id<S>(self, id: S) -> NamedView<Self> where
S: Into<String>,
[src]
S: Into<String>,
impl<T> Resizable for T where
T: View,
[src]
T: View,
fn boxed(
self,
width: SizeConstraint,
height: SizeConstraint
) -> ResizedView<Self>
[src]
self,
width: SizeConstraint,
height: SizeConstraint
) -> ResizedView<Self>
fn resized(
self,
width: SizeConstraint,
height: SizeConstraint
) -> ResizedView<Self>
[src]
self,
width: SizeConstraint,
height: SizeConstraint
) -> ResizedView<Self>
fn fixed_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
[src]
S: Into<XY<usize>>,
fn fixed_width(self, width: usize) -> ResizedView<Self>
[src]
fn fixed_height(self, height: usize) -> ResizedView<Self>
[src]
fn full_screen(self) -> ResizedView<Self>
[src]
fn full_width(self) -> ResizedView<Self>
[src]
fn full_height(self) -> ResizedView<Self>
[src]
fn max_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
[src]
S: Into<XY<usize>>,
fn max_width(self, max_width: usize) -> ResizedView<Self>
[src]
fn max_height(self, max_height: usize) -> ResizedView<Self>
[src]
fn min_size<S>(self, size: S) -> ResizedView<Self> where
S: Into<XY<usize>>,
[src]
S: Into<XY<usize>>,
fn min_width(self, min_width: usize) -> ResizedView<Self>
[src]
fn min_height(self, min_height: usize) -> ResizedView<Self>
[src]
impl<T> Scrollable for T where
T: View,
[src]
T: View,
fn scrollable(self) -> ScrollView<Self>
[src]
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<T> View for T where
T: ViewWrapper,
[src]
T: ViewWrapper,
fn draw(&self, printer: &Printer)
[src]
fn required_size(&mut self, req: XY<usize>) -> XY<usize>
[src]
fn on_event(&mut self, ch: Event) -> EventResult
[src]
fn layout(&mut self, size: XY<usize>)
[src]
fn take_focus(&mut self, source: Direction) -> bool
[src]
fn call_on_any(
&mut self,
selector: &Selector,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)
[src]
&mut self,
selector: &Selector,
callback: &'a mut (dyn FnMut(&mut (dyn View + 'static)) + 'a)
)