errors fixed, renders nothing :(

This commit is contained in:
🪞👃🪞 2024-09-07 18:43:24 +03:00
parent b3f0f60400
commit 4cca03352a
9 changed files with 47 additions and 44 deletions

View file

@ -99,6 +99,11 @@ impl ArrangerViewMode {
}
}
}
impl Layout<Tui> for Arranger<Tui> {
fn layout (&self, area: [u16;4]) -> Perhaps<[u16;4]> {
todo!()
}
}
/// Render arranger to terminal
impl Render<Tui> for Arranger<Tui> {
fn render (&self, to: &mut Tui) -> Perhaps<[u16;4]> {

View file

@ -1,5 +1,10 @@
use crate::*;
impl Layout<Tui> for Sequencer {
fn layout (&self, area: [u16;4]) -> Perhaps<[u16;4]> {
todo!()
}
}
impl<'a> Render<Tui> for Sequencer {
fn render (&self, to: &mut Tui) -> Perhaps<[u16;4]> {
self.horizontal_draw(to)?;

View file

@ -5,19 +5,16 @@ impl Sequencer {
const H_KEYS_OFFSET: usize = 5;
pub(crate) fn horizontal_draw <'a> (&self, to: &mut Tui) -> Usually<()> {
let mut area = to.area();
let area = to.area();
Split::down()
.add_ref(&SequenceName(&self))
.add_ref(&SequenceRange)
.add_ref(&SequenceLoopRange)
.add_ref(&SequenceNoteRange)
.render(to.with_area(area.x(), area.y(), area.h(), 10))?;
area.x = area.x() + 10;
area.width = area.w().saturating_sub(10);
area.height = area.h().min(66);
.render(to.with_area(area.x(), area.y(), 10, area.h()))?;
let area = [area.x() + 10, area.y(), area.w().saturating_sub(10), area.h().min(66)];
Lozenge(Style::default().fg(Nord::BG2)).draw(to.with_rect(area))?;
area.x = area.x() + 1;
area.width = area.w().saturating_sub(1);
let area = [area.x() + 1, area.y(), area.w().saturating_sub(1), area.h()];
Layered::new()
.add_ref(&SequenceKeys(&self))
.add_ref(&self.phrase.as_ref().map(|phrase|SequenceTimer(&self, phrase.clone())))

View file

@ -2,22 +2,21 @@ use crate::*;
const CORNERS: Corners = Corners(NOT_DIM_GREEN);
impl Layout<Tui> for TransportToolbar {
fn layout (&self, area: [u16;4]) -> Perhaps<[u16;4]> {
Ok(Some([area.x(), area.y(), area.w(), 2]))
}
}
impl Render<Tui> for TransportToolbar {
fn render (&self, to: &mut Tui) -> Perhaps<[u16;4]> {
let area = to.area();
let area = [area.x(), area.y(), area.w(), 2];
let area = Split::right()
Split::right()
.add_ref(&self.playing)
.add_ref(&self.bpm)
.add_ref(&self.quant)
.add_ref(&self.sync)
.add_ref(&self.clock)
.render(to.with_rect(area))?;
//if self.is_focused() {
//fill_bg(buf, area, COLOR_BG0);
//CORNERS_DIM.draw(buf, area)?;
//}
Ok(area)
.render(to.with_rect(self.layout(to.area())?.unwrap()))
}
}