USRE38270EExpiredUtility
Multiple level undo/redo mechanism
Est. expiryApr 22, 2013(expired)· nominal 20-yr term from priority
Inventors:Satoshi Nakajima
G06F 9/451G06F 3/0481
62
PatentIndex Score
35
Cited by
12
References
12
Claims
Abstract
A multiple-level undo/redo mechanism is provided in an operating system and is available to application programs run on the operating system. The dating system provides a mechanism for keeping a log of user commands and providing a cursor to a position within the log. Each command may be encapsulated into an object that supports an interface for performing undo/redo operations. Similarly, the log may be encapsulated into an object that supports operations that facilitate a multiple-level undo/redo. A user may perform a single undo/redo operation, multiple successive undo/redo operations or complete undo/redo operations.
Claims
exact text as granted — not AI-modifiedI claim:
1. In a computer system having a video display and running an operating system and an application program, a method comprising the computer-implemented steps of:
providing a multiple level undo/redo facility in the operating system;
creating a command element object by the application program for each associated command that is executed in the application program, each command element object including a pointer to a V-table that has at least one entry that holds a pointer to code for undoing or performing the command associated with the command element object;
linking the command element objects together in a sequential list ordered according to when the associated commands were executed;
encapsulating the sequential list of lined command element objects in a command log object that is provided by the application program;
with the undo/redo facility, displaying an activatable undo/redo user interface element in a window on the video display, wherein the window is provided by the application program; and
in response to a user activating the undo/redo facility, with the undo/redo facility calling the code that is pointed to by an entry in a V-table that is pointed to by a pointer in a selected one of command element objects in the sequential list to undo or redo the command associated with the selected command element.
2. The method of claim 1 wherein the undo/redo user interface element is an undo user interface element and the entry in the V-table pointed to by the pointer in the selected command element object holds a pointer to code for undoing the command that is associated with the selected command element object.
3. The method of claim 1 wherein the undo/redo user interface element is a redo user interface element and the entry in the V-table pointed to by the pointer in the selected command element object holds a pointer to code for performing the command that is associated with the selected command element object.
4. In a computer system that has a video display and that runs an operating system and an application program, wherein the application program provides a command element object for each associated command that is executed in the application program and each command element object including a pointer to a V-table that has at least one entry that holds a pointer for undoing or redoing the command associated with the command element object and wherein the application program encapsulates a sequential list of the command element objects that are linked and ordered according to when the associated command were executed in a command log object, a computer-readable storage medium holding instructions for:
providing a multiple level undo/redo facility in the operating system;
with the undo/redo facility, displaying an activatable undo/redo user interface element in a window on the video display, where the window is provided by the application program; and
in response to a user activating the undo/redo user interface element, with the undo/redo facility calling the code that is pointed to by the entry in the V-table pointed to by a pointer in a selected one of command element objects in the sequential list to undo or redo the associated command.
5. In a computer system having a video display and running both an operating system and an application program, a method comprising the steps of:
providing a multiple level undo/redo facility in the operating system;
displaying an activatable undo-all user interface element by the undo/redo facility in a window provided by the application program or on the video display and which is opened when accessing the interface element of the undo/redo facility;
where a user has caused multiple commands of the application program to be executed undoing effects of executing the commands, in response to the user activating the undo-all user interface element, by the undo/redo facility calling code in the application program for undoing the commands.
6. In a computer system having a video display and running both an operating system and an application program, a computer-readable storage medium holding instructions for performing a method comprising the steps of:
providing a multiple level undo/redo facility in the operating system;
displaying an activatable undo-all user interface element by the undo/redo facility in a window provided by the application program on the video display and which is opened when accessing the interface element of the undo/redo facility;
where a user has caused multiple commands of the application program to be executed, undoing effects of executing the commands in response to the uses activating the undo-all user interface element, by the undo/redo facility calling code in the application program for undoing the commands.
7. In a computer system having a video display and running both an operating system and an application program, a method comprising the steps of:
providing a multiple level undo/redo facility in the operating system;
with the undo/redo facility, displaying an activatable redo-all user interface for causing all commands of the application program, that have been undone to be again executed, in a window provided by the application program on the video display and which is opened when accessing the interface element of the undo/redo facility; and
where a user has undone multiple commands, executing the undone commands in response to the user activating the redo-all user interface element, by the undo/redo facility calling code for performing the commands in the application program.
8. In a computer system having a video display and running both an operating system and an application program, a computer-readable storage medium holding instructions for performing a method comprising the steps of:
providing a multiple level undo/redo facility in the operating system;
with the undo/redo facility, displaying an activatable redo-all user interface for causing all commands of the application program, that have been undone to be again executed, in a window provided by the application program on the video display and which is opened when accessing the interface element of the undo/redo facility; and
where a user has undone multiple commands, executing the undone commands in response to the user activating the redo-all user interface element, by the undo/redo facility calling code for performing the commands in the application program.
9. In a computer system that has a display and that runs an operating system and an application program, wherein the application program provides a command element object for each associated command that is executed in the application program and wherein the operating system provides a multiple level undo/redo facility, a computer- readable storage medium on which are stored computer - executable instructions for implementing within the application program a method which is comprised of:
a step for creating in the application program a list of command element objects which are sequentially ordered corresponding to the order of the commands executed in the application program, each command element object in said list having associated with it a means for selectively activating the undo/redo facility in the operating system;
a step for accessing the undo/redo facility in order to display an activatable undo/redo user interface element in a window on the display, wherein the window is provided by the application program; and
a step for using said interface element to select any command element object in said list and in response to said selection, the undo/redo facility undoing or redoing as directed by a user either one or all the commands for all command element objects in said list, as selected.
10. In a computer system that has a display and that runs an operating system and an application program, wherein the application program provides a command element object for each associated command that is executed in the application program and wherein the operating system provides a multiple level undo/redo facility, a method comprised of:
a step for creating in the application program a list of command element objects which are sequentially ordered corresponding to the order of the commands executed in the application program, each command element object in said list having associated with it a means for selectively activating the undo/redo facility in the operating system;
a step for accessing the undo/redo facility in order to display an activatable undo/redo user interface element in a window on the display, wherein the window is provided by the application program; and
a step for using said interface element to select any command element object in said list and in response to said selection, the undo/redo facility undoing or redoing as directed by a user either one or all the commands for all command element objects in said list, as selected.
11. In a computer system that has a display and that runs an operating system and an application program, wherein the application program provides a command element object for each associated command that is executed in the application program and wherein the operating system provides a multiple level undo/redo facility, a computer- readable storage medium on which are stored computer - executable instructions for implementing within the application program a method which is comprised of:
the step for creating in the application program a list of command element objects which are sequentially ordered corresponding to the order of the commands executed in the application program, each command element object in said list comprising a pointer to computer - executable code for selectively undoing or redoing the command associated with that command element object;
the act of specifying a cursor position that corresponds to one of the command element objects so that any command element objects associated with commands executed in the application program prior to the time for the command associated with the specified cursor position are identified by virtue of the cursor position;
based on the specified cursor position, the act of deleting from said list any command element objects that have already been undone at the time a new command is executed by the user in the application program, and thereafter performing the act of appending to the front of said list a new command element object for the newly executed command in the application program, and moving the cursor position to that newly appended command element object;
a step for accessing the undo/redo facility in order to display an activatable undo/redo user interface element in a window on the display, wherein the window is provided by the application program; and
a step for using said interface element to select any command element object in said list and in response to said selection, the undo/redo facility undoing or redoing as directed by a user either one or all the commands for all command element objects in said list, as selected.
12. In a computer system that has a display and that runs an operating system and an application program, wherein the application program provides a command element object for each associated command that is executed in the application program and wherein the operating system provides a multiple level undo/redo facility, a method comprised of;
the step for creating in the application program a list of command element objects which are sequentially ordered corresponding to the order of the commands executed in the application program, each command element object in said list comprising a pointer to computer - executable code for selectively undoing or redoing the command associated with that command element object;
the act of specifying a cursor position that corresponds to one of the command element objects so that any command element objects associated with commands executed in the application program prior to the time for the command associated with the specified cursor position are identified by virtue of the cursor position;
based on the specified cursor position, the act of deleting from said list any command element objects that have already been undone at the time a new command is executed by the user in the application program, and thereafter performing the act of appending to the front of said list a new command element object for the newly executed command in the application program and moving the cursor position to that newly appended command element object;
a step for accessing the undo/redo facility in order to display an activatable undo/redo user interface element in a window on the display, wherein the window is provided by the application program; and
a step for using said interface element to select any command element object in said list and in response to said selection, the undo/redo facility undoing or redoing as directed by a user either one or all commands for all command element objects in said list, as selected.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.