Господа, пытаюсь осознать общие принципы написания GUI для ввода и редактирования модели данных. На первый взгляд кажется, что должно быть что-то типа:
1) инициация пользователем процесса ввода новых данных (соответственно, появление некоторого графического элемента, предоставляющего такой ввод — напраимер, диалогового окна);
2) ввод данных пользователем;
3) подтверждение окончания ввода.
Далее,
1) забираем информацию, введенную пользователем;
2) проверяем ее на совместимость в модели (чтобы не нарушить целостность последней);
3) если все ОК, то обновляем модель и обновляем представление, если нет, то выдаем какое-то сообщение о невозможности.
Тут вроде все ясно. Но! В большинcтве графических элементов ввода информации (текстовых полей, лист-контролов, таблиц) таких явных разделений на этапы инициации, ввода данных и подтверждения завершения ввода нет. Как быть в таких случаях с проверкой на целостность? Где об этом можно прочесть?