diff options
Diffstat (limited to 'edit/006-sandbox-edit.mu')
-rw-r--r-- | edit/006-sandbox-edit.mu | 70 |
1 files changed, 35 insertions, 35 deletions
diff --git a/edit/006-sandbox-edit.mu b/edit/006-sandbox-edit.mu index ebfac6ac..257aed22 100644 --- a/edit/006-sandbox-edit.mu +++ b/edit/006-sandbox-edit.mu @@ -4,17 +4,17 @@ scenario clicking-on-a-sandbox-moves-it-to-editor [ trace-until 100/app # trace too long assume-screen 40/width, 10/height # basic recipe - 1:address:shared:array:character <- new [ + 1:address:array:character <- new [ recipe foo [ reply 4 ]] # run it - 2:address:shared:array:character <- new [foo] + 2:address:array:character <- new [foo] assume-console [ press F4 ] - 3:address:shared:programming-environment-data <- new-programming-environment screen:address:shared:screen, 1:address:shared:array:character, 2:address:shared:array:character - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + 3:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character, 2:address:array:character + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data screen-should-contain [ . run (F4) . . ┊ . @@ -30,7 +30,7 @@ recipe foo [ left-click 3, 30 ] run [ - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data ] # it pops back into editor screen-should-contain [ @@ -48,7 +48,7 @@ recipe foo [ type [0] ] run [ - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data ] screen-should-contain [ . run (F4) . @@ -69,7 +69,7 @@ after <global-touch> [ click-column:number <- get t, column:offset on-sandbox-side?:boolean <- greater-or-equal click-column, sandbox-left-margin break-unless on-sandbox-side? - first-sandbox:address:shared:sandbox-data <- get *env, sandbox:offset + first-sandbox:address:sandbox-data <- get *env, sandbox:offset break-unless first-sandbox first-sandbox-begins:number <- get *first-sandbox, starting-row-on-screen:offset click-row:number <- get t, row:offset @@ -78,9 +78,9 @@ after <global-touch> [ empty-sandbox-editor?:boolean <- empty-editor? current-sandbox break-unless empty-sandbox-editor? # don't clobber existing contents # identify the sandbox to edit and remove it from the sandbox list - sandbox:address:shared:sandbox-data <- extract-sandbox env, click-row + sandbox:address:sandbox-data <- extract-sandbox env, click-row break-unless sandbox - text:address:shared:array:character <- get *sandbox, data:offset + text:address:array:character <- get *sandbox, data:offset current-sandbox <- insert-text current-sandbox, text *env <- put *env, render-from:offset, -1 hide-screen screen @@ -91,18 +91,18 @@ after <global-touch> [ } ] -def empty-editor? editor:address:shared:editor-data -> result:boolean [ +def empty-editor? editor:address:editor-data -> result:boolean [ local-scope load-ingredients - head:address:shared:duplex-list:character <- get *editor, data:offset - first:address:shared:duplex-list:character <- next head + head:address:duplex-list:character <- get *editor, data:offset + first:address:duplex-list:character <- next head result <- not first ] -def extract-sandbox env:address:shared:programming-environment-data, click-row:number -> result:address:shared:sandbox-data, env:address:shared:programming-environment-data [ +def extract-sandbox env:address:programming-environment-data, click-row:number -> result:address:sandbox-data, env:address:programming-environment-data [ local-scope load-ingredients - curr-sandbox:address:shared:sandbox-data <- get *env, sandbox:offset + curr-sandbox:address:sandbox-data <- get *env, sandbox:offset start:number <- get *curr-sandbox, starting-row-on-screen:offset in-editor?:boolean <- lesser-than click-row, start return-if in-editor?, 0 @@ -110,16 +110,16 @@ def extract-sandbox env:address:shared:programming-environment-data, click-row:n { # first sandbox? pop break-unless first-sandbox? - next-sandbox:address:shared:sandbox-data <- get *curr-sandbox, next-sandbox:offset + next-sandbox:address:sandbox-data <- get *curr-sandbox, next-sandbox:offset *env <- put *env, sandbox:offset, next-sandbox } { # not first sandbox? break-if first-sandbox? - prev-sandbox:address:shared:sandbox-data <- copy curr-sandbox + prev-sandbox:address:sandbox-data <- copy curr-sandbox curr-sandbox <- get *curr-sandbox, next-sandbox:offset { - next-sandbox:address:shared:sandbox-data <- get *curr-sandbox, next-sandbox:offset + next-sandbox:address:sandbox-data <- get *curr-sandbox, next-sandbox:offset break-unless next-sandbox # if click-row < sandbox.next-sandbox.starting-row-on-screen, break next-start:number <- get *next-sandbox, starting-row-on-screen:offset @@ -145,15 +145,15 @@ scenario sandbox-with-print-can-be-edited [ trace-until 100/app # trace too long assume-screen 100/width, 20/height # left editor is empty - 1:address:shared:array:character <- new [] + 1:address:array:character <- new [] # right editor contains an instruction - 2:address:shared:array:character <- new [print-integer screen, 4] - 3:address:shared:programming-environment-data <- new-programming-environment screen:address:shared:screen, 1:address:shared:array:character, 2:address:shared:array:character + 2:address:array:character <- new [print-integer screen, 4] + 3:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character, 2:address:array:character # run the sandbox assume-console [ press F4 ] - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data screen-should-contain [ . run (F4) . . ┊ . @@ -174,7 +174,7 @@ scenario sandbox-with-print-can-be-edited [ left-click 3, 70 ] run [ - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data ] screen-should-contain [ . run (F4) . @@ -189,10 +189,10 @@ scenario editing-sandbox-after-scrolling-resets-scroll [ trace-until 100/app # trace too long assume-screen 30/width, 10/height # initialize environment - 1:address:shared:array:character <- new [] - 2:address:shared:array:character <- new [] - 3:address:shared:programming-environment-data <- new-programming-environment screen:address:shared:screen, 1:address:shared:array:character, 2:address:shared:array:character - render-all screen, 3:address:shared:programming-environment-data + 1:address:array:character <- new [] + 2:address:array:character <- new [] + 3:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character, 2:address:array:character + render-all screen, 3:address:programming-environment-data # create 2 sandboxes and scroll to second assume-console [ press ctrl-n @@ -203,7 +203,7 @@ scenario editing-sandbox-after-scrolling-resets-scroll [ press down-arrow press down-arrow ] - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data screen-should-contain [ . . . ┊━━━━━━━━━━━━━━. @@ -218,7 +218,7 @@ scenario editing-sandbox-after-scrolling-resets-scroll [ left-click 2, 20 ] run [ - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data ] # second sandbox shows in editor; scroll resets to display first sandbox screen-should-contain [ @@ -237,10 +237,10 @@ scenario editing-sandbox-updates-sandbox-count [ trace-until 100/app # trace too long assume-screen 30/width, 10/height # initialize environment - 1:address:shared:array:character <- new [] - 2:address:shared:array:character <- new [] - 3:address:shared:programming-environment-data <- new-programming-environment screen:address:shared:screen, 1:address:shared:array:character, 2:address:shared:array:character - render-all screen, 3:address:shared:programming-environment-data + 1:address:array:character <- new [] + 2:address:array:character <- new [] + 3:address:programming-environment-data <- new-programming-environment screen:address:screen, 1:address:array:character, 2:address:array:character + render-all screen, 3:address:programming-environment-data # create 2 sandboxes assume-console [ press ctrl-n @@ -249,7 +249,7 @@ scenario editing-sandbox-updates-sandbox-count [ type [add 1, 1] press F4 ] - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data screen-should-contain [ . . . ┊ . @@ -266,7 +266,7 @@ scenario editing-sandbox-updates-sandbox-count [ press F4 ] run [ - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data ] # no change in contents screen-should-contain [ @@ -286,7 +286,7 @@ scenario editing-sandbox-updates-sandbox-count [ press down-arrow ] run [ - event-loop screen:address:shared:screen, console:address:shared:console, 3:address:shared:programming-environment-data + event-loop screen:address:screen, console:address:console, 3:address:programming-environment-data ] # screen should show just final sandbox screen-should-contain [ |