mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-07 12:16:42 +01:00
arranger: populate rename modal
This commit is contained in:
parent
c8bdee060c
commit
8e22cb6eb5
2 changed files with 18 additions and 5 deletions
|
|
@ -148,6 +148,14 @@ impl Arranger {
|
|||
format!("Scene {}", self.scenes.len() + 1)
|
||||
}
|
||||
pub fn rename_selected (&mut self) {
|
||||
self.modal = Some(Box::new(ArrangerRenameModal::new(self.selected)));
|
||||
self.modal = Some(Box::new(ArrangerRenameModal::new(
|
||||
self.selected,
|
||||
match self.selected {
|
||||
ArrangerFocus::Mix => self.name.clone(),
|
||||
ArrangerFocus::Track(t) => self.tracks[t].name.clone(),
|
||||
ArrangerFocus::Scene(s) => self.scenes[s].name.clone(),
|
||||
ArrangerFocus::Clip(t, s) => self.tracks[t].phrases[s].read().unwrap().name.clone(),
|
||||
}
|
||||
)));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
use crate::*;
|
||||
|
||||
/// Appears on first run (i.e. if state dir is missing).
|
||||
pub struct ArrangerRenameModal(bool, ArrangerFocus);
|
||||
pub struct ArrangerRenameModal(bool, ArrangerFocus, String);
|
||||
|
||||
impl ArrangerRenameModal {
|
||||
pub fn new (focus: ArrangerFocus) -> Self {
|
||||
Self(false, focus)
|
||||
pub fn new (focus: ArrangerFocus, name: String) -> Self {
|
||||
Self(false, focus, name)
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -23,7 +23,12 @@ render!(ArrangerRenameModal |self, buf, area| {
|
|||
ArrangerFocus::Scene(_) => "Rename scene:",
|
||||
ArrangerFocus::Clip(_, _) => "Rename clip:",
|
||||
};
|
||||
label.blit(buf, area.x + 3, y, Some(Style::default().not_bold().white().not_dim()))?;
|
||||
label.blit(
|
||||
buf, area.x + 3, y, Some(Style::default().not_bold().white().not_dim())
|
||||
)?;
|
||||
self.2.blit(
|
||||
buf, area.x + 3 + label.len() as u16 + 1, y, Some(Style::default().bold().white().not_dim())
|
||||
)?;
|
||||
Ok(area)
|
||||
});
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue