update edited table value

This commit is contained in:
🪞👃🪞 2025-03-22 23:11:25 +02:00
parent f9885713cc
commit acc2ce0ca2

View file

@ -45,8 +45,8 @@ impl Handle<TuiIn> for Taggart {
press!(Shift-Char(c)) => self.edit_insert(c.to_uppercase().next().unwrap()), press!(Shift-Char(c)) => self.edit_insert(c.to_uppercase().next().unwrap()),
press!(Backspace) => self.edit_backspace(), press!(Backspace) => self.edit_backspace(),
press!(Delete) => self.edit_delete(), press!(Delete) => self.edit_delete(),
press!(Enter) => self.edit_cancel(), press!(Enter) => self.edit_confirm(),
press!(Esc) => self.edit_confirm(), press!(Esc) => self.edit_cancel(),
_ => {} _ => {}
}, },
} }
@ -80,6 +80,13 @@ impl Taggart {
self.editing = None; self.editing = None;
} }
pub fn edit_confirm (&mut self) { pub fn edit_confirm (&mut self) {
if let Some((edit_index, value)) = &self.editing
&& let Some(column) = self.columns.0.get(self.column)
&& let Some(setter) = &column.setter
&& let Some(entry) = self.paths.get_mut(self.cursor)
{
setter(entry, value)
}
self.editing = None; self.editing = None;
} }
pub fn edit_insert (&mut self, c: char) { pub fn edit_insert (&mut self, c: char) {