Для любого действия должна быть возможность отмены
Для этого нужен стэк реализации команд
у команды должны быть определены 3 метода
undo отменить команду
redo протолкнуть вперед команду
merge склеить две одинаковые команды стоящие рядом (например изменение координат одного и того же объекта)
Для любого действия должна быть возможность отмены
Для этого нужен стэк реализации команд
у команды должны быть определены 3 метода undo отменить команду redo протолкнуть вперед команду merge склеить две одинаковые команды стоящие рядом (например изменение координат одного и того же объекта)