diff --git a/crates/tek_sequencer/src/arranger.rs b/crates/tek_sequencer/src/arranger.rs index 7e800361..499e9fdc 100644 --- a/crates/tek_sequencer/src/arranger.rs +++ b/crates/tek_sequencer/src/arranger.rs @@ -118,7 +118,7 @@ impl Arranger { let mut app = Self { focus_cursor: (0, 1), editor: PhraseEditor::new(), - status: ArrangerStatusBar::Transport, + status: ArrangerStatusBar::ArrangementClip, transport, arrangement, phrases, @@ -180,6 +180,12 @@ impl FocusGrid for Arranger { focused == ArrangerFocus::PhrasePool; self.editor.focused = focused == ArrangerFocus::PhraseEditor; + self.status = match focused { + ArrangerFocus::Transport => ArrangerStatusBar::Transport, + ArrangerFocus::Arrangement => ArrangerStatusBar::ArrangementMix, + ArrangerFocus::PhrasePool => ArrangerStatusBar::PhrasePool, + ArrangerFocus::PhraseEditor => ArrangerStatusBar::PhraseEditor, + } } } /// General methods for arrangement diff --git a/crates/tek_sequencer/src/arranger_tui.rs b/crates/tek_sequencer/src/arranger_tui.rs index 1d4676a6..be99aff5 100644 --- a/crates/tek_sequencer/src/arranger_tui.rs +++ b/crates/tek_sequencer/src/arranger_tui.rs @@ -25,7 +25,16 @@ impl Content for Arranger { impl Content for ArrangerStatusBar { type Engine = Tui; fn content (&self) -> impl Widget { - "status bar" + let label = match self { + Self::Transport => "Transport", + Self::ArrangementMix => "Arrangement", + Self::ArrangementTrack => "Track", + Self::ArrangementScene => "Scene", + Self::ArrangementClip => "Clip", + Self::PhrasePool => "Phrases", + Self::PhraseEditor => "Sequencer", + }; + TuiStyle::bg(format!(" {label} "), Color::Rgb(150, 160, 90)).fg(Color::Rgb(0, 0, 0)) } } impl Content for Arrangement {