#[derive(Debug, Eq, PartialEq)]
pub enum Font {
AsciiSmall, UnicodeEuropeanSmall,
UnicodeEuropeanLarge,
UnicodeAsian,
Arabic,
Custom,
}
impl Font {
#[inline]
pub(crate) fn from(str: &str) -> Font {
match str {
"unicode_european_small" => Font::UnicodeEuropeanSmall,
"unicode_european_large" => Font::UnicodeEuropeanLarge,
"unicode_asian" => Font::UnicodeAsian,
"arabic" => Font::Arabic,
_ => Font::Custom,
}
}
#[inline]
pub(crate) fn to_string(&self) -> Result<String, &'static str> {
match &self {
Font::UnicodeEuropeanSmall => Ok("unicode_european_small".to_string()),
Font::UnicodeEuropeanLarge => Ok("unicode_european_large".to_string()),
Font::UnicodeAsian => Ok("unicode_asian".to_string()),
Font::Arabic => Ok("arabic".to_string()),
_ => Err("No string available for this Font"),
}
}
}
#[derive(Debug, Eq, PartialEq)]
pub enum TextDirection {
LeftToRight, RightToLeft,
}