在我的应用程序中,我想为用户提供一个小的撤消功能。用户可以撤消的操作并不多。具体行动如下:
- 向对象添加注释
- 为对象着色
- 用字符串标记对象
现在我想到了如何实现这一点。我首先想到了一个动作类,它是用户可以采取的 3 种不同动作的抽象基类。每次用户执行这些操作时,都会创建此抽象 Action 类的子类的新适当实例,并将其插入到包含所有操作的列表中。
每当用户想要撤消某事时,列表就会显示给用户,他可以选择他想要撤消的操作。
现在我在想什么必须存储在这样的动作对象中:
- 动作前对象的状态
- 采取的实际行动(例如,添加到对象注释中的字符串)
我不确定这是否足够。我还考虑过类似时间顺序的东西,但这应该是必要的,因为列表可以按时间顺序保持正确。
还有其他我应该考虑的事情吗?