use crate::*;
#[derive(Debug, Clone)]
pub enum Message {
TrackStateChanged {
column: usize,
row: usize,
state: TrackState,
},
TrackVolumeChanged {
column: usize,
row: usize,
volume: f32,
},
SelectedColumnChanged {
column: usize,
},
SelectedRowChanged {
row: usize,
},
MetronomePosition {
position: f32, // 0.0 - 1.0 position within current beat
},
Tempo {
bpm: f32,
},
}
impl Message {
pub fn from_osc_packet(packet: rosc::OscPacket) -> Result