wip: render: remove render! macro

This commit is contained in:
🪞👃🪞 2024-09-04 03:20:58 +03:00
parent bf165c6be1
commit 1d4db3c629
13 changed files with 337 additions and 304 deletions

View file

@ -35,30 +35,32 @@ impl ArrangerRenameModal {
}
}
render!(ArrangerRenameModal |self, buf, area| {
let y = area.y + area.height / 2;
let bg_area = Rect {
x: 1,
y: y - 1,
width: area.width - 2,
height: 3
};
fill_bg(buf, bg_area, Nord::BG0);
Lozenge(Style::default().bold().white().dim()).draw(buf, bg_area)?;
let label = match self.target {
ArrangerFocus::Mix => "Rename project:",
ArrangerFocus::Track(_) => "Rename track:",
ArrangerFocus::Scene(_) => "Rename scene:",
ArrangerFocus::Clip(_, _) => "Rename clip:",
};
let style = Some(Style::default().not_bold().white().not_dim());
label.blit(buf, area.x + 3, y, style)?;
let style = Some(Style::default().bold().white().not_dim());
self.value.blit(buf, area.x + 3 + label.len() as u16 + 1, y, style)?;
let style = Some(Style::default().bold().white().not_dim().reversed());
"".blit(buf, area.x + 3 + label.len() as u16 + 1 + self.cursor as u16, y, style)?;
Ok(area)
});
impl<'a> Render<TuiOutput<'a>, Rect> for ArrangerRenameModal {
fn render (&self, to: &mut TuiOutput<'a>) -> Usually<Rect> {
let y = area.y + area.height / 2;
let bg_area = Rect {
x: 1,
y: y - 1,
width: area.width - 2,
height: 3
};
fill_bg(buf, bg_area, Nord::BG0);
Lozenge(Style::default().bold().white().dim()).draw(buf, bg_area)?;
let label = match self.target {
ArrangerFocus::Mix => "Rename project:",
ArrangerFocus::Track(_) => "Rename track:",
ArrangerFocus::Scene(_) => "Rename scene:",
ArrangerFocus::Clip(_, _) => "Rename clip:",
};
let style = Some(Style::default().not_bold().white().not_dim());
label.blit(buf, area.x + 3, y, style)?;
let style = Some(Style::default().bold().white().not_dim());
self.value.blit(buf, area.x + 3 + label.len() as u16 + 1, y, style)?;
let style = Some(Style::default().bold().white().not_dim().reversed());
"".blit(buf, area.x + 3 + label.len() as u16 + 1 + self.cursor as u16, y, style)?;
Ok(area)
}
}
handle!(ArrangerRenameModal |self, e| {
match e {