pub struct AlignedView<T> { /* private fields */ }
Expand description
This struct aligns a child view with a given alignment.
The child view will have its minimum allowed size. Additionally, the child may get cropped if it is larger than the available size.
The padded space around the child view is filled with the View
color from
cursive’s color palette.
§Usage
The AlignedView
may be used in 2 different ways:
- Via the
Alignable
composition trait - Via normal constructors
§Using Alignable
use cursive::{Cursive, CursiveExt};
use cursive::view::Resizable;
use cursive::views::{Panel, DummyView};
use cursive_aligned_view::Alignable;
fn main() {
let mut siv = Cursive::default();
let panel = Panel::new(DummyView)
.title("Hello, world!")
.fixed_width(20)
.align_top_center(); // `align_...` methods from `Alignable`
siv.add_fullscreen_layer(panel);
// siv.run()
}
§Constructors
use cursive::{Cursive, CursiveExt};
use cursive::view::Resizable;
use cursive::views::{Panel, DummyView};
use cursive_aligned_view::AlignedView;
fn main() {
let mut siv = Cursive::default();
let panel = Panel::new(DummyView)
.title("Hello, world!")
.fixed_width(20);
let aligned = AlignedView::with_bottom_center(panel); // constructor
siv.add_fullscreen_layer(aligned);
// siv.run()
}
Implementations§
Source§impl<T: View> AlignedView<T>
impl<T: View> AlignedView<T>
pub fn new(view: T, alignment: Align) -> Self
Sourcepub fn with_top_left(view: T) -> Self
pub fn with_top_left(view: T) -> Self
Wrap a child view and align it at the top-left of the parent.
Sourcepub fn with_top_center(view: T) -> Self
pub fn with_top_center(view: T) -> Self
Wrap a child view and align it at the top-center of the parent.
Sourcepub fn with_top_right(view: T) -> Self
pub fn with_top_right(view: T) -> Self
Wrap a child view and align it at the top-right of the parent.
Sourcepub fn with_center_left(view: T) -> Self
pub fn with_center_left(view: T) -> Self
Wrap a child view and align it at the center-left of the parent.
Sourcepub fn with_center(view: T) -> Self
pub fn with_center(view: T) -> Self
Wrap a child view and align it at the center of the parent.
Sourcepub fn with_center_right(view: T) -> Self
pub fn with_center_right(view: T) -> Self
Wrap a child view and align it at the center-right of the parent.
Sourcepub fn with_bottom_left(view: T) -> Self
pub fn with_bottom_left(view: T) -> Self
Wrap a child view and align it at the bottom-left of the parent.
Sourcepub fn with_bottom_center(view: T) -> Self
pub fn with_bottom_center(view: T) -> Self
Wrap a child view and align it at the bottom-center of the parent.
Sourcepub fn with_bottom_right(view: T) -> Self
pub fn with_bottom_right(view: T) -> Self
Wrap a child view and align it at the bottom-right of the parent.
Sourcepub fn set_top_left(&mut self)
pub fn set_top_left(&mut self)
Set the alignment of this view to top-left.
Sourcepub fn set_top_center(&mut self)
pub fn set_top_center(&mut self)
Set the alignment of this view to top-center.
Sourcepub fn set_top_right(&mut self)
pub fn set_top_right(&mut self)
Set the alignment of this view to top-right.
Sourcepub fn set_center_left(&mut self)
pub fn set_center_left(&mut self)
Set the alignment of this view to center-left.
Sourcepub fn set_center(&mut self)
pub fn set_center(&mut self)
Set the alignment of this view to center.
Sourcepub fn set_center_right(&mut self)
pub fn set_center_right(&mut self)
Set the alignment of this view to center-right.
Sourcepub fn set_bottom_left(&mut self)
pub fn set_bottom_left(&mut self)
Set the alignment of this view to bottom-left.
Sourcepub fn set_bottom_center(&mut self)
pub fn set_bottom_center(&mut self)
Set the alignment of this view to bottom-center.
Sourcepub fn set_bottom_right(&mut self)
pub fn set_bottom_right(&mut self)
Set the alignment of this view to bottom-right.
Trait Implementations§
Source§impl<T: View> ViewWrapper for AlignedView<T>
impl<T: View> ViewWrapper for AlignedView<T>
Source§fn with_view<F, R>(&self, f: F) -> Option<R>
fn with_view<F, R>(&self, f: F) -> Option<R>
Source§fn with_view_mut<F, R>(&mut self, f: F) -> Option<R>
fn with_view_mut<F, R>(&mut self, f: F) -> Option<R>
Source§fn into_inner(self) -> Result<Self::V, Self>
fn into_inner(self) -> Result<Self::V, Self>
Source§fn wrap_layout(&mut self, size: Vec2)
fn wrap_layout(&mut self, size: Vec2)
layout
method.Source§fn wrap_needs_relayout(&self) -> bool
fn wrap_needs_relayout(&self) -> bool
needs_relayout
method.Source§fn wrap_required_size(&mut self, constraint: Vec2) -> Vec2
fn wrap_required_size(&mut self, constraint: Vec2) -> Vec2
required_size
method.Source§fn wrap_on_event(&mut self, ev: Event) -> EventResult
fn wrap_on_event(&mut self, ev: Event) -> EventResult
on_event
method.Source§fn wrap_important_area(&self, _: Vec2) -> Rect
fn wrap_important_area(&self, _: Vec2) -> Rect
important_area
method.Source§fn wrap_take_focus(
&mut self,
source: Direction,
) -> Result<EventResult, CannotFocus>
fn wrap_take_focus( &mut self, source: Direction, ) -> Result<EventResult, CannotFocus>
take_focus
method.Source§fn wrap_call_on_any(
&mut self,
selector: &Selector<'_>,
callback: &mut dyn FnMut(&mut (dyn View + 'static)),
)
fn wrap_call_on_any( &mut self, selector: &Selector<'_>, callback: &mut dyn FnMut(&mut (dyn View + 'static)), )
find
method.Source§fn wrap_focus_view(
&mut self,
selector: &Selector<'_>,
) -> Result<EventResult, ViewNotFound>
fn wrap_focus_view( &mut self, selector: &Selector<'_>, ) -> Result<EventResult, ViewNotFound>
focus_view
method.Auto Trait Implementations§
impl<T> Freeze for AlignedView<T>where
T: Freeze,
impl<T> RefUnwindSafe for AlignedView<T>where
T: RefUnwindSafe,
impl<T> Send for AlignedView<T>where
T: Send,
impl<T> Sync for AlignedView<T>where
T: Sync,
impl<T> Unpin for AlignedView<T>where
T: Unpin,
impl<T> UnwindSafe for AlignedView<T>where
T: UnwindSafe,
Blanket Implementations§
Source§impl<T> Alignable for Twhere
T: View,
impl<T> Alignable for Twhere
T: View,
Source§fn align_top_left(self) -> AlignedView<Self>
fn align_top_left(self) -> AlignedView<Self>
Source§fn align_top_center(self) -> AlignedView<Self>
fn align_top_center(self) -> AlignedView<Self>
Source§fn align_top_right(self) -> AlignedView<Self>
fn align_top_right(self) -> AlignedView<Self>
Source§fn align_center_left(self) -> AlignedView<Self>
fn align_center_left(self) -> AlignedView<Self>
Source§fn align_center(self) -> AlignedView<Self>
fn align_center(self) -> AlignedView<Self>
Source§fn align_center_right(self) -> AlignedView<Self>
fn align_center_right(self) -> AlignedView<Self>
Source§fn align_bottom_left(self) -> AlignedView<Self>
fn align_bottom_left(self) -> AlignedView<Self>
Source§fn align_bottom_center(self) -> AlignedView<Self>
fn align_bottom_center(self) -> AlignedView<Self>
Source§fn align_bottom_right(self) -> AlignedView<Self>
fn align_bottom_right(self) -> AlignedView<Self>
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
Source§impl<T> Finder for Twhere
T: View,
impl<T> Finder for Twhere
T: View,
Source§fn call_on_all<V, F>(&mut self, sel: &Selector<'_>, callback: F)
fn call_on_all<V, F>(&mut self, sel: &Selector<'_>, callback: F)
sel
. Read moreSource§fn call_on<V, F, R>(&mut self, sel: &Selector<'_>, callback: F) -> Option<R>
fn call_on<V, F, R>(&mut self, sel: &Selector<'_>, callback: F) -> Option<R>
sel
. Read moreSource§fn call_on_name<V, F, R>(&mut self, name: &str, callback: F) -> Option<R>
fn call_on_name<V, F, R>(&mut self, name: &str, callback: F) -> Option<R>
call_on
with a view::Selector::Name
.Source§impl<T> IntoBoxedView for Twhere
T: View,
impl<T> IntoBoxedView for Twhere
T: View,
Source§fn into_boxed_view(self) -> Box<dyn View>
fn into_boxed_view(self) -> Box<dyn View>
Box<View>
.Source§impl<T> Resizable for Twhere
T: View,
impl<T> Resizable for Twhere
T: View,
Source§fn resized(
self,
width: SizeConstraint,
height: SizeConstraint,
) -> ResizedView<Self>
fn resized( self, width: SizeConstraint, height: SizeConstraint, ) -> ResizedView<Self>
self
in a ResizedView
with the given size constraints.Source§fn fixed_size<S>(self, size: S) -> ResizedView<Self>
fn fixed_size<S>(self, size: S) -> ResizedView<Self>
self
into a fixed-size ResizedView
.Source§fn fixed_width(self, width: usize) -> ResizedView<Self>
fn fixed_width(self, width: usize) -> ResizedView<Self>
self
into a fixed-width ResizedView
.Source§fn fixed_height(self, height: usize) -> ResizedView<Self>
fn fixed_height(self, height: usize) -> ResizedView<Self>
self
into a fixed-width ResizedView
.Source§fn full_screen(self) -> ResizedView<Self>
fn full_screen(self) -> ResizedView<Self>
self
into a full-screen ResizedView
.Source§fn full_width(self) -> ResizedView<Self>
fn full_width(self) -> ResizedView<Self>
self
into a full-width ResizedView
.Source§fn full_height(self) -> ResizedView<Self>
fn full_height(self) -> ResizedView<Self>
self
into a full-height ResizedView
.Source§fn max_size<S>(self, size: S) -> ResizedView<Self>
fn max_size<S>(self, size: S) -> ResizedView<Self>
self
into a limited-size ResizedView
.Source§fn max_width(self, max_width: usize) -> ResizedView<Self>
fn max_width(self, max_width: usize) -> ResizedView<Self>
self
into a limited-width ResizedView
.Source§fn max_height(self, max_height: usize) -> ResizedView<Self>
fn max_height(self, max_height: usize) -> ResizedView<Self>
self
into a limited-height ResizedView
.Source§fn min_size<S>(self, size: S) -> ResizedView<Self>
fn min_size<S>(self, size: S) -> ResizedView<Self>
self
into a ResizedView
at least sized size
.Source§fn min_width(self, min_width: usize) -> ResizedView<Self>
fn min_width(self, min_width: usize) -> ResizedView<Self>
self
in a ResizedView
at least min_width
wide.Source§fn min_height(self, min_height: usize) -> ResizedView<Self>
fn min_height(self, min_height: usize) -> ResizedView<Self>
self
in a ResizedView
at least min_height
tall.Source§impl<T> Scrollable for Twhere
T: View,
impl<T> Scrollable for Twhere
T: View,
Source§fn scrollable(self) -> ScrollView<Self>
fn scrollable(self) -> ScrollView<Self>
self
in a ScrollView
.