mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-06 11:46:41 +01:00
extract midi_pool.rs
This commit is contained in:
parent
1408c0c3ce
commit
e80b9419ae
7 changed files with 380 additions and 388 deletions
191
.scratch.rs
191
.scratch.rs
|
|
@ -120,3 +120,194 @@
|
|||
//PhraseView,
|
||||
//PhraseEdit,
|
||||
//}
|
||||
|
||||
//let focused = true;
|
||||
//let _tracks = view.tracks();
|
||||
//lay!(
|
||||
//focused.then_some(Background(TuiTheme::border_bg())),
|
||||
//row!(
|
||||
//// name
|
||||
//Widget::new(|_|{todo!()}, |_: &mut TuiOutput|{
|
||||
//todo!()
|
||||
////let Self(tracks, selected) = self;
|
||||
////let yellow = Some(Style::default().yellow().bold().not_dim());
|
||||
////let white = Some(Style::default().white().bold().not_dim());
|
||||
////let area = to.area();
|
||||
////let area = [area.x(), area.y(), 3 + 5.max(track_name_max_len(tracks)) as u16, area.h()];
|
||||
////let offset = 0; // track scroll offset
|
||||
////for y in 0..area.h() {
|
||||
////if y == 0 {
|
||||
////to.blit(&"Mixer", area.x() + 1, area.y() + y, Some(DIM))?;
|
||||
////} else if y % 2 == 0 {
|
||||
////let index = (y as usize - 2) / 2 + offset;
|
||||
////if let Some(track) = tracks.get(index) {
|
||||
////let selected = selected.track() == Some(index);
|
||||
////let style = if selected { yellow } else { white };
|
||||
////to.blit(&format!(" {index:>02} "), area.x(), area.y() + y, style)?;
|
||||
////to.blit(&*track.name.read().unwrap(), area.x() + 4, area.y() + y, style)?;
|
||||
////}
|
||||
////}
|
||||
////}
|
||||
////Ok(Some(area))
|
||||
//}),
|
||||
//// monitor
|
||||
//Widget::new(|_|{todo!()}, |_: &mut TuiOutput|{
|
||||
//todo!()
|
||||
////let Self(tracks) = self;
|
||||
////let mut area = to.area();
|
||||
////let on = Some(Style::default().not_dim().green().bold());
|
||||
////let off = Some(DIM);
|
||||
////area.x += 1;
|
||||
////for y in 0..area.h() {
|
||||
////if y == 0 {
|
||||
//////" MON ".blit(to.buffer, area.x, area.y + y, style2)?;
|
||||
////} else if y % 2 == 0 {
|
||||
////let index = (y as usize - 2) / 2;
|
||||
////if let Some(track) = tracks.get(index) {
|
||||
////let style = if track.monitoring { on } else { off };
|
||||
////to.blit(&" MON ", area.x(), area.y() + y, style)?;
|
||||
////} else {
|
||||
////area.height = y;
|
||||
////break
|
||||
////}
|
||||
////}
|
||||
////}
|
||||
////area.width = 4;
|
||||
////Ok(Some(area))
|
||||
//}),
|
||||
//// record
|
||||
//Widget::new(|_|{todo!()}, |_: &mut TuiOutput|{
|
||||
//todo!()
|
||||
////let Self(tracks) = self;
|
||||
////let mut area = to.area();
|
||||
////let on = Some(Style::default().not_dim().red().bold());
|
||||
////let off = Some(Style::default().dim());
|
||||
////area.x += 1;
|
||||
////for y in 0..area.h() {
|
||||
////if y == 0 {
|
||||
//////" REC ".blit(to.buffer, area.x, area.y + y, style2)?;
|
||||
////} else if y % 2 == 0 {
|
||||
////let index = (y as usize - 2) / 2;
|
||||
////if let Some(track) = tracks.get(index) {
|
||||
////let style = if track.recording { on } else { off };
|
||||
////to.blit(&" REC ", area.x(), area.y() + y, style)?;
|
||||
////} else {
|
||||
////area.height = y;
|
||||
////break
|
||||
////}
|
||||
////}
|
||||
////}
|
||||
////area.width = 4;
|
||||
////Ok(Some(area))
|
||||
//}),
|
||||
//// overdub
|
||||
//Widget::new(|_|{todo!()}, |_: &mut TuiOutput|{
|
||||
//todo!()
|
||||
////let Self(tracks) = self;
|
||||
////let mut area = to.area();
|
||||
////let on = Some(Style::default().not_dim().yellow().bold());
|
||||
////let off = Some(Style::default().dim());
|
||||
////area.x = area.x + 1;
|
||||
////for y in 0..area.h() {
|
||||
////if y == 0 {
|
||||
//////" OVR ".blit(to.buffer, area.x, area.y + y, style2)?;
|
||||
////} else if y % 2 == 0 {
|
||||
////let index = (y as usize - 2) / 2;
|
||||
////if let Some(track) = tracks.get(index) {
|
||||
////to.blit(&" OVR ", area.x(), area.y() + y, if track.overdub {
|
||||
////on
|
||||
////} else {
|
||||
////off
|
||||
////})?;
|
||||
////} else {
|
||||
////area.height = y;
|
||||
////break
|
||||
////}
|
||||
////}
|
||||
////}
|
||||
////area.width = 4;
|
||||
////Ok(Some(area))
|
||||
//}),
|
||||
//// erase
|
||||
//Widget::new(|_|{todo!()}, |_: &mut TuiOutput|{
|
||||
//todo!()
|
||||
////let Self(tracks) = self;
|
||||
////let mut area = to.area();
|
||||
////let off = Some(Style::default().dim());
|
||||
////area.x = area.x + 1;
|
||||
////for y in 0..area.h() {
|
||||
////if y == 0 {
|
||||
//////" DEL ".blit(to.buffer, area.x, area.y + y, style2)?;
|
||||
////} else if y % 2 == 0 {
|
||||
////let index = (y as usize - 2) / 2;
|
||||
////if let Some(_) = tracks.get(index) {
|
||||
////to.blit(&" DEL ", area.x(), area.y() + y, off)?;
|
||||
////} else {
|
||||
////area.height = y;
|
||||
////break
|
||||
////}
|
||||
////}
|
||||
////}
|
||||
////area.width = 4;
|
||||
////Ok(Some(area))
|
||||
//}),
|
||||
//// gain
|
||||
//Widget::new(|_|{todo!()}, |_: &mut TuiOutput|{
|
||||
//todo!()
|
||||
////let Self(tracks) = self;
|
||||
////let mut area = to.area();
|
||||
////let off = Some(Style::default().dim());
|
||||
////area.x = area.x() + 1;
|
||||
////for y in 0..area.h() {
|
||||
////if y == 0 {
|
||||
//////" GAIN ".blit(to.buffer, area.x, area.y + y, style2)?;
|
||||
////} else if y % 2 == 0 {
|
||||
////let index = (y as usize - 2) / 2;
|
||||
////if let Some(_) = tracks.get(index) {
|
||||
////to.blit(&" +0.0 ", area.x(), area.y() + y, off)?;
|
||||
////} else {
|
||||
////area.height = y;
|
||||
////break
|
||||
////}
|
||||
////}
|
||||
////}
|
||||
////area.width = 7;
|
||||
////Ok(Some(area))
|
||||
//}),
|
||||
//// scenes
|
||||
//Widget::new(|_|{todo!()}, |to: &mut TuiOutput|{
|
||||
//let [x, y, _, height] = to.area();
|
||||
//let mut x2 = 0;
|
||||
//Ok(for (scene_index, scene) in view.scenes().iter().enumerate() {
|
||||
//let active_scene = view.selected.scene() == Some(scene_index);
|
||||
//let sep = Some(if active_scene {
|
||||
//Style::default().yellow().not_dim()
|
||||
//} else {
|
||||
//Style::default().dim()
|
||||
//});
|
||||
//for y in y+1..y+height {
|
||||
//to.blit(&"│", x + x2, y, sep);
|
||||
//}
|
||||
//let name = scene.name.read().unwrap();
|
||||
//let mut x3 = name.len() as u16;
|
||||
//to.blit(&*name, x + x2, y, sep);
|
||||
//for (i, clip) in scene.clips.iter().enumerate() {
|
||||
//let active_track = view.selected.track() == Some(i);
|
||||
//if let Some(clip) = clip {
|
||||
//let y2 = y + 2 + i as u16 * 2;
|
||||
//let label = format!("{}", clip.read().unwrap().name);
|
||||
//to.blit(&label, x + x2, y2, Some(if active_track && active_scene {
|
||||
//Style::default().not_dim().yellow().bold()
|
||||
//} else {
|
||||
//Style::default().not_dim()
|
||||
//}));
|
||||
//x3 = x3.max(label.len() as u16)
|
||||
//}
|
||||
//}
|
||||
//x2 = x2 + x3 + 1;
|
||||
//})
|
||||
//}),
|
||||
//)
|
||||
//)
|
||||
//}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue