///<summary>Insert bytes into the buffer</summary> public override void Insert(long pos, byte[] data, long index, long length) { lock (LockObj) { if (!modifyAllowed) { return; } if (!IsResizable) { return; } if (pos == size) { Append(data, index, length); return; } InsertAction ia = new InsertAction(pos, data, index, length, this); ia.Do(); // if action isn't handled as chained (ActionChaining == false) // handle it manually if (!HandleChaining(ia)) { AddUndoAction(ia); RedoDequeDispose(); } EmitChanged(); } }
public override void Do() { del.Do(); ins.Do(); }