use crate::*; impl Handle for TransportToolbar { fn handle (&mut self, from: &Tui) -> Perhaps { 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 for TransportPlayPauseButton { fn handle (&mut self, from: &Tui) -> Perhaps { Ok(None) } } impl Handle for TransportBPM { fn handle (&mut self, from: &Tui) -> Perhaps { //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 for TransportQuantize { fn handle (&mut self, from: &Tui) -> Perhaps { //TransportFocus::Quant => { //transport.quant.value = next_note_length(transport.quant) //}, //TransportFocus::Quant => { //transport.quant.value = prev_note_length(transport.quant); //}, Ok(None) } } impl Handle for TransportSync { fn handle (&mut self, from: &Tui) -> Perhaps { //TransportFocus::Sync => { //transport.sync.value = next_note_length(transport.sync) //}, //TransportFocus::Sync => { //transport.sync.value = prev_note_length(transport.sync); //}, Ok(None) } } impl Handle for TransportClock { fn handle (&mut self, from: &Tui) -> Perhaps { //TransportFocus::Sync => { //transport.sync.value = next_note_length(transport.sync) //}, //TransportFocus::Sync => { //transport.sync.value = prev_note_length(transport.sync); //}, Ok(None) } }