/// <summary>
            /// Undoes the change.
            /// </summary>
            /// <param name="doc">The document on which to undo the change.</param>
            public override void Undo(TwoDADocument doc)
            {
                var row = doc.Data.NewRow();

                row.ItemArray = rowItemArray;
                doc.Data.Rows.InsertAt(row, rowIndex);
            }
 /// <summary>
 /// Undoes the change.
 /// </summary>
 /// <param name="doc">The document on which to undo the change.</param>
 public override void Undo(TwoDADocument doc)
 {
     doc.Data.Rows[rowIndex].Delete();
 }
 /// <summary>
 /// Undoes the change.
 /// </summary>
 /// <param name="doc">The document on which to undo the change.</param>
 public override void Undo(TwoDADocument doc)
 {
     doc.Data.Rows[rowIndex][columnIndex] = oldValue;
 }
 /// <summary>
 /// Undoes the change.
 /// </summary>
 /// <param name="doc">The document on which to undo the change.</param>
 public abstract void Undo(TwoDADocument doc);