редактирование объекта и флаг isDirty ()

я работаю в системе, где пользователь может редактировать существующие объекты ("Фильтр" точнее, доменные объекты) через GUI. Как подсказка пользовательского интерфейса, мы хотим включить кнопку сохранения, только если пользователь действительно что-то изменил в объекте. Мне было интересно, есть ли у кого-нибудь опыт с этой проблемой и как лучше всего подойти к этому.

Я думал о добавлении флага isDirty () к объекту домена. Когда пользователь начинает редактировать фильтр, я делаю копию, передаю ее в графический интерфейс и позволяю пользователю вносить изменения в копию. Привязка к флагу isDirty () включит / отключит кнопку сохранения. При сохранении различия будут затем объединены в исходный объект и сохранены.

Кроме того, я думал о том, что произойдет, если пользователь отменит изменения, внесенные в объект. Флаг isDirty () должен затем вернуть false. Поэтому я думаю, что единственный способ добиться этого - сохранить первоначальное значение каждого свойства внутри объекта домена.

Есть идеи?

Ответы на вопрос(7)

Ваш ответ на вопрос