public void Undo()
        {
            TestChangeEvent changeEvent = null;

            if (_undoStack.Count > 0)
            {
                changeEvent = _undoStack.Pop();

                Debug.WriteLine("Undo event popped:  " + changeEvent.ToString());

                fireUndoEvent(changeEvent);

                _redoStack.Push(changeEvent);
            }
        }
        public void RecordChangeEvent(TestChangeEvent changeEvent)
        {
            Debug.WriteLine("Event recorded:  " + changeEvent.ToString());

            _undoStack.Push(changeEvent);
        }