about summary refs log tree commit diff stats
path: root/edit.mu
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-07-24 19:56:13 -0700
committerKartik K. Agaram <vc@akkartik.com>2015-07-24 19:56:13 -0700
commit45a84754c9dd2fd2523e97d45c7c48c366b8f47c (patch)
treecf9512a51ecb017d173537333db89270ff7a5158 /edit.mu
parent0923863dbec496a5157e722c63dbc1b81b74d4ab (diff)
downloadmu-45a84754c9dd2fd2523e97d45c7c48c366b8f47c.tar.gz
1839 - clear entire screen on F10
Just in case we had many lines of warnings before that are now cleared
up. Again, I'm feeling confident enough to not write a test.
Diffstat (limited to 'edit.mu')
-rw-r--r--edit.mu16
1 files changed, 14 insertions, 2 deletions
diff --git a/edit.mu b/edit.mu
index 545bc90b..d42f2306 100644
--- a/edit.mu
+++ b/edit.mu
@@ -1133,8 +1133,8 @@ recipe render-all [
   local-scope
   screen:address <- next-ingredient
   env:address:programming-environment-data <- next-ingredient
-  screen:address <- render-recipes screen:address, env:address:programming-environment-data
-  screen:address <- render-sandbox-side screen:address, env:address:programming-environment-data
+  screen:address <- render-recipes screen:address, env:address:programming-environment-data, 1:literal/clear-below
+  screen:address <- render-sandbox-side screen:address, env:address:programming-environment-data, 1:literal/clear-below
   recipes:address:editor-data <- get env:address:programming-environment-data/deref, recipes:offset
   current-sandbox:address:editor-data <- get env:address:programming-environment-data/deref, current-sandbox:offset
   sandbox-in-focus?:boolean <- get env:address:programming-environment-data/deref, sandbox-in-focus?:offset
@@ -1171,6 +1171,7 @@ recipe render-recipes [
   local-scope
   screen:address <- next-ingredient
   env:address:programming-environment-data <- next-ingredient
+  clear:boolean <- next-ingredient
   recipes:address:editor-data <- get env:address:programming-environment-data/deref, recipes:offset
   # render recipes
   left:number <- get recipes:address:editor-data/deref, left:offset
@@ -1193,6 +1194,17 @@ recipe render-recipes [
   row:number <- add row:number, 1:literal
   move-cursor screen:address, row:number, left:number
   clear-line-delimited screen:address, left:number, right:number
+  # clear rest of screen in this column, if requested
+  reply-unless clear:boolean, screen:address/same-as-ingredient:0
+  screen-height:number <- screen-height screen:address
+  {
+    at-bottom-of-screen?:boolean <- greater-or-equal row:number, screen-height:number
+    break-if at-bottom-of-screen?:boolean
+    move-cursor screen:address, row:number, left:number
+    clear-line-delimited screen:address, left:number, right:number
+    row:number <- add row:number, 1:literal
+    loop
+  }
   reply screen:address/same-as-ingredient:0
 ]