mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-08 04:36:45 +01:00
show tracks ins and outs
This commit is contained in:
parent
45f57214f1
commit
325492ec42
2 changed files with 52 additions and 63 deletions
|
|
@ -74,11 +74,11 @@ pub struct ArrangementTrack<E: Engine> {
|
|||
/// Name of track
|
||||
pub name: Arc<RwLock<String>>,
|
||||
/// Inputs
|
||||
pub inputs: Vec<()>,
|
||||
pub inputs: Vec<Port<MidiIn>>,
|
||||
/// MIDI player/recorder
|
||||
pub player: PhrasePlayer<E>,
|
||||
/// Outputs
|
||||
pub outputs: Vec<()>,
|
||||
pub outputs: Vec<Port<MidiIn>>,
|
||||
/// Preferred width of track column
|
||||
pub width: usize,
|
||||
/// Identifying color of track
|
||||
|
|
@ -152,9 +152,7 @@ impl<E: Engine> Arranger<E> {
|
|||
Ok(Some(true))
|
||||
}
|
||||
/// Focus the editor with the current phrase
|
||||
pub fn show_phrase (&mut self) {
|
||||
self.editor.show(self.arrangement.phrase().as_ref());
|
||||
}
|
||||
pub fn show_phrase (&mut self) { self.editor.show(self.arrangement.phrase().as_ref()); }
|
||||
/// Focus the editor with the current phrase
|
||||
pub fn edit_phrase (&mut self) {
|
||||
if self.arrangement.phrase().is_none() {
|
||||
|
|
@ -382,18 +380,10 @@ impl<E: Engine> Arrangement<E> {
|
|||
pub fn track_mut (&mut self) -> Option<&mut ArrangementTrack<E>> {
|
||||
self.selected.track().map(|t|self.tracks.get_mut(t)).flatten()
|
||||
}
|
||||
pub fn track_width_inc (&mut self) {
|
||||
self.track_mut().map(|t|t.width_inc());
|
||||
}
|
||||
pub fn track_width_dec (&mut self) {
|
||||
self.track_mut().map(|t|t.width_dec());
|
||||
}
|
||||
pub fn track_next (&mut self) {
|
||||
self.selected.track_next(self.tracks.len() - 1)
|
||||
}
|
||||
pub fn track_prev (&mut self) {
|
||||
self.selected.track_prev()
|
||||
}
|
||||
pub fn track_width_inc (&mut self) { self.track_mut().map(|t|t.width_inc()); }
|
||||
pub fn track_width_dec (&mut self) { self.track_mut().map(|t|t.width_dec()); }
|
||||
pub fn track_next (&mut self) { self.selected.track_next(self.tracks.len() - 1) }
|
||||
pub fn track_prev (&mut self) { self.selected.track_prev() }
|
||||
pub fn track_add (
|
||||
&mut self, name: Option<&str>, color: Option<Color>
|
||||
) -> Usually<&mut ArrangementTrack<E>> {
|
||||
|
|
@ -460,14 +450,10 @@ impl<E: Engine> Arrangement<E> {
|
|||
/// Methods for phrases in arrangement
|
||||
impl<E: Engine> Arrangement<E> {
|
||||
pub fn sequencer (&self) -> Option<&ArrangementTrack<E>> {
|
||||
self.selected.track()
|
||||
.map(|track|self.tracks.get(track))
|
||||
.flatten()
|
||||
self.selected.track().map(|track|self.tracks.get(track)).flatten()
|
||||
}
|
||||
pub fn sequencer_mut (&mut self) -> Option<&mut ArrangementTrack<E>> {
|
||||
self.selected.track()
|
||||
.map(|track|self.tracks.get_mut(track))
|
||||
.flatten()
|
||||
self.selected.track().map(|track|self.tracks.get_mut(track)).flatten()
|
||||
}
|
||||
pub fn phrase (&self) -> Option<Arc<RwLock<Phrase>>> {
|
||||
self.scene()?.clips.get(self.selected.track()?)?.clone()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue