mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-06 19:56:42 +01:00
implement phrase_next/phrase_prev
This commit is contained in:
parent
05e0299f5f
commit
6accb265d9
1 changed files with 22 additions and 44 deletions
|
|
@ -309,52 +309,30 @@ impl<E: Engine> Arrangement<E> {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
pub fn phrase_next (&mut self) {
|
pub fn phrase_next (&mut self) {
|
||||||
todo!("phrase_next");
|
if let ArrangementFocus::Clip(track, scene) = self.selected {
|
||||||
//let track_index = self.selected.track();
|
if let Some(ref mut phrase) = self.scenes[scene].clips[track] {
|
||||||
//let scene_index = self.selected.scene();
|
let phrases = self.phrases.read().unwrap();
|
||||||
//track_index
|
let index = phrases.index_of(&*phrase.read().unwrap());
|
||||||
//.and_then(|index|self.tracks.get_mut(index).map(|track|(index, track)))
|
if let Some(index) = index {
|
||||||
//.and_then(|(track_index, track)|{
|
if index < phrases.phrases.len().saturating_sub(1) {
|
||||||
//let phrases = track.phrases.len();
|
*phrase = phrases.phrases[index + 1].clone();
|
||||||
//scene_index
|
}
|
||||||
//.and_then(|index|self.scenes.get_mut(index))
|
}
|
||||||
//.and_then(|scene|{
|
}
|
||||||
//if let Some(phrase_index) = scene.clips[track_index] {
|
}
|
||||||
//if phrase_index >= phrases - 1 {
|
|
||||||
//scene.clips[track_index] = None;
|
|
||||||
//} else {
|
|
||||||
//scene.clips[track_index] = Some(phrase_index + 1);
|
|
||||||
//}
|
|
||||||
//} else if phrases > 0 {
|
|
||||||
//scene.clips[track_index] = Some(0);
|
|
||||||
//}
|
|
||||||
//Some(())
|
|
||||||
//})
|
|
||||||
//});
|
|
||||||
}
|
}
|
||||||
pub fn phrase_prev (&mut self) {
|
pub fn phrase_prev (&mut self) {
|
||||||
todo!("phrase_prev");
|
if let ArrangementFocus::Clip(track, scene) = self.selected {
|
||||||
//let track_index = self.selected.track();
|
if let Some(ref mut phrase) = self.scenes[scene].clips[track] {
|
||||||
//let scene_index = self.selected.scene();
|
let phrases = self.phrases.read().unwrap();
|
||||||
//track_index
|
let index = phrases.index_of(&*phrase.read().unwrap());
|
||||||
//.and_then(|index|self.tracks.get_mut(index).map(|track|(index, track)))
|
if let Some(index) = index {
|
||||||
//.and_then(|(track_index, track)|{
|
if index > 0 {
|
||||||
//let phrases = track.phrases.len();
|
*phrase = phrases.phrases[index - 1].clone();
|
||||||
//scene_index
|
}
|
||||||
//.and_then(|index|self.scenes.get_mut(index))
|
}
|
||||||
//.and_then(|scene|{
|
}
|
||||||
//if let Some(phrase_index) = scene.clips[track_index] {
|
}
|
||||||
//scene.clips[track_index] = if phrase_index == 0 {
|
|
||||||
//None
|
|
||||||
//} else {
|
|
||||||
//Some(phrase_index - 1)
|
|
||||||
//};
|
|
||||||
//} else if phrases > 0 {
|
|
||||||
//scene.clips[track_index] = Some(phrases - 1);
|
|
||||||
//}
|
|
||||||
//Some(())
|
|
||||||
//})
|
|
||||||
//});
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
impl<E: Engine> ArrangementTrack<E> {
|
impl<E: Engine> ArrangementTrack<E> {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue