Topic: undoing actions in a UserInterface

topics > computer science > Group: user interface

database transactions
ease of use
error safe systems
incremental execution
optimistic update for concurrency control
preventing accidental errors
reversible execution
usability errors
Subtopic: importance of undo/redo/recovery up

Quote: indefinite undo and redo is the most important feature of a system [»vandA7_1988]
Quote: although conventional security concerns protection, an interactive system needs recovery tools, e.g., undo and restore damaged data [»bereG9_1982]
Quote: undoing, guarded buttons, and edit recovery provide confidence for rapid system interaction [»teitW3_1985]
Quote: every action should be reversible; in a car you don't undo the last turn, you turn the other way [»shneB_1985]

Subtopic: snapshot restore up

Quote: an complete snapshot of the Smalltalk environment can be taken at any time and later resumed [»teslL8_1981]

Subtopic: speculative execution up

Quote: with reversible operations, execute immediately and redo if conflict [»sariS10_1985]

Subtopic: debugging up

Quote: in debugging, need to general mechanism to remove side-effects so that operations can be reversed and initial states restored [»heerJ4_1985]
Quote: in debugging robots, it can be difficult or impossible to undo errors [»goldR_1985]
Quote: added reversible execution across multiple processes to Simula; particularly useful for debugging [»lafoF3_1984]

Subtopic: collaborative undo up

Quote: undo algorithm for bitmap-based collaborative graphics; reduce space cost; uses timestamps, state vector, and quadtrees [»wangX11_2002]

Subtopic: implementation up

Quote: make delete reversible by moving deleted segments to a special file [»teitT6_1979]
Quote: implement 'undo' with an undo transcript, redo transcript, and sequence numbers; e.g., global substitution in reverse order [»pikeR1_1994]
Quote: undo a group edit by transposing the inverse operation to the original location in the history buffer [»sunC12_2000]

Subtopic: examples of undo up

Quote: Concurrent Pascal includes a 'port' data type for undoing actions; invoked in error recovery [»shriSK12_1979]
Quote: Cornell_Program_Synthesizer can reverse execution for a bounded number of steps; with tracing and monitoring, allows quick convergence to error [»teitT9_1981]
Quote: erase and copy commands require confirmation with the effected region displayed; also undo [»goodM6_1981]
Quote: FRESS may be the first system with undo; it was the most popular feature [»vandA7_1988]
Quote: Guide expands or contracts buttons until document tailored to reader's needs [»browPJ11_1987]
Quote: Intermedia allows indefinite undo and redo upto last save point; makes users secure [»yankN1_1988]
Quote: instead of confirming a command, Smalltalk commands can be undone [»teslL8_1981]
Quote: Smalltalk's undo reverses effects of typing and backspacing up to the previous selection [»teslL8_1981]
Quote: 'cancel' in Smalltalk reverts to the last successfully compiled version of a method; 'undo' recovers your edits [»teslL8_1981]
Quote: ZStep allows a program to run forward or backward. It can step over graphical events

Related Topics up

Topic: backtracking (30 items)
Topic: database transactions (27 items)
Topic: ease of use (47 items)
Topic: error safe systems (76 items)
Topic: incremental execution (22 items)
Topic: optimistic update for concurrency control (35 items)
Topic: preventing accidental errors (37 items)
Topic: reversible execution (20 items)
Topic: usability errors
(6 items)

Updated barberCB 3/05
Copyright © 2002-2008 by C. Bradford Barber. All rights reserved.
Thesa is a trademark of C. Bradford Barber.