From acc2ce0ca2215c3592060595228587da0c1268ff Mon Sep 17 00:00:00 2001 From: unspeaker Date: Sat, 22 Mar 2025 23:11:25 +0200 Subject: [PATCH] update edited table value --- src/keys.rs | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/keys.rs b/src/keys.rs index cc15e15..7001ff2 100644 --- a/src/keys.rs +++ b/src/keys.rs @@ -45,8 +45,8 @@ impl Handle for Taggart { press!(Shift-Char(c)) => self.edit_insert(c.to_uppercase().next().unwrap()), press!(Backspace) => self.edit_backspace(), press!(Delete) => self.edit_delete(), - press!(Enter) => self.edit_cancel(), - press!(Esc) => self.edit_confirm(), + press!(Enter) => self.edit_confirm(), + press!(Esc) => self.edit_cancel(), _ => {} }, } @@ -80,6 +80,13 @@ impl Taggart { self.editing = None; } 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; } pub fn edit_insert (&mut self, c: char) {