use crate::app::{App, Mode};
use ratatui::{
Frame,
layout::Rect,
style::{Color, Modifier, Style},
text::{Line, Span},
widgets::Paragraph,
};
#[allow(dead_code)]
pub fn render(f: &mut Frame, area: Rect, app: &App) {
let mode_text = match app.mode {
Mode::Normal => ("NORMAL", Color::Green),
Mode::TaskSelect => ("SELECT", Color::Cyan),
Mode::Dialog => ("DIALOG", Color::Magenta),
Mode::Help => ("HELP", Color::Blue),
Mode::SpaceMenu => ("MENU", Color::Cyan),
Mode::Preview => ("PREVIEW", Color::Blue),
};
let key_sequence = if !app.key_buffer.is_empty() {
format!(" [{}]", app.key_buffer.iter().collect::<String>())
} else {
String::new()
};
let line = Line::from(vec![
Span::styled(
format!(" {} ", mode_text.0),
Style::default()
.fg(Color::Black)
.bg(mode_text.1)
.add_modifier(Modifier::BOLD),
),
Span::raw(key_sequence),
Span::raw(format!(
" | {} 项目 | 面板 {} ",
app.projects.len(),
app.focused_pane
)),
]);
let paragraph = Paragraph::new(line).style(Style::default().bg(Color::Black));
f.render_widget(paragraph, area);
}