namespace HydroUI
|
{
|
|
public class UndoRedoCommand<T>
|
{
|
private readonly Action<T> _undoAction;
|
private readonly Action<T> _redoAction;
|
private readonly T _oldValue;
|
private readonly T _newValue;
|
|
public UndoRedoCommand(T oldValue, T newValue, Action<T> undoAction, Action<T> redoAction)
|
{
|
_oldValue = oldValue;
|
_newValue = newValue;
|
_undoAction = undoAction;
|
_redoAction = redoAction;
|
}
|
|
public void Undo()
|
{
|
_undoAction?.Invoke(_oldValue);
|
}
|
|
public void Redo()
|
{
|
_redoAction?.Invoke(_newValue);
|
}
|
}
|
}
|