auto select new phrase; add corners

This commit is contained in:
🪞👃🪞 2024-10-10 12:06:54 +03:00
parent 96ca1e148b
commit bfe51cecdf

View file

@ -47,10 +47,14 @@ impl Content for PhrasePool<Tui> {
col!(
"Phrases:".fill_x().fixed_y(2),
col!((i, phrase) in self.phrases.iter().enumerate() =>
format!("{i}").fixed_y(2).bg(if i == self.phrase {
Color::Rgb(40, 50, 30)
} else {
Color::Rgb(28, 35, 25)
Layers::new(|add|{
add(&format!(" {i}").fixed_y(2).bg(if i == self.phrase {
Color::Rgb(40, 50, 30)
} else {
Color::Rgb(28, 35, 25)
}))?;
if self.focused && i == self.phrase { add(&CORNERS)?; }
Ok(())
}))
)
.fill_xy()
@ -76,10 +80,12 @@ impl Handle<Tui> for PhrasePool<Tui> {
self.phrase = (self.phrase + 1) % self.phrases.len()
},
key!(KeyCode::Char('i')) => {
self.phrases.insert(self.phrase, Arc::new(RwLock::new(Phrase::default())))
self.phrases.insert(self.phrase, Arc::new(RwLock::new(Phrase::default())));
self.phrase += 1;
},
key!(KeyCode::Char('a')) => {
self.phrases.push(Arc::new(RwLock::new(Phrase::default())))
self.phrases.push(Arc::new(RwLock::new(Phrase::default())));
self.phrase = self.phrases.len() - 1;
},
_ => return Ok(None),
}