diff options
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/message.rs | 3 | ||||
-rw-r--r-- | src/gui/question.rs | 7 | ||||
-rw-r--r-- | src/gui/util.rs | 11 |
3 files changed, 13 insertions, 8 deletions
diff --git a/src/gui/message.rs b/src/gui/message.rs index 0ae98a2..feab069 100644 --- a/src/gui/message.rs +++ b/src/gui/message.rs @@ -4,7 +4,7 @@ use crossterm::event::{self, Event, KeyCode, KeyModifiers}; use tui::{ backend::Backend, layout::{Alignment, Constraint, Direction, Layout}, - widgets::Paragraph, + widgets::{Paragraph, Wrap}, Terminal, }; @@ -26,6 +26,7 @@ pub fn show<B: Backend>( f.render_widget(d1, chunks[0]); let message = Paragraph::new(util::center_vertically(chunks[1], message)) + .wrap(Wrap { trim: true }) .alignment(Alignment::Center); f.render_widget(message, chunks[1]); })?; diff --git a/src/gui/question.rs b/src/gui/question.rs index 37ea43d..af93087 100644 --- a/src/gui/question.rs +++ b/src/gui/question.rs @@ -56,6 +56,7 @@ pub fn ask<B: Backend>(terminal: &mut Terminal<B>, title: &str, card: &Card) -> f.render_widget(d1, chunks[0]); let question = Paragraph::new(util::center_vertically(chunks[1], &card.question)) + .wrap(Wrap { trim: true }) .alignment(Alignment::Center); f.render_widget(question, chunks[1]); @@ -64,6 +65,7 @@ pub fn ask<B: Backend>(terminal: &mut Terminal<B>, title: &str, card: &Card) -> _ => format!("{} ", state.input), }; let answer = Paragraph::new(util::center_vertically(chunks[2], &formatted_input)) + .wrap(Wrap { trim: true }) .style(match state.answer { Answer::Write => Style::default(), Answer::Difficulty { difficulty: _ } => { @@ -93,6 +95,7 @@ pub fn ask<B: Backend>(terminal: &mut Terminal<B>, title: &str, card: &Card) -> if let Some(indication) = maybe_indication { let paragraph = Paragraph::new(util::center_vertically(chunks[3], &indication)) + .wrap(Wrap { trim: true }) .alignment(Alignment::Center); f.render_widget(paragraph, chunks[3]); }; @@ -120,7 +123,9 @@ pub fn ask<B: Backend>(terminal: &mut Terminal<B>, title: &str, card: &Card) -> }) .collect::<Vec<Vec<Span>>>() .concat(); - let p = Paragraph::new(Text::from(Line::from(tabs))).alignment(Alignment::Center); + let p = Paragraph::new(Text::from(Line::from(tabs))) + .wrap(Wrap { trim: true }) + .alignment(Alignment::Center); f.render_widget(p, chunks[4]); } })?; diff --git a/src/gui/util.rs b/src/gui/util.rs index 4503ed4..6741b21 100644 --- a/src/gui/util.rs +++ b/src/gui/util.rs @@ -1,15 +1,14 @@ use tui::{ layout::{Alignment, Rect}, style::{Color, Modifier, Style}, - widgets::Paragraph, + widgets::{Paragraph, Wrap}, }; pub fn title(str: &str) -> Paragraph { - Paragraph::new(str).alignment(Alignment::Center).style( - Style::default() - .fg(Color::Blue) - .add_modifier(Modifier::BOLD), - ) + Paragraph::new(str) + .wrap(Wrap { trim: true }) + .alignment(Alignment::Center) + .style(Style::default().fg(Color::Blue).add_modifier(Modifier::BOLD)) } pub fn center_vertically(chunk: Rect, text: &str) -> String { |