Цитата:
|
- mvc - это уровень архитектуры приложения, тащить его в реализацию рендера единственной вьюхи не стоит
|
Почему не стоит? Это же удобно. Например, у меня модель всей сцены хранит модели всех инструментов отображенных вьюшкой сцены. Когда пользователь хочет сохранить рисунок, все модели сериализуются в один xml или json-объект и загружаются на сервер. Когда хочет загрузить рисунок, то опять же, xml парсится, фабрики создают модели и вьюшки, а контроллер сцены выдаёт контроллер инструмента, который будет связывать все MV инструмента. Вьюшка сцены хранит все вьюшки инструментов, она слушает дополнительно дочерние вьюшки и контролирует частоту перерисовки. При запросе удаления инструмента удаляется его модель и вьюшка. Как по мне так достаточно удобно использовать MVC и для инструментов. К тому же в данной теме также советуется использовать MVC и для часто рисующихся объектов.
Цитата:
- я бы сделал модель холста, и в ней бы хранил все линейки (в том числе), а обновлятся модель будет и так на каждый тык
- линейка простой класс, отрисовщик и дизайнер (который слушает клики на линейке и таскает её), дизайнер диспатчит сигналы-ивенты о изменениях в вью/медиатор (как и все остальные инструменты)
|
Эту часть я не совсем понял. То есть, получается у нас есть класс "Линейка", который сам себя считает и рисует. Когда мы хотим удалить линейку со сцены, то, к примеру, медиатор, связывающий вьюшку холста и все инструменты кричит вьюшке холста удалить тек. экземпляр линейки из ёё коллекции ? Так ?