use main loop with input everywhere

This commit is contained in:
🪞👃🪞 2024-05-29 11:32:26 +03:00
parent d6bf840a1f
commit 7dd5f7f488
16 changed files with 301 additions and 168 deletions

View file

@ -6,33 +6,30 @@ pub fn render (
stdout: &mut Stdout,
mut offset: (u16, u16)
) -> Result<(), Box<dyn Error>> {
use crossterm::{*, cursor::{Hide, MoveTo}, style::{*, Stylize}};
let (w, h) = crate::render::render_toolbar_vertical(stdout, offset, &ACTIONS)?;
offset.0 = offset.0 + w + 2;
let move_to = |col, row| MoveTo(offset.0 + col, offset.1 + row);
stdout.queue(move_to( 1, 0))?.queue(
Print("Project: ")
)?.queue(move_to(10, 0))?.queue(
PrintStyledContent("The Quick Brown Fox - Jumping Over Lazy Dogs".white().bold())
)?.queue(move_to( 1, 2))?.queue(
)?.queue(move_to( 1, 1))?.queue(
Print("Rate: ")
)?.queue(move_to( 7, 2))?.queue(
)?.queue(move_to( 7, 1))?.queue(
PrintStyledContent("48000Hz".white().bold())
)?.queue(move_to(20, 2))?.queue(
)?.queue(move_to(20, 1))?.queue(
Print("BPM: ")
)?.queue(move_to(25, 2))?.queue(
)?.queue(move_to(25, 1))?.queue(
PrintStyledContent("120.34".white().bold())
)?.queue(move_to(35, 2))?.queue(
)?.queue(move_to(35, 1))?.queue(
Print("Signature: ")
)?.queue(move_to(46, 2))?.queue(
)?.queue(move_to(46, 1))?.queue(
PrintStyledContent("4 / 4".white().bold())
)?.queue(move_to( 1, 4))?.queue(
)?.queue(move_to( 1, 2))?.queue(
Print("Time: ")
)?.queue(move_to( 7, 4))?.queue(
)?.queue(move_to( 7, 2))?.queue(
PrintStyledContent("1m 23.456s".white().bold())
)?.queue(move_to(20, 4))?.queue(
)?.queue(move_to(20, 2))?.queue(
Print("Beat: ")
)?.queue(move_to(26, 4))?.queue(
)?.queue(move_to(26, 2))?.queue(
PrintStyledContent("30x 3/4".white().bold())
)?;
Ok(())