← Back to Patent Explorer
US5479601A Expired / Lapsed US ⏱️ 0.0 years remaining

Method and apparatus for processing commands generated by user interface controls in an atomic manner

Assignee: Apple Inc
•
Filing: 1995-04-13
•
Granted: 1995-12-26
•
Expires: 2015-04-13
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract An object-oriented user interface utilizes object-oriented controls that operate together as a single, atomic group to change data values and are affected as a group by conventional editing "undo" and "redo" actions. In accordance with one embodiment, each control in the group generates a command which modifies a stored control value when the control is manipulated by a user. In response to user activation, a group acceptance control generates a command which causes the data values to be changed to the stored control values. In accordance with another embodiment, each control in the group generates a command which modifies the group acceptance control command. When the group acceptance control command is finally activated, the modified command causes the data values to be changed. The entire control group can also be undone and redone in a single atomic operation which is implemented by placing a mark on an undo stack when an interface session involving a control group is started. When the session ends, all of the commands executed since the mark was placed on the undo stack are collected together into a single command group which can be undone or redone as a unit.

Inventors

  • 👤 John R. Matheny
  • 👤 Christopher White
  • 👤 David R. Anderson

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-30 13:30
CPC Classifications
G; G06; G06F; G06F8/00; G06F8/30; G06F8/38; G06F8/20; G06F8/24

Claims Analysis

