Add Default impl for Cell

Just a bit of cleanup.
This commit is contained in:
Joe Wilm 2016-12-29 21:43:55 -05:00
parent a91a3f2dce
commit 26ac1df0b1
2 changed files with 15 additions and 14 deletions

View File

@ -36,6 +36,17 @@ pub struct Cell {
pub flags: Flags,
}
impl Default for Cell {
fn default() -> Cell {
Cell::new(
' ',
Color::Named(NamedColor::Foreground),
Color::Named(NamedColor::Background)
)
}
}
/// Get the length of occupied cells in a line
pub trait LineLength {
/// Calculate the occupied line length
@ -100,11 +111,10 @@ mod tests {
use grid::Row;
use index::Column;
use ansi::Color;
#[test]
fn line_length_works() {
let template = Cell::new(' ', Color::Indexed(0), Color::Indexed(0));
let template = Cell::default();
let mut row = Row::new(Column(10), &template);
row[Column(5)].c = 'a';
@ -113,7 +123,7 @@ mod tests {
#[test]
fn line_length_works_with_wrapline() {
let template = Cell::new(' ', Color::Indexed(0), Color::Indexed(0));
let template = Cell::default();
let mut row = Row::new(Column(10), &template);
row[Column(9)].flags.insert(super::WRAPLINE);

View File

@ -277,11 +277,7 @@ impl SizeInfo {
impl Term {
pub fn new(size: SizeInfo) -> Term {
let template = Cell::new(
' ',
Color::Named(NamedColor::Foreground),
Color::Named(NamedColor::Background)
);
let template = Cell::default();
let num_cols = size.cols();
let num_lines = size.lines();
@ -1040,7 +1036,6 @@ mod tests {
use super::limit;
use ansi::{Color, NamedColor};
use grid::Grid;
use index::{Line, Column};
use term::{Cell};
@ -1051,11 +1046,7 @@ mod tests {
/// test this property with a T=Cell.
#[test]
fn grid_serde() {
let template = Cell::new(
' ',
Color::Named(NamedColor::Foreground),
Color::Named(NamedColor::Background)
);
let template = Cell::default();
let grid = Grid::new(Line(24), Column(80), &template);
let serialized = serde_json::to_string(&grid).expect("ser");