use crate::grid::JunctionChars;
pub struct CharSet {
pub tl: char, pub tr: char, pub bl: char, pub br: char, pub h: char, pub v: char, pub arr_r: char, pub arr_l: char, pub arr_d: char, pub arr_u: char, pub arr_dr: char, pub arr_dl: char, pub arr_ur: char, pub arr_ul: char, pub rtl: char,
pub rtr: char,
pub rbl: char,
pub rbr: char,
pub ml: char, pub mr: char, pub dh: char,
pub dv: char,
pub dtl: char,
pub dtr: char,
pub dbl: char,
pub dbr: char,
pub cross: char, pub t_up: char, pub t_down: char, }
pub const UNICODE_CHARS: CharSet = CharSet {
tl: '┌',
tr: '┐',
bl: '└',
br: '┘',
h: '─',
v: '│',
arr_r: '▶',
arr_l: '◀',
arr_d: '▼',
arr_u: '▲',
arr_dr: '◢',
arr_dl: '◣',
arr_ur: '◥',
arr_ul: '◤',
rtl: '╭',
rtr: '╮',
rbl: '╰',
rbr: '╯',
ml: '├',
mr: '┤',
dh: '═',
dv: '║',
dtl: '╔',
dtr: '╗',
dbl: '╚',
dbr: '╝',
cross: '┼',
t_up: '┴',
t_down: '┬',
};
pub const ASCII_CHARS: CharSet = CharSet {
tl: '+',
tr: '+',
bl: '+',
br: '+',
h: '-',
v: '|',
arr_r: '>',
arr_l: '<',
arr_d: 'v',
arr_u: '^',
arr_dr: '\\',
arr_dl: '/',
arr_ur: '/',
arr_ul: '\\',
rtl: '+',
rtr: '+',
rbl: '+',
rbr: '+',
ml: '+',
mr: '+',
dh: '=',
dv: '#',
dtl: '#',
dtr: '#',
dbl: '#',
dbr: '#',
cross: '+',
t_up: '+',
t_down: '+',
};
impl CharSet {
pub fn to_junction_chars(&self) -> JunctionChars {
JunctionChars {
cross: self.cross,
t_up: self.t_up,
t_down: self.t_down,
ml: self.ml,
mr: self.mr,
}
}
}