style: padding in blocks
This commit is contained in:
parent
ad5095aae0
commit
2ee2a2973f
1 changed files with 18 additions and 7 deletions
|
@ -4,9 +4,12 @@ use ratatui::{
|
||||||
buffer::Buffer,
|
buffer::Buffer,
|
||||||
crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind},
|
crossterm::event::{self, Event, KeyCode, KeyEvent, KeyEventKind},
|
||||||
layout::{Constraint, Flex, Layout, Rect},
|
layout::{Constraint, Flex, Layout, Rect},
|
||||||
style::{Modifier, Style, palette::tailwind::*, Stylize},
|
style::{Modifier, Style, Stylize, palette::tailwind::*},
|
||||||
text::{Line, Span},
|
text::{Line, Span},
|
||||||
widgets::{Block, Borders, HighlightSpacing, List, ListState, StatefulWidget, Widget, Paragraph},
|
widgets::{
|
||||||
|
Block, Borders, HighlightSpacing, List, ListState, Padding, Paragraph, StatefulWidget,
|
||||||
|
Widget,
|
||||||
|
},
|
||||||
};
|
};
|
||||||
|
|
||||||
const GAME_HEADER_STYLE: Style = Style::new()
|
const GAME_HEADER_STYLE: Style = Style::new()
|
||||||
|
@ -86,6 +89,7 @@ impl App {
|
||||||
fn render_list(&mut self, area: Rect, buf: &mut Buffer) {
|
fn render_list(&mut self, area: Rect, buf: &mut Buffer) {
|
||||||
let block = Block::new()
|
let block = Block::new()
|
||||||
.title(Line::raw(" Game ").centered().style(GAME_HEADER_STYLE))
|
.title(Line::raw(" Game ").centered().style(GAME_HEADER_STYLE))
|
||||||
|
.padding(Padding::symmetric(2, 1))
|
||||||
.borders(Borders::ALL);
|
.borders(Borders::ALL);
|
||||||
|
|
||||||
let items: Vec<&'static str> = self.menu.items.clone();
|
let items: Vec<&'static str> = self.menu.items.clone();
|
||||||
|
@ -101,7 +105,12 @@ impl App {
|
||||||
|
|
||||||
fn render_profile(&mut self, area: Rect, buf: &mut Buffer) {
|
fn render_profile(&mut self, area: Rect, buf: &mut Buffer) {
|
||||||
let block = Block::new()
|
let block = Block::new()
|
||||||
.title(Line::raw(" Profile ").centered().style(PROFILE_HEADER_STYLE))
|
.title(
|
||||||
|
Line::raw(" Profile ")
|
||||||
|
.centered()
|
||||||
|
.style(PROFILE_HEADER_STYLE),
|
||||||
|
)
|
||||||
|
.padding(Padding::symmetric(2, 1))
|
||||||
.borders(Borders::ALL);
|
.borders(Borders::ALL);
|
||||||
|
|
||||||
let text = vec![
|
let text = vec![
|
||||||
|
@ -120,9 +129,7 @@ impl App {
|
||||||
]),
|
]),
|
||||||
];
|
];
|
||||||
|
|
||||||
Paragraph::new(text)
|
Paragraph::new(text).block(block).render(area, buf);
|
||||||
.block(block)
|
|
||||||
.render(area, buf);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
fn run(mut self, mut terminal: DefaultTerminal) -> Result<()> {
|
fn run(mut self, mut terminal: DefaultTerminal) -> Result<()> {
|
||||||
|
@ -177,7 +184,11 @@ impl Widget for &mut App {
|
||||||
])
|
])
|
||||||
.areas(area);
|
.areas(area);
|
||||||
|
|
||||||
let center_area = center(main_area, Constraint::Length(50), Constraint::Percentage(60));
|
let center_area = center(
|
||||||
|
main_area,
|
||||||
|
Constraint::Length(50),
|
||||||
|
Constraint::Percentage(60),
|
||||||
|
);
|
||||||
|
|
||||||
let [profile_area, list_outer_area] =
|
let [profile_area, list_outer_area] =
|
||||||
Layout::vertical([Constraint::Percentage(50), Constraint::Percentage(50)])
|
Layout::vertical([Constraint::Percentage(50), Constraint::Percentage(50)])
|
||||||
|
|
Loading…
Reference in a new issue