style: basic colors added as variables

This commit is contained in:
2026-08-08 00:15:08 +02:00
parent 914538241f
commit be82f8638a

View File

@@ -79,6 +79,12 @@ impl App {
}
fn draw(&mut self, frame: &mut Frame) {
// PERF: this should not be declared on every frame
let color_bg_main = Color::default();
let color_fg_main = Color::default();
let color_fg_highlight = Color::Yellow;
let color_fg_delete = Color::LightRed;
let main_layout = Layout::default()
.direction(Direction::Vertical)
.spacing(0)
@@ -110,6 +116,7 @@ impl App {
Paragraph::new(word_filter.clone()).block(
Block::new()
.title(self.format_ui_block_title("Word", UiState::FILTERWORD))
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
.borders(Borders::ALL),
),
filters_layout[0],
@@ -126,6 +133,7 @@ impl App {
Paragraph::new(lang_filter).block(
Block::new()
.title(self.format_ui_block_title("Lang", UiState::FILTERLANG))
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
.borders(Borders::ALL),
),
filters_layout[1],
@@ -167,6 +175,7 @@ impl App {
Paragraph::new(word_to_add.key).block(
Block::new()
.title(self.format_add_block_title("Word", AddState::KEY))
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
.borders(Borders::ALL),
),
add_words_heading_layout[0],
@@ -175,6 +184,7 @@ impl App {
Paragraph::new(word_to_add.lang).block(
Block::new()
.title(self.format_add_block_title("Lang", AddState::LANG))
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
.borders(Borders::ALL),
),
add_words_heading_layout[1],
@@ -188,7 +198,8 @@ impl App {
self.format_add_block_title("Description", AddState::DESCRIPTION),
)
.borders(Borders::ALL),
),
)
.style(Style::default().fg(color_fg_main).bg(color_bg_main)),
main_layout[1],
);
} else {
@@ -228,11 +239,12 @@ impl App {
Block::default()
.title(self.format_ui_block_title("Entries", UiState::LIST))
.borders(Borders::ALL)
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
.padding(Padding::horizontal(1)),
)
.highlight_style(Style::default().fg(highligh_color))
.highlight_symbol(highligh_symbol)
.style(Style::default().fg(Color::DarkGray));
.style(Style::default().fg(color_fg_main).bg(color_bg_main));
frame.render_stateful_widget(word_key_list, words_layout[0], &mut self.list_state);
if let Some(w) = selected_word.clone() {
@@ -240,7 +252,8 @@ impl App {
Paragraph::new(w.description)
.wrap(Wrap { trim: true })
.scroll((self.description_scroll, 0))
.block(Block::new().borders(Borders::ALL)),
.block(Block::new().borders(Borders::ALL))
.style(Style::default().fg(color_fg_main).bg(color_bg_main)),
words_layout[1],
);
}
@@ -258,10 +271,13 @@ impl App {
&& let Some(s_w) = selected_word.clone()
{
Text::raw(format!("Sure you want to delete '{0}'? (y)es", s_w.key))
.style(Style::new().fg(Color::LightRed))
.style(Style::default().fg(color_fg_delete).bg(color_bg_main))
} else if self.state == UiState::ADD {
Text::raw("Adding item (enter) to confirm (esc) to exit")
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
} else {
Text::raw("(f)ilter | (l)ang | (d)elete | (e)dit | (a)dd | (q)uit")
.style(Style::new().fg(Color::DarkGray))
.style(Style::default().fg(color_fg_main).bg(color_bg_main))
}
};