mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-06 03:36:41 +01:00
This commit is contained in:
parent
5696cbbebb
commit
2fd7d7b39f
18 changed files with 355 additions and 360 deletions
|
|
@ -106,13 +106,49 @@ impl Cli {
|
|||
color: ItemTheme::random(),
|
||||
clock: Clock::new(jack, self.bpm)?,
|
||||
view: SourceIter(match mode {
|
||||
LaunchMode::Clock => include_str!("../../config/view_transport.edn"),
|
||||
LaunchMode::Sequencer => include_str!("../../config/view_sequencer.edn"),
|
||||
LaunchMode::Groovebox => include_str!("../../config/view_groovebox.edn"),
|
||||
LaunchMode::Arranger { .. } => include_str!("../../config/view_arranger.edn"),
|
||||
LaunchMode::Sampler => include_str!("../../config/view_sampler.edn"),
|
||||
LaunchMode::Clock =>
|
||||
include_str!("../../config/view_transport.edn"),
|
||||
LaunchMode::Sequencer =>
|
||||
include_str!("../../config/view_sequencer.edn"),
|
||||
LaunchMode::Groovebox =>
|
||||
include_str!("../../config/view_groovebox.edn"),
|
||||
LaunchMode::Arranger { .. } =>
|
||||
include_str!("../../config/view_arranger.edn"),
|
||||
LaunchMode::Sampler =>
|
||||
include_str!("../../config/view_sampler.edn"),
|
||||
_ => todo!("{mode:?}"),
|
||||
}),
|
||||
keys: match mode {
|
||||
LaunchMode::Sampler => InputMap::default()
|
||||
.layer(SourceIter(include_str!("../../config/keys_global.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_sampler.edn"))),
|
||||
LaunchMode::Clock => InputMap::default()
|
||||
.layer(SourceIter(include_str!("../../config/keys_global.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_clock.edn"))),
|
||||
LaunchMode::Sequencer => InputMap::default()
|
||||
.layer(SourceIter(include_str!("../../config/keys_global.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_editor.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_clock.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_sequencer.edn"))),
|
||||
LaunchMode::Groovebox => InputMap::default()
|
||||
.layer(SourceIter(include_str!("../../config/keys_global.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_editor.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_clock.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_sequencer.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_groovebox.edn"))),
|
||||
LaunchMode::Arranger {..} => InputMap::default()
|
||||
.layer(SourceIter(include_str!("../../config/keys_global.edn")))
|
||||
.layer_if(
|
||||
|state: &Tek|state.is_editing(),
|
||||
SourceIter(include_str!("../../config/keys_editor.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_clock.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_arranger.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_clip.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_track.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_scene.edn")))
|
||||
.layer(SourceIter(include_str!("../../config/keys_mix.edn"))),
|
||||
_ => todo!("{mode:?}"),
|
||||
},
|
||||
pool: match mode {
|
||||
LaunchMode::Sequencer | LaunchMode::Groovebox => clip.as_ref().map(Into::into),
|
||||
LaunchMode::Arranger { .. } => Some(Default::default()),
|
||||
|
|
@ -126,16 +162,13 @@ impl Cli {
|
|||
midi_ins,
|
||||
midi_outs,
|
||||
midi_buf: match mode {
|
||||
LaunchMode::Clock | LaunchMode::Sampler => vec![],
|
||||
LaunchMode::Sequencer | LaunchMode::Groovebox | LaunchMode::Arranger {..} => vec![vec![];65536],
|
||||
LaunchMode::Clock
|
||||
| LaunchMode::Sampler => vec![],
|
||||
LaunchMode::Sequencer
|
||||
| LaunchMode::Groovebox
|
||||
| LaunchMode::Arranger {..} => vec![vec![];65536],
|
||||
_ => todo!("{mode:?}"),
|
||||
},
|
||||
handler: Some(match mode {
|
||||
LaunchMode::Sequencer => handle_sequencer,
|
||||
LaunchMode::Groovebox => handle_groovebox,
|
||||
LaunchMode::Sampler => handle_sampler,
|
||||
_ => handle_arranger,
|
||||
}),
|
||||
tracks: match mode {
|
||||
LaunchMode::Sequencer => vec![
|
||||
Track::new_sequencer()
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue