SYNCHRONIZING UNDO/REDO OPERATIONS BETWEEN DIFFERENT DOCUMENT VIEWS
First Claim
1. At a computer system including an editor having a plurality of document views including a first view and a second view, the first view and the second view having different document architectures for representing documents loaded into the editor, a method for synchronizing undo operations between the first and second view, the method comprising:
- an act of detecting a change to the document in the first view;
an act of the first view creating a global undo unit in a unified undo stack, the unified undo stack accessible to and configured for compatible interaction with both the first view and the second view;
an act of the first view inserting a first view undo operation for the detected change into the global undo unit;
an act of the first view notifying the second view of the detected change such that the detected change can be synchronized between the first view and the second view;
an act of the first view receiving a notification that the second view has inserted a corresponding appropriate second view undo unit into the global undo unit such that undo operations for undoing the detected change are unified in the global undo unit.
2 Assignments
0 Petitions
Accused Products
Abstract
The present invention extends to methods, systems, and computer program products for synchronizing undo/redo operations between different document views. A unified undo stack uniformly stores undo operations and information for multiple views of a document. When a change in first view is detected, the first view submits an undo unit for storage in a global undo unit in the unified undo stack. A second view is notified of the detected change in the first view. In response, the second view submits an undo unit for storage in the global undo unit. Accordingly, undo information for both views is stored together at the unified undo stack. When an undo command is receive from either view, appropriate undo units for each view are applied to each view respectively.
-
Citations
20 Claims
-
1. At a computer system including an editor having a plurality of document views including a first view and a second view, the first view and the second view having different document architectures for representing documents loaded into the editor, a method for synchronizing undo operations between the first and second view, the method comprising:
-
an act of detecting a change to the document in the first view; an act of the first view creating a global undo unit in a unified undo stack, the unified undo stack accessible to and configured for compatible interaction with both the first view and the second view; an act of the first view inserting a first view undo operation for the detected change into the global undo unit; an act of the first view notifying the second view of the detected change such that the detected change can be synchronized between the first view and the second view; an act of the first view receiving a notification that the second view has inserted a corresponding appropriate second view undo unit into the global undo unit such that undo operations for undoing the detected change are unified in the global undo unit. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. At a computer system including an editor having a plurality of document views including a first view and a second view, the first view and the second view having different document architectures for representing documents loaded into the editor, a method for uniformly performing undo operations at the first and second view, the method comprising:
-
an act of loading corresponding representations of a document into the first view and second view of the editor respectively, the document representations loaded according to the different document architectures for the first and second view; an act of detecting invocation of an undo command at the first view, the undo command invoked to undo a change previously entered into the document; an act of accessing a global unit undo from a unified undo stack, the global undo unit including a first view undo unit and a corresponding second view undo, the first view undo unit containing first undo information for undoing the previously entered document change in the first view, the second view undo unit containing second undo information for undoing the previously entered document change in the second view; an act of applying the first undo information to the loaded representation of the document in the first view; and an act of applying the second undo information to the loaded representation of the document in the second view such that the second view is consistent with any modifications to the document in the first view caused from applying the first undo information to the first view. - View Dependent Claims (11, 12, 13, 14, 15, 16)
-
-
17. At a computer system, including:
-
one or more processors; system memory; one or more physical computer-readable media having stored thereon computer-executable instructions comprising an editor and a unified undo stack, wherein; the editor is configured to; load a document into a plurality of document views including a first view and a second view, the first view and the second view having different document architectures for representing documents loaded into the editor; and the unified undo stack is configured to; receive global undo unit creation commands from either of the first and second views; create global undo units in response to global undo unit creation commands; insert first view undo units from the first view into created global undo units, the first undo units including first undo information for undoing document changes in the first view; insert second view undo units from the second view into created global undo units, the second undo units including second undo information for undoing document changes in the second view; wherein first undo units and second undo units containing undo information for undoing a document change in the first and second views respectively are inserted into the same global undo unit such the undo information for the document change is uniformly contained in the same global undo unit; receive undo commands from either of the first and second views for undoing previously entered document changes; access the appropriate global undo unit corresponding to the undo command; apply the first undo information contained in the accessed global undo unit to the first view; and apply the second undo information contained in the accessed global undo unit to the second view such that the second view is consistent with any modifications to the document in the first view caused from applying the first undo information to the first view. - View Dependent Claims (18, 19, 20)
-
Specification