diff options
Diffstat (limited to 'examples/async.rs')
-rw-r--r-- | examples/async.rs | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/examples/async.rs b/examples/async.rs new file mode 100644 index 0000000..e8e4282 --- /dev/null +++ b/examples/async.rs @@ -0,0 +1,29 @@ +use textmode::Textmode as _; + +async fn run(tm: &mut textmode::r#async::Textmode) -> std::io::Result<()> { + tm.move_to(5, 5); + tm.write_str("foo"); + smol::Timer::after(std::time::Duration::from_secs(2)).await; + tm.refresh().await?; + smol::Timer::after(std::time::Duration::from_secs(2)).await; + + tm.move_to(8, 8); + tm.set_fgcolor(textmode::color::GREEN); + tm.write_str("bar"); + tm.move_to(11, 11); + tm.set_fgcolor(vt100::Color::Default); + tm.write_str("baz"); + smol::Timer::after(std::time::Duration::from_secs(2)).await; + tm.refresh().await?; + smol::Timer::after(std::time::Duration::from_secs(2)).await; + Ok(()) +} + +fn main() { + smol::block_on(async { + let mut tm = textmode::r#async::Textmode::new().await.unwrap(); + let e = run(&mut tm).await; + tm.cleanup().await.unwrap(); + e.unwrap(); + }); +} |