mirror of
https://codeberg.org/unspeaker/tek.git
synced 2025-12-07 12:16:42 +01:00
replace old Split component
This commit is contained in:
parent
e845d252b7
commit
60406e1d32
9 changed files with 141 additions and 107 deletions
|
|
@ -82,10 +82,12 @@ impl Widget for ArrangerStandalone<Tui> {
|
|||
let area = to.area();
|
||||
let sequencer = self.arranger.sequencer()
|
||||
.map(|t|t as &dyn Widget<Engine = Tui>);
|
||||
let result = Split::down()
|
||||
.add_ref(&self.transport)
|
||||
.add_ref(&self.arranger)
|
||||
.add_ref(&sequencer)
|
||||
let result = Split::down(|add|{
|
||||
add(&self.transport)?;
|
||||
add(&self.arranger)?;
|
||||
add(&sequencer)?;
|
||||
Ok(())
|
||||
})
|
||||
//.focus(Some(self.focus))
|
||||
.render(to)?;
|
||||
if let Some(ref modal) = self.arranger.modal {
|
||||
|
|
|
|||
|
|
@ -6,14 +6,16 @@ pub fn draw (state: &Arranger<Tui>, to: &mut Tui) -> Perhaps<[u16;4]> {
|
|||
let tracks = state.tracks.as_slice();
|
||||
Layers::new(|add|{
|
||||
add(&state.focused.then_some(FillBg(COLOR_BG0)))?;
|
||||
add(&Split::right()
|
||||
.add(TrackNameColumn(tracks, state.selected))
|
||||
.add(TrackMonitorColumn(tracks))
|
||||
.add(TrackRecordColumn(tracks))
|
||||
.add(TrackOverdubColumn(tracks))
|
||||
.add(TrackEraseColumn(tracks))
|
||||
.add(TrackGainColumn(tracks))
|
||||
.add(TrackScenesColumn(tracks, state.scenes.as_slice(), state.selected)))
|
||||
add(&Split::right(|add|{
|
||||
add(&TrackNameColumn(tracks, state.selected))?;
|
||||
add(&TrackMonitorColumn(tracks))?;
|
||||
add(&TrackRecordColumn(tracks))?;
|
||||
add(&TrackOverdubColumn(tracks))?;
|
||||
add(&TrackEraseColumn(tracks))?;
|
||||
add(&TrackGainColumn(tracks))?;
|
||||
add(&TrackScenesColumn(tracks, state.scenes.as_slice(), state.selected))?;
|
||||
Ok(())
|
||||
}))
|
||||
}).render(to.with_rect(area))
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -43,9 +43,10 @@ pub fn draw <'a, 'b> (
|
|||
add(&ColumnSeparators(offset, cols))?;
|
||||
add(&RowSeparators(rows))?;
|
||||
add(&CursorFocus(state.selected, offset, cols, rows))?;
|
||||
add(&Split::down()
|
||||
.add_ref(&TracksHeader(offset, cols, tracks))
|
||||
.add_ref(&SceneRows(offset, cols, rows, tracks, scenes)))
|
||||
add(&Split::right(|add|{
|
||||
add(&TracksHeader(offset, cols, tracks))?;
|
||||
add(&SceneRows(offset, cols, rows, tracks, scenes))
|
||||
}))
|
||||
}).render(to.with_rect(area))
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -6,12 +6,13 @@ impl Sequencer<Tui> {
|
|||
|
||||
pub(crate) fn horizontal_draw <'a> (&self, to: &mut Tui) -> Usually<()> {
|
||||
let area = to.area();
|
||||
Split::down()
|
||||
.add_ref(&SequenceName(&self))
|
||||
.add_ref(&SequenceRange)
|
||||
.add_ref(&SequenceLoopRange)
|
||||
.add_ref(&SequenceNoteRange)
|
||||
.render(to.with_area(area.x(), area.y(), 10, area.h()))?;
|
||||
Split::down(|add|{
|
||||
add(&SequenceName(&self))?;
|
||||
add(&SequenceRange)?;
|
||||
add(&SequenceLoopRange)?;
|
||||
add(&SequenceNoteRange)?;
|
||||
Ok(())
|
||||
}).render(to.with_area(area.x(), area.y(), 10, area.h()))?;
|
||||
let area = [area.x() + 10, area.y(), area.w().saturating_sub(10), area.h().min(66)];
|
||||
Lozenge(Style::default().fg(Nord::BG2)).draw(to.with_rect(area))?;
|
||||
let area = [area.x() + 1, area.y(), area.w().saturating_sub(1), area.h()];
|
||||
|
|
|
|||
|
|
@ -5,12 +5,14 @@ const CORNERS: Corners = Corners(NOT_DIM_GREEN);
|
|||
impl Content for TransportToolbar<Tui> {
|
||||
type Engine = Tui;
|
||||
fn content (&self) -> impl Widget<Engine = Tui> {
|
||||
Split::right()
|
||||
.add_ref(&self.playing)
|
||||
.add_ref(&self.bpm)
|
||||
.add_ref(&self.quant)
|
||||
.add_ref(&self.sync)
|
||||
.add_ref(&self.clock)
|
||||
Split::right(|add|{
|
||||
add(&self.playing)?;
|
||||
add(&self.bpm)?;
|
||||
add(&self.quant)?;
|
||||
add(&self.sync)?;
|
||||
add(&self.clock)?;
|
||||
Ok(())
|
||||
})
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue