ClockWidget (#10)
This commit is contained in:
12
src/app.rs
12
src/app.rs
@@ -3,7 +3,6 @@ use crate::{
|
||||
constants::TICK_VALUE_MS,
|
||||
events::{Event, EventHandler, Events},
|
||||
terminal::Terminal,
|
||||
utils::center,
|
||||
widgets::{
|
||||
countdown::{Countdown, CountdownWidget},
|
||||
footer::Footer,
|
||||
@@ -17,7 +16,7 @@ use ratatui::{
|
||||
buffer::Buffer,
|
||||
crossterm::event::{KeyCode, KeyEvent},
|
||||
layout::{Constraint, Layout, Rect},
|
||||
widgets::{Block, StatefulWidget, Widget},
|
||||
widgets::{StatefulWidget, Widget},
|
||||
};
|
||||
use tracing::debug;
|
||||
|
||||
@@ -114,8 +113,6 @@ struct AppWidget;
|
||||
|
||||
impl AppWidget {
|
||||
fn render_content(&self, area: Rect, buf: &mut Buffer, state: &mut App) {
|
||||
// center content
|
||||
let area = center(area, Constraint::Length(50), Constraint::Length(2));
|
||||
match state.content {
|
||||
Content::Timer => TimerWidget.render(area, buf, &mut state.timer),
|
||||
Content::Countdown => CountdownWidget.render(area, buf, &mut state.countdown),
|
||||
@@ -129,14 +126,13 @@ impl StatefulWidget for AppWidget {
|
||||
fn render(self, area: Rect, buf: &mut Buffer, state: &mut Self::State) {
|
||||
let vertical = Layout::vertical([
|
||||
Constraint::Length(1),
|
||||
Constraint::Fill(0),
|
||||
Constraint::Percentage(100),
|
||||
Constraint::Length(if state.show_menu { 2 } else { 1 }),
|
||||
]);
|
||||
let [v0, v1, v4] = vertical.areas(area);
|
||||
let [v0, v1, v2] = vertical.areas(area);
|
||||
|
||||
Block::new().render(area, buf);
|
||||
Header::new(true).render(v0, buf);
|
||||
self.render_content(v1, buf, state);
|
||||
Footer::new(state.show_menu, state.content).render(v4, buf);
|
||||
Footer::new(state.show_menu, state.content).render(v2, buf);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user