Design #1340
Interactive window and history mechanism
Description
Issue to summarise design of "interactive window" and its history mechanism.
Also to report progress on implementation.
Related issues
History
#1 Updated by John Abbott over 4 years ago
- Related to Feature #1328: New ApCoCoA UI added
#2 Updated by John Abbott over 4 years ago
There is a single interactive window.
Q: Martin can you confirm this?
The user types input into a blank "new page", and then sends the entire page to the execution/output window.
The input window then presents a new empty page to the user.
If the interactive page is empty then nothing is sent to ApCoCoA. Should the page be cleared out?
Q: Is the input which has been sent echoed in the output window? Ask Martin.
After a (non-empty) page has been sent to ApCoCoA, that page is also stored in a sequential history of pages sent.
Pages from the history may be brought into the current input page; the history pages can be "browsed" in a circular manner
(i.e. there is a way to go to "previous" history page, and "next"; from the current interactive window "next"
refers to the first saved page). Be careful about an empty history ring.
Q: any input that was in the current input page is lost when a page from the history is recalled.
Q: When a page is recalled from the history and then sent as "new" input, is another copy stored as the last page in the history?
Q: if another copy is not stored, is the sequential order in the history ring changed?
Q: If a new copy of a page recalled from the history is not appended to the history, what happens when a user recalls a page from the history and modifies it before sending it for execution to ApCoCoA?
NOTE an "empty page" means one which contains just whitespace (spaces, tabs, newlines)