public CollectionChangedCommand(UndoRedoCollection <T> collection, T changeObject, int?after, int?before) { Collection = collection; ChangedObject = changeObject; After = after; Before = before; }
/// <summary> /// コレクションの変更 /// </summary> /// <typeparam name="T"></typeparam> /// <param name="collection">コレクション</param> /// <param name="changeObject">コレクションを持つインスタンス</param> /// <param name="after">加えた場所のindex</param> /// <param name="before">削除した場所のindex</param> public static void ChangeCollection <T>(UndoRedoCollection <T> collection, T changeObject, int?after, int?before) { if (!Enable) { return; } if (isAction) { isAction = false; return; } UndoStack.Push(new CollectionChangedCommand <T>(collection, changeObject, after, before)); RedoStack.Clear(); OnUpdateData(); }