code: @SuppressWarnings("UnusedDeclaration")
    public void recordChange( StateEditable change )
    {
      beginUndoAtom();
      try
      {
        StateEdit transaction = new StateEdit( change );
        transaction.end();
        addEdit( transaction );
      }
      finally
      {
        endUndoAtom();
      }
    }
docs: Utility method that records a change that can be undone/redone.