aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/input.rs9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/input.rs b/src/input.rs
index 4de615f..2d982e5 100644
--- a/src/input.rs
+++ b/src/input.rs
@@ -23,6 +23,15 @@ impl Calculator {
KeyCode::Char('A') => {
self.angle_mode = self.angle_mode.toggle();
}
+ KeyCode::Char('N') => {
+ if self.input_buffer.len() > 0 {
+ if let Ok(f) = self.input_buffer.parse::<f64>() {
+ self.input_buffer = format!("{}", -f);
+ }
+ } else if let Some(v) = self.stack.pop() {
+ self.stack.push(-v);
+ }
+ }
_ => {}
},
KeyModifiers::NONE => match key.code {