A simple CPU rendered GUI IDE experience.
Diffstat (limited to 'src/edi/input_handlers.rs')
-rw-r--r--src/edi/input_handlers.rs10
1 files changed, 10 insertions, 0 deletions
diff --git a/src/edi/input_handlers.rs b/src/edi/input_handlers.rs
index 6457787..e169edb 100644
--- a/src/edi/input_handlers.rs
+++ b/src/edi/input_handlers.rs
@@ -58,3 +58,13 @@ pub fn handle2<'a>(
};
None
}
+impl Editor {
+ #[track_caller]
+ pub fn transition(&mut self, a: Action) -> Option<Do> {
+ self.state
+ .consume(a)
+ .inspect_err(|e| log::error!("transition failed: {e}"))
+ .ok()
+ .flatten()
+ }
+}