use minui::{Color, ColorPair, Event, Result, TerminalWindow, Window};
fn main() -> Result<()> {
let mut window = TerminalWindow::new()?;
window.clear()?;
window.write_str(0, 0, "Color Demo (press 'q' to quit)")?;
let colors = [
Color::Red,
Color::Green,
Color::Yellow,
Color::Blue,
Color::Magenta,
Color::Cyan,
Color::White,
];
for (i, &color) in colors.iter().enumerate() {
let color_pair = ColorPair::new(color, Color::Black);
window.write_str_colored(
2, (i as u16) * 10, &format!("{:?}", color),
color_pair,
)?;
}
window.write_str_colored(
4,
0,
"Error: Something went wrong!",
ColorPair::new(Color::Red, Color::Black),
)?;
window.write_str_colored(
5,
0,
"Success: Operation completed!",
ColorPair::new(Color::Green, Color::Black),
)?;
window.write_str_colored(
6,
0,
"Warning: Disk space low",
ColorPair::new(Color::Yellow, Color::Black),
)?;
window.write_str_colored(
7,
0,
"URGENT: System failure! jk :)",
ColorPair::new(Color::Black, Color::Red),
)?;
loop {
match window.get_input()? {
Event::Character('q') => break,
_ => continue,
}
}
Ok(())
}