pub struct SpannedConfig { /* private fields */ }
Expand description
This structure represents a settings of a grid.
grid: crate::Grid.
Implementations§
Source§impl SpannedConfig
impl SpannedConfig
Sourcepub fn set_margin(&mut self, margin: Sides<Indent>)
pub fn set_margin(&mut self, margin: Sides<Indent>)
Set a margin of a grid.
Sourcepub fn set_margin_color(&mut self, margin: Sides<Option<ANSIBuf>>)
pub fn set_margin_color(&mut self, margin: Sides<Option<ANSIBuf>>)
Set a color of margin of a grid.
Sourcepub fn set_margin_offset(&mut self, margin: Sides<Offset>)
pub fn set_margin_offset(&mut self, margin: Sides<Offset>)
Set an offset of margin of a grid.
Sourcepub fn get_margin(&self) -> Sides<Indent>
pub fn get_margin(&self) -> Sides<Indent>
Returns a margin value currently set.
Sourcepub fn get_margin_color(&self) -> Sides<Option<&ANSIBuf>>
pub fn get_margin_color(&self) -> Sides<Option<&ANSIBuf>>
Returns a margin color value currently set.
Sourcepub fn get_margin_offset(&self) -> Sides<Offset>
pub fn get_margin_offset(&self) -> Sides<Offset>
Returns a margin offset value currently set.
Sourcepub fn remove_borders(&mut self)
pub fn remove_borders(&mut self)
Removes border changes.
Sourcepub fn remove_borders_colors(&mut self)
pub fn remove_borders_colors(&mut self)
Removes border changes.
Sourcepub fn remove_color_line_horizontal(&mut self)
pub fn remove_color_line_horizontal(&mut self)
Removes border changes.
Sourcepub fn remove_color_line_vertical(&mut self)
pub fn remove_color_line_vertical(&mut self)
Removes border changes.
Sourcepub fn remove_horizontal_chars(&mut self)
pub fn remove_horizontal_chars(&mut self)
Removes border changes.
Sourcepub fn remove_vertical_chars(&mut self)
pub fn remove_vertical_chars(&mut self)
Removes border changes.
Sourcepub fn set_borders(&mut self, borders: Borders<char>)
pub fn set_borders(&mut self, borders: Borders<char>)
Set the Borders
value as correct one.
Sourcepub fn get_border_default(&self) -> Option<&char>
pub fn get_border_default(&self) -> Option<&char>
Gets a global border value if set.
Sourcepub fn set_border_default(&mut self, c: char)
pub fn set_border_default(&mut self, c: char)
Set the all Borders
values to a char.
Sourcepub fn get_borders(&self) -> &Borders<char>
pub fn get_borders(&self) -> &Borders<char>
Returns a current Borders
structure.
Sourcepub fn insert_horizontal_line(&mut self, line: usize, val: HorizontalLine<char>)
pub fn insert_horizontal_line(&mut self, line: usize, val: HorizontalLine<char>)
Set the border line by row index.
Row 0
means the top row.
Row grid.count_rows()
means the bottom row.
Sourcepub fn remove_horizontal_line(&mut self, line: usize, count_rows: usize)
pub fn remove_horizontal_line(&mut self, line: usize, count_rows: usize)
Sets off the border line by row index if any were set
Row 0
means the top row.
Row grid.count_rows()
means the bottom row.
Sourcepub fn get_vertical_line(&self, line: usize) -> Option<&VerticalLine<char>>
pub fn get_vertical_line(&self, line: usize) -> Option<&VerticalLine<char>>
Gets a overridden vertical line.
Row 0
means the left row.
Row grid.count_columns()
means the right most row.
Sourcepub fn get_vertical_lines(&self) -> HashMap<usize, VerticalLine<char>>
pub fn get_vertical_lines(&self) -> HashMap<usize, VerticalLine<char>>
Gets all overridden vertical lines.
Row 0
means the top row.
Row grid.count_rows()
means the bottom row.
Sourcepub fn insert_vertical_line(&mut self, line: usize, val: VerticalLine<char>)
pub fn insert_vertical_line(&mut self, line: usize, val: VerticalLine<char>)
Set the border line by column index.
Row 0
means the left row.
Row grid.count_columns()
means the right most row.
Sourcepub fn remove_vertical_line(&mut self, line: usize, count_columns: usize)
pub fn remove_vertical_line(&mut self, line: usize, count_columns: usize)
Sets off the border line by column index if any were set
Row 0
means the left row.
Row grid.count_columns()
means the right most row.
Sourcepub fn get_horizontal_line(&self, line: usize) -> Option<&HorizontalLine<char>>
pub fn get_horizontal_line(&self, line: usize) -> Option<&HorizontalLine<char>>
Gets a overridden line.
Row 0
means the top row.
Row grid.count_rows()
means the bottom row.
Sourcepub fn get_horizontal_lines(&self) -> HashMap<usize, HorizontalLine<char>>
pub fn get_horizontal_lines(&self) -> HashMap<usize, HorizontalLine<char>>
Gets all overridden lines.
Row 0
means the top row.
Row grid.count_rows()
means the bottom row.
Sourcepub fn set_horizontal_char(&mut self, pos: Position, offset: Offset, c: char)
pub fn set_horizontal_char(&mut self, pos: Position, offset: Offset, c: char)
Override a character on a horizontal line.
If borders are not set the char won’t be used.
It takes not cell position but line as row and column of a cell; So its range is line <= count_rows && col < count_columns.
Sourcepub fn lookup_horizontal_char(
&self,
pos: Position,
offset: usize,
end: usize,
) -> Option<char>
pub fn lookup_horizontal_char( &self, pos: Position, offset: usize, end: usize, ) -> Option<char>
Get a list of overridden chars in a horizontal border.
It takes not cell position but line as row and column of a cell; So its range is line <= count_rows && col < count_columns.
Sourcepub fn is_overridden_horizontal(&self, pos: Position) -> bool
pub fn is_overridden_horizontal(&self, pos: Position) -> bool
Checks if there any char in a horizontal border being overridden.
It takes not cell position but line as row and column of a cell; So its range is line <= count_rows && col < count_columns.
Sourcepub fn remove_overridden_horizontal(&mut self, pos: Position)
pub fn remove_overridden_horizontal(&mut self, pos: Position)
Removes a list of overridden chars in a horizontal border.
It takes not cell position but line as row and column of a cell; So its range is line <= count_rows && col < count_columns.
Sourcepub fn set_vertical_char(&mut self, pos: Position, offset: Offset, c: char)
pub fn set_vertical_char(&mut self, pos: Position, offset: Offset, c: char)
Override a vertical split line.
If borders are not set the char won’t be used.
It takes not cell position but cell row and column of a line; So its range is row < count_rows && col <= count_columns.
Sourcepub fn lookup_vertical_char(
&self,
pos: Position,
offset: usize,
end: usize,
) -> Option<char>
pub fn lookup_vertical_char( &self, pos: Position, offset: usize, end: usize, ) -> Option<char>
Get a list of overridden chars in a horizontal border.
It takes not cell position but cell row and column of a line; So its range is row < count_rows && col <= count_columns.
Sourcepub fn is_overridden_vertical(&self, pos: Position) -> bool
pub fn is_overridden_vertical(&self, pos: Position) -> bool
Checks if there any char in a horizontal border being overridden.
It takes not cell position but cell row and column of a line; So its range is row < count_rows && col <= count_columns.
Sourcepub fn remove_overridden_vertical(&mut self, pos: Position)
pub fn remove_overridden_vertical(&mut self, pos: Position)
Removes a list of overridden chars in a horizontal border.
It takes not cell position but cell row and column of a line; So its range is row < count_rows && col <= count_columns.
Sourcepub fn set_horizontal_char_color(
&mut self,
pos: Position,
offset: Offset,
c: ANSIBuf,
)
pub fn set_horizontal_char_color( &mut self, pos: Position, offset: Offset, c: ANSIBuf, )
Override a character color on a horizontal line.
Sourcepub fn lookup_horizontal_color(
&self,
pos: Position,
offset: usize,
end: usize,
) -> Option<&ANSIBuf>
pub fn lookup_horizontal_color( &self, pos: Position, offset: usize, end: usize, ) -> Option<&ANSIBuf>
Get a overridden color in a horizontal border.
Sourcepub fn set_vertical_char_color(
&mut self,
pos: Position,
offset: Offset,
c: ANSIBuf,
)
pub fn set_vertical_char_color( &mut self, pos: Position, offset: Offset, c: ANSIBuf, )
Override a character color on a vertical line.
Sourcepub fn lookup_vertical_color(
&self,
pos: Position,
offset: usize,
end: usize,
) -> Option<&ANSIBuf>
pub fn lookup_vertical_color( &self, pos: Position, offset: usize, end: usize, ) -> Option<&ANSIBuf>
Get a overridden color in a vertical border.
Sourcepub fn set_padding(&mut self, entity: Entity, padding: Sides<Indent>)
pub fn set_padding(&mut self, entity: Entity, padding: Sides<Indent>)
Set a padding to a given cells.
Sourcepub fn set_padding_color(
&mut self,
entity: Entity,
padding: Sides<Option<ANSIBuf>>,
)
pub fn set_padding_color( &mut self, entity: Entity, padding: Sides<Option<ANSIBuf>>, )
Set a padding to a given cells.
Sourcepub fn get_padding(&self, pos: Position) -> &Sides<Indent>
pub fn get_padding(&self, pos: Position) -> &Sides<Indent>
Get a padding for a given cell by Position.
Sourcepub fn get_padding_color(&self, pos: Position) -> &Sides<Option<ANSIBuf>>
pub fn get_padding_color(&self, pos: Position) -> &Sides<Option<ANSIBuf>>
Get a padding color for a given cell by Position.
Sourcepub fn set_trim_horizontal(&mut self, entity: Entity, on: bool)
pub fn set_trim_horizontal(&mut self, entity: Entity, on: bool)
Set a formatting to a given cells.
Sourcepub fn get_trim_horizonal(&self, pos: Position) -> bool
pub fn get_trim_horizonal(&self, pos: Position) -> bool
Get a formatting settings for a given cell by Position.
Sourcepub fn set_trim_vertical(&mut self, entity: Entity, on: bool)
pub fn set_trim_vertical(&mut self, entity: Entity, on: bool)
Set a formatting to a given cells.
Sourcepub fn get_trim_vertical(&self, pos: Position) -> bool
pub fn get_trim_vertical(&self, pos: Position) -> bool
Get a formatting settings for a given cell by Position.
Sourcepub fn set_line_alignment(&mut self, entity: Entity, on: bool)
pub fn set_line_alignment(&mut self, entity: Entity, on: bool)
Set a formatting to a given cells.
Sourcepub fn get_line_alignment(&self, pos: Position) -> bool
pub fn get_line_alignment(&self, pos: Position) -> bool
Get a formatting settings for a given cell by Position.
Sourcepub fn get_formatting(&self, pos: Position) -> Formatting
pub fn get_formatting(&self, pos: Position) -> Formatting
Get a formatting settings for a given cell by Position.
Sourcepub fn set_alignment_vertical(
&mut self,
entity: Entity,
alignment: AlignmentVertical,
)
pub fn set_alignment_vertical( &mut self, entity: Entity, alignment: AlignmentVertical, )
Set a vertical alignment to a given cells.
Sourcepub fn get_alignment_vertical(&self, pos: Position) -> &AlignmentVertical
pub fn get_alignment_vertical(&self, pos: Position) -> &AlignmentVertical
Get a vertical alignment for a given cell by Position.
Sourcepub fn set_alignment_horizontal(
&mut self,
entity: Entity,
alignment: AlignmentHorizontal,
)
pub fn set_alignment_horizontal( &mut self, entity: Entity, alignment: AlignmentHorizontal, )
Set a horizontal alignment to a given cells.
Sourcepub fn get_alignment_horizontal(&self, pos: Position) -> &AlignmentHorizontal
pub fn get_alignment_horizontal(&self, pos: Position) -> &AlignmentHorizontal
Get a horizontal alignment for a given cell by Position.
Sourcepub fn set_border(&mut self, pos: Position, border: Border<char>)
pub fn set_border(&mut self, pos: Position, border: Border<char>)
Set border set a border value to all cells in Entity
.
Sourcepub fn get_border(&self, pos: Position, shape: (usize, usize)) -> Border<char>
pub fn get_border(&self, pos: Position, shape: (usize, usize)) -> Border<char>
Returns a border of a cell.
Sourcepub fn get_border_color(
&self,
pos: Position,
shape: (usize, usize),
) -> Border<&ANSIBuf>
pub fn get_border_color( &self, pos: Position, shape: (usize, usize), ) -> Border<&ANSIBuf>
Returns a border color of a cell.
Sourcepub fn set_borders_missing(&mut self, c: char)
pub fn set_borders_missing(&mut self, c: char)
Set a character which will be used in case any misconfiguration of borders.
It will be usde for example when you set a left char for border frame and top but didn’t set a top left corner.
Sourcepub fn get_borders_missing(&self) -> char
pub fn get_borders_missing(&self) -> char
Get a character which will be used in case any misconfiguration of borders.
Sourcepub fn get_border_color_default(&self) -> Option<&ANSIBuf>
pub fn get_border_color_default(&self) -> Option<&ANSIBuf>
Gets a color of all borders on the grid.
Sourcepub fn set_border_color_default(&mut self, clr: ANSIBuf)
pub fn set_border_color_default(&mut self, clr: ANSIBuf)
Sets a color of all borders on the grid.
Sourcepub fn get_color_borders(&self) -> &Borders<ANSIBuf>
pub fn get_color_borders(&self) -> &Borders<ANSIBuf>
Gets colors of a borders carcass on the grid.
Sourcepub fn set_borders_color(&mut self, clrs: Borders<ANSIBuf>)
pub fn set_borders_color(&mut self, clrs: Borders<ANSIBuf>)
Sets colors of border carcass on the grid.
Sourcepub fn set_border_color(&mut self, pos: Position, border: Border<ANSIBuf>)
pub fn set_border_color(&mut self, pos: Position, border: Border<ANSIBuf>)
Sets a color of border of a cell on the grid.
Sourcepub fn remove_border(&mut self, pos: Position, shape: (usize, usize))
pub fn remove_border(&mut self, pos: Position, shape: (usize, usize))
Sets off all borders possible on the Entity
.
It doesn’t changes globally set borders through SpannedConfig::set_borders
.
Sourcepub fn remove_border_color(&mut self, pos: Position, shape: (usize, usize))
pub fn remove_border_color(&mut self, pos: Position, shape: (usize, usize))
Gets a color of border of a cell on the grid.
Sourcepub fn get_justification(&self, pos: Position) -> char
pub fn get_justification(&self, pos: Position) -> char
Get a justification which will be used while expanding cells width/height.
Sourcepub fn get_justification_color(&self, pos: Position) -> Option<&ANSIBuf>
pub fn get_justification_color(&self, pos: Position) -> Option<&ANSIBuf>
Get a justification color which will be used while expanding cells width/height.
None
means no color.
Sourcepub fn set_justification(&mut self, entity: Entity, c: char)
pub fn set_justification(&mut self, entity: Entity, c: char)
Set a justification which will be used while expanding cells width/height.
Sourcepub fn set_justification_color(
&mut self,
entity: Entity,
color: Option<ANSIBuf>,
)
pub fn set_justification_color( &mut self, entity: Entity, color: Option<ANSIBuf>, )
Set a justification color which will be used while expanding cells width/height.
None
removes it.
Sourcepub fn get_column_spans(&self) -> HashMap<Position, usize>
pub fn get_column_spans(&self) -> HashMap<Position, usize>
Get a span value of the cell, if any is set.
Sourcepub fn get_row_spans(&self) -> HashMap<Position, usize>
pub fn get_row_spans(&self) -> HashMap<Position, usize>
Get a span value of the cell, if any is set.
Sourcepub fn get_column_span(&self, pos: Position) -> Option<usize>
pub fn get_column_span(&self, pos: Position) -> Option<usize>
Get a span value of the cell, if any is set.
Sourcepub fn get_row_span(&self, pos: Position) -> Option<usize>
pub fn get_row_span(&self, pos: Position) -> Option<usize>
Get a span value of the cell, if any is set.
Sourcepub fn remove_column_spans(&mut self)
pub fn remove_column_spans(&mut self)
Removes column spans.
Sourcepub fn remove_row_spans(&mut self)
pub fn remove_row_spans(&mut self)
Removes row spans.
Sourcepub fn set_column_span(&mut self, pos: Position, span: usize)
pub fn set_column_span(&mut self, pos: Position, span: usize)
Set a column span to a given cells.
BEWARE
IT’S CALLER RESPONSIBILITY TO MAKE SURE THAT THERE NO INTERSECTIONS IN PLACE AND THE SPAN VALUE IS CORRECT
Sourcepub fn has_column_spans(&self) -> bool
pub fn has_column_spans(&self) -> bool
Verifies if there’s any spans set.
Sourcepub fn set_row_span(&mut self, pos: Position, span: usize)
pub fn set_row_span(&mut self, pos: Position, span: usize)
Set a column span to a given cells.
BEWARE
IT’S CALLER RESPONSIBILITY TO MAKE SURE THAT THERE NO INTERSECTIONS IN PLACE AND THE SPAN VALUE IS CORRECT
Sourcepub fn has_row_spans(&self) -> bool
pub fn has_row_spans(&self) -> bool
Verifies if there’s any spans set.
Sourcepub fn has_border_colors(&self) -> bool
pub fn has_border_colors(&self) -> bool
Verifies if there’s any colors set for a borders.
Sourcepub fn has_offset_chars(&self) -> bool
pub fn has_offset_chars(&self) -> bool
Verifies if there’s any colors set for a borders.
Sourcepub fn has_justification(&self) -> bool
pub fn has_justification(&self) -> bool
Verifies if there’s any colors set for a borders.
Sourcepub fn has_padding(&self) -> bool
pub fn has_padding(&self) -> bool
Verifies if there’s any custom padding set.
Sourcepub fn has_padding_color(&self) -> bool
pub fn has_padding_color(&self) -> bool
Verifies if there’s any custom padding set.
Sourcepub fn has_formatting(&self) -> bool
pub fn has_formatting(&self) -> bool
Verifies if there’s any custom formatting set.
Sourcepub fn has_alignment_vertical(&self) -> bool
pub fn has_alignment_vertical(&self) -> bool
Verifies if there’s any custom alignment vertical set.
Sourcepub fn has_alignment_horizontal(&self) -> bool
pub fn has_alignment_horizontal(&self) -> bool
Verifies if there’s any custom alignment horizontal set.
Sourcepub fn get_intersection(
&self,
pos: Position,
shape: (usize, usize),
) -> Option<char>
pub fn get_intersection( &self, pos: Position, shape: (usize, usize), ) -> Option<char>
Gets an intersection character which would be rendered on the grid.
grid: crate::Grid
Sourcepub fn get_horizontal(&self, pos: Position, count_rows: usize) -> Option<char>
pub fn get_horizontal(&self, pos: Position, count_rows: usize) -> Option<char>
Gets a horizontal character which would be rendered on the grid.
grid: crate::Grid
Sourcepub fn get_vertical(&self, pos: Position, count_columns: usize) -> Option<char>
pub fn get_vertical(&self, pos: Position, count_columns: usize) -> Option<char>
Gets a vertical character which would be rendered on the grid.
grid: crate::Grid
Sourcepub fn get_horizontal_color(
&self,
pos: Position,
count_rows: usize,
) -> Option<&ANSIBuf>
pub fn get_horizontal_color( &self, pos: Position, count_rows: usize, ) -> Option<&ANSIBuf>
Gets a color of a cell horizontal.
Sourcepub fn get_vertical_color(
&self,
pos: Position,
count_columns: usize,
) -> Option<&ANSIBuf>
pub fn get_vertical_color( &self, pos: Position, count_columns: usize, ) -> Option<&ANSIBuf>
Gets a color of a cell vertical.
Sourcepub fn get_intersection_color(
&self,
pos: Position,
shape: (usize, usize),
) -> Option<&ANSIBuf>
pub fn get_intersection_color( &self, pos: Position, shape: (usize, usize), ) -> Option<&ANSIBuf>
Gets a color of a cell vertical.
Sourcepub fn has_horizontal(&self, row: usize, count_rows: usize) -> bool
pub fn has_horizontal(&self, row: usize, count_rows: usize) -> bool
Checks if grid would have a horizontal border with the current configuration.
grid: crate::Grid
Sourcepub fn has_vertical(&self, col: usize, count_columns: usize) -> bool
pub fn has_vertical(&self, col: usize, count_columns: usize) -> bool
Checks if grid would have a vertical border with the current configuration.
grid: crate::Grid
Sourcepub fn count_horizontal(&self, count_rows: usize) -> usize
pub fn count_horizontal(&self, count_rows: usize) -> usize
Calculates an amount of horizontal lines would present on the grid.
grid: crate::Grid
Sourcepub fn count_vertical(&self, count_columns: usize) -> usize
pub fn count_vertical(&self, count_columns: usize) -> usize
Calculates an amount of vertical lines would present on the grid.
grid: crate::Grid
Sourcepub fn is_cell_visible(&self, pos: Position) -> bool
pub fn is_cell_visible(&self, pos: Position) -> bool
The function returns whether the cells will be rendered or it will be hidden because of a span.
Sourcepub fn is_cell_covered_by_row_span(&self, pos: Position) -> bool
pub fn is_cell_covered_by_row_span(&self, pos: Position) -> bool
The function checks if a cell is hidden because of a row span.
Sourcepub fn is_cell_covered_by_column_span(&self, pos: Position) -> bool
pub fn is_cell_covered_by_column_span(&self, pos: Position) -> bool
The function checks if a cell is hidden because of a column span.
Sourcepub fn is_cell_covered_by_both_spans(&self, pos: Position) -> bool
pub fn is_cell_covered_by_both_spans(&self, pos: Position) -> bool
The function checks if a cell is hidden indirectly because of a row and column span combination.
Trait Implementations§
Source§impl Clone for SpannedConfig
impl Clone for SpannedConfig
Source§fn clone(&self) -> SpannedConfig
fn clone(&self) -> SpannedConfig
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source
. Read more