title: Multiple undo managers for a text view
body: <p>I've a text view that gets its content from an attributed string stored in a model object. I list several of these model objects in a drawer and when the user clicks on one the text view swaps its content.</p>
  
  <p>I now need to also swap the undo manager for the text view. I initialise an undo manager on my model object and use undoManagerForTextView to return it to the text view, but something's not quite right.</p>
  
  <p>Strategically placed logging statements show me that everything's working as planned: on startup a new model object is initialised correctly and a non-null undo manager is always pulled by the text view. But when it comes to actually doing undo, I just can't get the behaviour I want.</p>
  
  <p>I open a window, type something and press cmd+z, and undo works. 
  I open a window, type something, select a new model on the table, type something, go back to the first model and try to undo and all I get is a beep.</p>
  
  <p><a href="http://developer.apple.com/mac/library/DOCUMENTATION/Cocoa/Conceptual/UndoArchitecture/Articles/UsingUndoAppKit.html" rel="nofollow noreferrer">Something</a> on the documentation made me raise an eyebrow, as it would mean that I can't have undo with several model objects:</p>
  
  <blockquote>
    <p>The default undo and redo behavior
    applies to text fields and text in
    cells as long as the field or cell is
    the first responder (that is, the
    focus of keyboard actions). Once the
    insertion point leaves the field or
    cell, prior operations cannot be
    undone.</p>
  </blockquote>