I have a master-detail interface, the main window has a table view
(master interface) and double clicking each row in the tabel view
opens a new sheet for editing the model object attributes (detail
view). The sheet has two buttons "Cancel" and "Save". All the UI
elements in the detail view are using bindings. I am not sure how to
handle the Cancel functionality in the sheet, How can I undo the
changes when the user selects the "Cancel" button, it could be
multiple undos depending on how many fields in the sheet the user
changed. Should I create a new Undo Group?