mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-08 04:36:45 +01:00
67 lines
1.9 KiB
Rust
67 lines
1.9 KiB
Rust
use crate::*;
|
|
|
|
impl Handle<Tui> for TransportToolbar {
|
|
fn handle (&mut self, from: &Tui) -> Perhaps<bool> {
|
|
Ok(
|
|
from.key(KeyCode::Right).does(||self.focus_next())?
|
|
||
|
|
from.key(KeyCode::Left).does(||self.focus_prev())?
|
|
||
|
|
from.key(KeyCode::Char(' ')).does(||self.toggle_play())?
|
|
)
|
|
}
|
|
}
|
|
|
|
impl Handle<Tui> for TransportPlayPauseButton {
|
|
fn handle (&mut self, from: &Tui) -> Perhaps<bool> {
|
|
Ok(None)
|
|
}
|
|
}
|
|
|
|
impl Handle<Tui> for TransportBPM {
|
|
fn handle (&mut self, from: &Tui) -> Perhaps<bool> {
|
|
//TransportFocus::BPM => {
|
|
//transport.timebase.bpm.fetch_add(1.0, Ordering::Relaxed);
|
|
//},
|
|
//TransportFocus::BPM => {
|
|
//transport.timebase.bpm.fetch_sub(1.0, Ordering::Relaxed);
|
|
//},
|
|
Ok(None)
|
|
}
|
|
}
|
|
|
|
impl Handle<Tui> for TransportQuantize {
|
|
fn handle (&mut self, from: &Tui) -> Perhaps<bool> {
|
|
//TransportFocus::Quant => {
|
|
//transport.quant.value = next_note_length(transport.quant)
|
|
//},
|
|
//TransportFocus::Quant => {
|
|
//transport.quant.value = prev_note_length(transport.quant);
|
|
//},
|
|
Ok(None)
|
|
}
|
|
}
|
|
|
|
impl Handle<Tui> for TransportSync {
|
|
fn handle (&mut self, from: &Tui) -> Perhaps<bool> {
|
|
//TransportFocus::Sync => {
|
|
//transport.sync.value = next_note_length(transport.sync)
|
|
//},
|
|
//TransportFocus::Sync => {
|
|
//transport.sync.value = prev_note_length(transport.sync);
|
|
//},
|
|
Ok(None)
|
|
}
|
|
}
|
|
|
|
impl Handle<Tui> for TransportClock {
|
|
fn handle (&mut self, from: &Tui) -> Perhaps<bool> {
|
|
//TransportFocus::Sync => {
|
|
//transport.sync.value = next_note_length(transport.sync)
|
|
//},
|
|
//TransportFocus::Sync => {
|
|
//transport.sync.value = prev_note_length(transport.sync);
|
|
//},
|
|
Ok(None)
|
|
}
|
|
}
|