mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-09 05:06:43 +01:00
implement deleting of tracks and scenes
This commit is contained in:
parent
0b71a57ead
commit
a0eef1f626
2 changed files with 47 additions and 50 deletions
|
|
@ -97,6 +97,26 @@ impl<E: Engine> Arranger<E> {
|
|||
}
|
||||
Ok(Some(true))
|
||||
}
|
||||
pub fn rename_selected (&mut self) {
|
||||
let Arrangement { selected, ref name, ref tracks, ref scenes, .. } = self.arrangement;
|
||||
todo!("rename selected");
|
||||
//self.modal = match selected {
|
||||
//ArrangementFocus::Mix => {
|
||||
//Some(Box::new(ArrangerRenameModal::new(selected, &*name.read().unwrap())))
|
||||
//},
|
||||
//ArrangementFocus::Track(t) => {
|
||||
//Some(Box::new(ArrangerRenameModal::new(selected, &*tracks[t].name.read().unwrap())))
|
||||
//},
|
||||
//ArrangementFocus::Scene(s) => {
|
||||
//Some(Box::new(ArrangerRenameModal::new(selected, &*scenes[s].name.read().unwrap())))
|
||||
//},
|
||||
//ArrangementFocus::Clip(t, s) => if let Some(ref clip) = scenes[s].clips[t] {
|
||||
//Some(Box::new(ArrangerRenameModal::new(selected, &clip.read().unwrap().name)))
|
||||
//} else {
|
||||
//None
|
||||
//}
|
||||
//};
|
||||
}
|
||||
}
|
||||
/// Focus layout of arranger app
|
||||
impl<E: Engine> FocusGrid<ArrangerFocus> for Arranger<E> {
|
||||
|
|
@ -260,7 +280,12 @@ impl<E: Engine> Arrangement<E> {
|
|||
Ok(&mut self.tracks[index])
|
||||
}
|
||||
pub fn track_del (&mut self) {
|
||||
unimplemented!("Arranger::track_del");
|
||||
if let Some(index) = self.selected.track() {
|
||||
self.tracks.remove(index);
|
||||
for scene in self.scenes.iter_mut() {
|
||||
scene.clips.remove(index);
|
||||
}
|
||||
}
|
||||
}
|
||||
pub fn track_default_name (&self) -> String {
|
||||
format!("Track {}", self.tracks.len() + 1)
|
||||
|
|
@ -299,7 +324,9 @@ impl<E: Engine> Arrangement<E> {
|
|||
Ok(&mut self.scenes[index])
|
||||
}
|
||||
pub fn scene_del (&mut self) {
|
||||
unimplemented!("Arranger::scene_del");
|
||||
if let Some(index) = self.selected.scene() {
|
||||
self.scenes.remove(index);
|
||||
}
|
||||
}
|
||||
pub fn scene_default_name (&self) -> String {
|
||||
format!("Scene {}", self.scenes.len() + 1)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue