I NOW – 1000

Undo (English for “reverse, withdraw”) is essential interaction technology in modern user interfaces and refers to the function of application programs with which one or more actions can be withdrawn. Depending on the extent of the application, the undo option can range from the withdrawal of the last action to the withdrawal of all work steps. The undo function is often with a Redo -Function (“restore”) combined, which cancel a preceding UNDO.

On the PC, the UNDO is usually triggered by pressing the key combination Ctrl+Z (under Microsoft Windows) or Command+Z (Apple Macintosh). The fact that this key combination serves as a shortcut has the origin of the buttons: that WITH lies on the English keyboard next to the buttons of the combinations for “cutting out” ( Ctrl+X ), “Copy” ( Ctrl+C ) and “Insert” ( Rg+in ), in the immediate vicinity of the Ctrl key, and is therefore easy to reach. The button is on German keyboards WITH However, a maximum of far from the Ctrl keys.

The common key combinations for Redo are Ctrl+y or Ctrl+Shift+Z (or Command+Shift+Z in Macintosh programs).

Refraining from operations on the computer represents an important form of interaction in different work processes. Building on how and what computers were used for, there were several approaches to introduce such a function. The File Retrieval and Editing System , which was developed at Brown University from 1968, the first system is considered to Undo -Function. [first] The programmmer’s Assistant, developed by Warren Teitelman in 1971 as part of BBN-LISP, was also able to undo actions. [2] The IBM employees Lance A. Miller and John C. Thomas noted Undo -Ocation in her essay published in 1976 Behavioral Issues in the Use of Interactive Systems (“Behavioral questions when using interactive systems”), that It would be quite useful if users could at least “take back” the last command (by performing a special “Undo” command). [3] Programmers of the Xerox Parc research center took the key combination Control + Z with an undo command. In this form, the command quickly became an indispensable part of editors and text processing programs on personnel computers. [4] When Larry Tesler from Xerox Parc 1980 began working on Apple Computer, he worked with Bill Atkinson to introduce an undo function at the Apple Lisa.

While the undo function initially only referred to the last action, the first programs were developed in the 1980s to several actions (the Undo-stack ) could undo. Initial applications that implemented an undo function were Atarwriter (1982), the text processing program Newword (1984) with his giving -Function, and IBM’s Visiword (1983, undelete ). [5]

Undo models can be categorized as linear or non-linear:

  • With a linear model, all actions are stored in an undo stack. In order to undo an earlier campaign, all actions that have happened afterwards must also be reversed.
  • In the case of a non -linear model, any actions can be selected from a list and reversed. [6]

If several users can work on a document at the same time, this must also be taken into account in the undo function. In the event of a global change from several users to a document (“Global Multi-User-ando”), the last action is undone, which was carried out at a document-regardless of which user the action was started. In the event of a local cancellation, however, in a document used by several people (“Local Multi-User ando”), each user can only undo their own changes. This requires a non-linear implementation of the undo function. [7]

The number of actions that are located on the action list and can therefore be reversed depends on the respective program and the hardware used. For example, this holds 20 actions in Adobe Photoshop, but can be adjusted by the user. In Microsoft Paint, Windows 7 50 actions can be reversed since Microsoft.

The provision of an undo function requires the presence of at least rudimentary form of version management.

The UNDO functionality can either be implemented by saving the system state after each action of the user (see Memento (design)), so that every old condition of the system can be restored; Or the actions themselves are recorded in a list (Command Pattern). However, the second approach is only possible if all actions of the program are reversible.

  1. Belinda child: Memory Machines: The Evolution of Hypertext. Anthem Press, December 1, 2014, accessed on September 29, 2018 . From the same author: Crafting the User-Centered Document Interface: The Hypertext Editing System (HES) and the File Retrieval and Editing System (FRESS) , Digital Humanities Quarterly (DHQ) 2010 Volume 4 Number 1, accessed September 12, 2022.
  2. WARREN MEETING: Automated programmering: the programmer’s assistant . ACM, December 5, 1972, S. 917–921 , doi: 10.1145/1480083.1480119 ( acm.org [accessed on September 29, 2018]).
  3. Lance A. Miller, John C. Thomas Jr.: Behavioral issues in the use of interactive systems . In: International Journal of Man-Machine Studies . 9th year, No. 5 , September 1977, ISSN  0020-7373 , S. 509–536 , doi: 10.1016/S0020-7373(77)80002-3 .
  4. Ben room: The Age of Undoing. New York Times, 15. September 2009, Retrieved on December 27, 2010 . Template: Cite Web/Temporary
  5. The Ultimate IBM . In: Zeit Davis (ed.): PC Mag . Band 2 , No. 2 , 1983, S. 33 .
  6. Roberta Mancini, Alan Dix and Stefano Levialdi. 2006. “Reflections on Undo”
  7. Gregory Abowd, Alan Dix: Giving undo attention. Accessed on September 29, 2018 .