Total Claims: 18
Claim 1
Independent Claim 217 words
A system for processing, in an atomic manner, commands generated by user interface control objects in order to modify data values corresponding to the user interface control objects in response to the activation of a group acceptance control object having a group acceptance graphic displayed on a display screen, the system comprising: (a) memory means for storing a command data structure; (b) processor means for saving a parameter value in the command data structure for each of the data values, each of the user interface control objects having a graphic displayed on the display screen for displaying one of the parameter values; (c) processor means for modifying one of the saved parameter values in response to a command generated by a user interface control object during a group session as a user manipulates a user interface control graphic to cause a desired change in one of the data values; (d) processor means for executing a command using the command data structure in response to the activation of the group acceptance control object caused by a user manipulation of the group acceptance graphic in order to change the data values to the parameter values; and (e) storage means for storing all commands generated by user interface control objects during the group session until the group session is completed.
Claim 2
Independent Claim 217 words
A system for processing, in an atomic manner, commands generated by user interface control objects in order to modify data values corresponding to the user interface control objects in response to the activation of a group acceptance control object having a group acceptance graphic displayed on a display screen, the system comprising: (a) memory means for storing a command data structure; (b) processor means for saving a parameter value in the command data structure for each of the data values, each of the user interface control objects having a graphic displayed on the display screen for displaying one of the parameter values; (c) processor means for modifying one of the saved parameter values in response to a command generated by a user interface control object during a group session as a user manipulates a user interface control graphic to cause a desired change in one of the data values; (d) processor means for executing a command using the command data structure in response to the activation of the group acceptance control object caused by a user manipulation of the group acceptance graphic in order to change the data values to the parameter values; and (e) storage means for storing all commands generated by user interface control objects during the group session until the group session is completed.
Claim 3
Dependent Claim 62 words
A command processing system as recited in claim 1, wherein the command data structure comprises parameters of the group acceptance control command and wherein the executing means comprises means responsive to activation of the group acceptance control object when the user manipulates the group acceptance graphic for executing the group acceptance control command using the parameters of the group acceptance control command.
Claim 4
Dependent Claim 48 words
A command processing system as recited in claim 1, including processor means responsive to changes in the data values for creating change notification objects and for forwarding the change notification objects to system components so that the system components accurately reflect the current state of the data values.
Claim 5
Dependent Claim 71 words
A command processing system as recited in claim 1, wherein each of the commands stored in the storage means comprises an undo command for restoring a data value to a value prior to execution of the command and the command processing system includes processor means responsive to all of the commands stored in the storage means for restoring all data values to values existing prior to commencement of the group session.
Claim 6
Dependent Claim 21 words
A command processing system as recited in claim 1, including interrupt detection means for determining if the group session is completed.
Claim 7
Dependent Claim 55 words
A command processing system as recited in claim 1, wherein the command data structure comprises a parameter associated with each user interface control object and wherein the executing means comprises means responsive to activation of the group acceptance control object for changing the data values to the parameter values stored in the command data structure.
Claim 8
Dependent Claim 112 words
A command processing system as recited in claim 1 wherein the storage means comprises: an undo stack; means responsive to the beginning of a group session for storing a mark in the undo stack; means for storing all commands generated by user interface control objects during the group session in the undo stack following the mark; means responsive to the end of the group session for gathering all commands on the undo stack following the mark into an atomic group command; and means for placing the atomic group command on the undo stack so that the commands generated by user interface objects during the group session can be undone as a group.
Claim 9
Dependent Claim 27 words
A command processing system as recited in claim 7 further comprising means responsive to a group undo command for undoing each command in the atomic group command.
Claim 10
Independent Claim 200 words
A method for processing, in an atomic manner, commands generated by user interface control objects in order to modify data values corresponding to the user interface control objects in response to the activation of a group acceptance control object having a group acceptance graphic displayed on a display screen, the method comprising the steps of: (a) storing a command data structure; (b) saving a parameter in the command data structure for each of the data values, each of the user interface control objects having a graphic displayed on the display screen for displaying one of the parameter values; (c) modifying one of the parameter values in response to a command generated by a user interface control object as a user manipulates the user interface control object graphic to cause a desired change in one of the data values; (d) executing a command using the command data structure in response to the activation of the group acceptance control object caused by a user manipulation of the group acceptance graphic in order to change the data values to the parameter values; and (e) storing all commands generated by user interface control objects during a group session until the group session is completed.
Claim 11
Independent Claim 200 words
A method for processing, in an atomic manner, commands generated by user interface control objects in order to modify data values corresponding to the user interface control objects in response to the activation of a group acceptance control object having a group acceptance graphic displayed on a display screen, the method comprising the steps of: (a) storing a command data structure; (b) saving a parameter in the command data structure for each of the data values, each of the user interface control objects having a graphic displayed on the display screen for displaying one of the parameter values; (c) modifying one of the parameter values in response to a command generated by a user interface control object as a user manipulates the user interface control object graphic to cause a desired change in one of the data values; (d) executing a command using the command data structure in response to the activation of the group acceptance control object caused by a user manipulation of the group acceptance graphic in order to change the data values to the parameter values; and (e) storing all commands generated by user interface control objects during a group session until the group session is completed.
Claim 12
Dependent Claim 48 words
A method for processing commands as recited in claim 9 wherein the command data structure comprises parameters of the group acceptance control command and wherein step (d) comprises the step of: (d1) executing the group acceptance control command in response to user manipulation of the group acceptance graphic.
Claim 13
Dependent Claim 52 words
A method for processing commands as recited in claim 9 further comprising the step of: (f) generating change notification objects and for forwarding the change notification objects to system components in response to changes in the data values so that the system components accurately reflect the current state of the data values.
Claim 14
Dependent Claim 37 words
A method for processing commands as recited in claim 9 further comprising the step of: (g) restoring all data values to values existing prior to commencement of the group session in response to a stored undo command.
Claim 15
Dependent Claim 23 words
A method for processing commands as recited in claim 9 further comprising the step of: (h) determining if the group session is completed.
Claim 16
Dependent Claim 67 words
A method for processing commands as recited in claim 9, wherein the command data structure comprises a parameter associated with each user interface control object and displayed in the user interface control object graphic and wherein step (d) comprises the step of: (d2) changing the data values to the parameter values stored in the command data structure in response to user manipulation of the group acceptance graphic.
Claim 17
Dependent Claim 108 words
A method for processing commands as recited in claim 9 further comprising the steps of: (i) storing a mark in an undo stack located in a storage mechanism at the beginning of a command session; (j) storing all commands generated by user interface control objects during a group session in the undo stack following the mark; (k) gathering all commands on the undo stack following the mark into a group undo command at the end of the group session; and (l) placing the group command on the undo stack so that the commands generated by user interface objects during the group session can be undone as a group.
Claim 18
Dependent Claim 44 words
A method for processing commands as recited in claim 15 further comprising the step of: (m) restoring each data value changed in response to a command to a value existing prior to commencement of the group session in response to the group undo command.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1998-12-25 1999-06-26 1999-12-26 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2002-12-25 2003-06-26 2003-12-26 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2006-12-25 2007-06-26 2007-12-26 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag