/// Create the renderable cells iterator
///
/// The cursor and terminal mode are required for properly displaying the
/// cursor.
Create the renderable cells iterator
The cursor and terminal mode are required for properly displaying the
cursor.
Create the renderable cells iterator The cursor and terminal mode are required for properly displaying the cursor .
fn new<'b>(
        grid: &'b Grid<Cell>,
        cursor: &'b Point,
        colors: &'b color::List,
        mode: TermMode,
        config: &'b Config,
        selection: Option<RangeInclusive<index::Linear>>,
        cursor_style: CursorStyle,
    ) -> RenderableCellsIter<'b> {
        let cursor_index = Linear(cursor.line.0 * grid.num_cols().0 + cursor.col.0);
        RenderableCellsIter {
            grid,
            cursor,
            cursor_index,
            mode,
            line: Line(0),
            column: Column(0),
            selection,
            config,
            colors,
            cursor_cells: ArrayDeque::new(),
        }.initialize(cursor_style)
    }
fn new < ' b > ( grid : & ' b Grid < Cell > , cursor : & ' b Point , colors : & ' b color :: List , mode : TermMode , config : & ' b Config , selection : Option < RangeInclusive < index :: Linear > > , cursor_style : CursorStyle , ) -> RenderableCellsIter < ' b > { let cursor_index = Linear ( cursor . line . 0 * grid . num_cols ( ) . 0 + cursor . col . 0 ) ; RenderableCellsIter { grid , cursor , cursor_index , mode , line : Line ( 0 ) , column : Column ( 0 ) , selection , config , colors , cursor_cells : ArrayDeque :: new ( ) , } . initialize ( cursor_style ) }
Create the renderable cells iterator
The cursor and terminal mode are required for properly displaying the
cursor.
Create the renderable cells iterator The cursor and terminal mode are required for properly displaying the cursor .
grid
&'b Grid<Cell>
cursor
&'b Point
colors
&'b color::List
mode
TermMode
config
&'b Config
selection
Option<RangeInclusive<index::Linear>>
cursor_style
CursorStyle