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