mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-10 21:56:42 +01:00
wip: refactor pt.20: 44 errors
This commit is contained in:
parent
914c2d6c09
commit
2188bccd63
25 changed files with 664 additions and 486 deletions
|
|
@ -1,14 +1,26 @@
|
|||
use crate::*;
|
||||
|
||||
fn track_widths (tracks: &[ArrangementTrack]) -> Vec<(usize, usize)> {
|
||||
let mut widths = vec![];
|
||||
let mut total = 0;
|
||||
for track in tracks.iter() {
|
||||
let width = track.width;
|
||||
widths.push((width, total));
|
||||
total += width;
|
||||
}
|
||||
widths.push((0, total));
|
||||
widths
|
||||
}
|
||||
|
||||
pub fn arranger_content_vertical (
|
||||
view: &ArrangerView<Tui>,
|
||||
view: &ArrangerView<Tui>,
|
||||
factor: usize
|
||||
) -> impl Widget<Engine = Tui> + use<'_> {
|
||||
let tracks = view.arrangement.model.tracks.as_ref() as &[ArrangementTrack];
|
||||
let scenes = view.arrangement.model.scenes.as_ref();
|
||||
let cols = view.arrangement.track_widths();
|
||||
let tracks = view.model.tracks.as_slice();
|
||||
let scenes = view.model.scenes.as_slice();
|
||||
let cols = track_widths(tracks);
|
||||
let rows = ArrangementScene::ppqs(scenes, factor);
|
||||
let bg = view.arrangement.color;
|
||||
let bg = view.color;
|
||||
let clip_bg = TuiTheme::border_bg();
|
||||
let sep_fg = TuiTheme::separator_fg(false);
|
||||
let header_h = 3u16;//5u16;
|
||||
|
|
@ -132,8 +144,8 @@ pub fn arranger_content_vertical (
|
|||
// cursor
|
||||
add(&CustomWidget::new(any_size, move|to: &mut TuiOutput|{
|
||||
let area = to.area();
|
||||
let focused = view.arrangement.focused;
|
||||
let selected = view.arrangement.selected;
|
||||
let focused = view.focused;
|
||||
let selected = view.selected;
|
||||
let get_track_area = |t: usize| [
|
||||
scenes_w + area.x() + cols[t].1 as u16, area.y(),
|
||||
cols[t].0 as u16, area.h(),
|
||||
|
|
@ -185,7 +197,7 @@ pub fn arranger_content_vertical (
|
|||
})
|
||||
}))
|
||||
}).bg(bg.rgb);
|
||||
let color = TuiTheme::title_fg(view.arrangement.focused);
|
||||
let color = TuiTheme::title_fg(view.focused);
|
||||
let size = format!("{}x{}", view.size.w(), view.size.h());
|
||||
let lower_right = TuiStyle::fg(size, color).pull_x(1).align_se().fill_xy();
|
||||
lay!(arrangement, lower_right)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue