我正在研究一个系统,用户可以通过GUI编辑现有对象("精确过滤"域对象).作为UI提示,我们只想在用户真正修改对象的内容时启用保存按钮.我想知道是否有人对这个问题有任何经验,以及最好的方法来解决这个问题.
我正在考虑向域对象添加一个isDirty()标志.当用户开始编辑过滤器时,我会制作一份副本,将其传递给GUI并让用户对副本进行修改.然后,对isDirty()标志的绑定将启用/禁用保存按钮.在保存时,差异将合并到原始对象中并保持不变.
另外,我在想如果用户撤消他对对象所做的更改会发生什么.然后isDirty()标志应返回false.所以我认为实现这一目标的唯一方法是将每个属性的原始值保留在域对象中.
有任何想法吗?