pub struct Grid { /* private fields */ }Available on crate feature
terminal only.Expand description
Grid with VecDeque-based scrollback
Layout: [scrollback_rows… | visible_rows…] row0() calculates where visible area starts
Implementations§
Source§impl Grid
impl Grid
Sourcepub fn scrollback(&self) -> usize
pub fn scrollback(&self) -> usize
Get current scrollback offset
Sourcepub fn scrollback_len(&self) -> usize
pub fn scrollback_len(&self) -> usize
Get maximum scrollback length
Sourcepub fn set_scrollback(&mut self, offset: usize)
pub fn set_scrollback(&mut self, offset: usize)
Set scrollback offset
Sourcepub fn scroll_screen_up(&mut self, n: usize)
pub fn scroll_screen_up(&mut self, n: usize)
Scroll screen up (view older content)
Sourcepub fn scroll_screen_down(&mut self, n: usize)
pub fn scroll_screen_down(&mut self, n: usize)
Scroll screen down (view newer content)
Sourcepub fn visible_rows(&self) -> impl Iterator<Item = &Row>
pub fn visible_rows(&self) -> impl Iterator<Item = &Row>
Get visible rows iterator
Sourcepub fn cell(&self, row: usize, col: usize) -> Option<&Cell>
pub fn cell(&self, row: usize, col: usize) -> Option<&Cell>
Get cell at position (relative to visible area)
Sourcepub fn cell_mut(&mut self, row: usize, col: usize) -> Option<&mut Cell>
pub fn cell_mut(&mut self, row: usize, col: usize) -> Option<&mut Cell>
Get mutable cell at position (relative to current visible bottom)
Sourcepub fn scroll_up(&mut self, count: usize)
pub fn scroll_up(&mut self, count: usize)
Scroll content up (add new line at bottom, old line goes to scrollback)
Trait Implementations§
Auto Trait Implementations§
impl Freeze for Grid
impl RefUnwindSafe for Grid
impl Send for Grid
impl Sync for Grid
impl Unpin for Grid
impl UnwindSafe for Grid
Blanket Implementations§
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
Mutably borrows from an owned value. Read more
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
Source§impl<T> Downcast for Twhere
T: Any,
impl<T> Downcast for Twhere
T: Any,
Source§fn into_any(self: Box<T>) -> Box<dyn Any>
fn into_any(self: Box<T>) -> Box<dyn Any>
Convert
Box<dyn Trait> (where Trait: Downcast) to Box<dyn Any>. Box<dyn Any> can
then be further downcast into Box<ConcreteType> where ConcreteType implements Trait.Source§fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
fn into_any_rc(self: Rc<T>) -> Rc<dyn Any>
Convert
Rc<Trait> (where Trait: Downcast) to Rc<Any>. Rc<Any> can then be
further downcast into Rc<ConcreteType> where ConcreteType implements Trait.Source§fn as_any(&self) -> &(dyn Any + 'static)
fn as_any(&self) -> &(dyn Any + 'static)
Convert
&Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &Any’s vtable from &Trait’s.Source§fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
fn as_any_mut(&mut self) -> &mut (dyn Any + 'static)
Convert
&mut Trait (where Trait: Downcast) to &Any. This is needed since Rust cannot
generate &mut Any’s vtable from &mut Trait’s.Source§impl<T> DowncastSync for T
impl<T> DowncastSync for T
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more