add value bar

This commit is contained in:
🪞👃🪞 2025-03-23 23:10:04 +02:00
parent 2ebf2c6cef
commit 41b6a0cd57
6 changed files with 64 additions and 39 deletions

View file

@ -35,7 +35,7 @@ impl Handle<TuiIn> for Taggart {
press!(Left) => { self.column = self.column.saturating_sub(1); },
press!(Right) => { self.column = self.column + 1; },
press!(Enter) => { self.edit_begin() },
press!(Char(' ')) => { open(&self.paths[self.cursor].path)?; }
press!(Char(' ')) => { open(&self.entries[self.cursor].path)?; }
press!(Char(']')) => { self.columns.0[self.column].width += 1; }
press!(Char('[')) => { self.columns.0[self.column].width =
self.columns.0[self.column].width.saturating_sub(1).max(5); }
@ -57,8 +57,10 @@ impl Handle<TuiIn> for Taggart {
if self.cursor > x_max {
self.offset += self.cursor - x_max;
}
if self.cursor >= self.paths.len() {
self.cursor = self.paths.len().saturating_sub(1)
if self.offset > self.display.h() {
}
if self.cursor >= self.entries.len() {
self.cursor = self.entries.len().saturating_sub(1)
}
if self.column + 1 > self.columns.0.len() {
self.column = self.columns.0.len().saturating_sub(1)
@ -72,7 +74,7 @@ impl Taggart {
if let Some(column) = self.columns.0.get(self.column)
&& column.setter.is_some()
{
let value = (column.getter)(&self.paths[self.cursor]);
let value = (column.getter)(&self.entries[self.cursor]);
let value = format!("{}", value.unwrap_or_default());
self.editing = Some((value.len(), value));
}
@ -84,9 +86,9 @@ impl Taggart {
if let Some((_edit_index, value)) = &self.editing
&& let Some(column) = self.columns.0.get(self.column)
&& let Some(setter) = &column.setter
&& self.paths.get_mut(self.cursor).is_some()
&& self.entries.get_mut(self.cursor).is_some()
{
setter(self.paths.as_mut_slice(), self.cursor, value)
setter(self.entries.as_mut_slice(), self.cursor, value)
}
self.editing = None;
}