Skip to main content

ScrollbackWindow

Struct ScrollbackWindow 

Source
pub struct ScrollbackWindow {
    pub total_lines: usize,
    pub max_scroll_offset: usize,
    pub scroll_offset_from_bottom: usize,
    pub viewport_start: usize,
    pub viewport_end: usize,
    pub render_start: usize,
    pub render_end: usize,
}
Expand description

Computed visible/render window over scrollback for virtualized rendering.

Indexes are in scrollback space (0 = oldest, total_lines = one past newest).

Fields§

§total_lines: usize

Total lines currently stored in scrollback.

§max_scroll_offset: usize

Maximum legal scroll offset from the newest viewport position.

§scroll_offset_from_bottom: usize

Clamped scroll offset from the newest viewport position.

§viewport_start: usize

Visible viewport start (inclusive).

§viewport_end: usize

Visible viewport end (exclusive).

§render_start: usize

Render start including overscan (inclusive).

§render_end: usize

Render end including overscan (exclusive).

Implementations§

Source§

impl ScrollbackWindow

Source

pub fn viewport_range(self) -> Range<usize>

Visible viewport range.

Source

pub fn render_range(self) -> Range<usize>

Render range including overscan.

Source

pub fn viewport_len(self) -> usize

Number of visible viewport lines.

Source

pub fn render_len(self) -> usize

Number of lines in the render range (viewport + overscan).

Trait Implementations§

Source§

impl Clone for ScrollbackWindow

Source§

fn clone(&self) -> ScrollbackWindow

Returns a duplicate of the value. Read more
1.0.0 · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for ScrollbackWindow

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl PartialEq for ScrollbackWindow

Source§

fn eq(&self, other: &ScrollbackWindow) -> bool

Tests for self and other values to be equal, and is used by ==.
1.0.0 · Source§

fn ne(&self, other: &Rhs) -> bool

Tests for !=. The default implementation is almost always sufficient, and should not be overridden without very good reason.
Source§

impl Copy for ScrollbackWindow

Source§

impl Eq for ScrollbackWindow

Source§

impl StructuralPartialEq for ScrollbackWindow

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = Infallible

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.