1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
//! Display attributes
/// Display rotation.
///
/// Note that 90º and 270º rotations are not supported by
// [`TerminalMode`](../mode/terminal/struct.TerminalMode.html).
#[derive(Clone, Copy)]
pub enum DisplayRotation {
/// No rotation, normal display
Rotate0,
/// Rotate by 90 degress clockwise
Rotate90,
/// Rotate by 180 degress clockwise
Rotate180,
/// Rotate 270 degress clockwise
Rotate270,
}
/// Display size enumeration
#[derive(Clone, Copy)]
pub enum DisplaySize {
/// 128 by 128 pixels
Display128x128,
/// 128 by 96 pixels
Display128x96,
}
impl DisplaySize {
/// Get integral dimensions from DisplaySize
// TODO: Use whatever vec2 impl I decide to use here
pub fn dimensions(&self) -> (u8, u8) {
match *self {
DisplaySize::Display128x128 => (128, 128),
DisplaySize::Display128x96 => (128, 96),
}
}
}