![]() |
|
||||||||||
|
|||||||
|
|
« Предыдущая тема | Следующая тема » |
| Опции темы | Опции просмотра |
|
![]() |
![]() |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
r_r_f_r, нет, контроллер работает с готовым компонентом, состоящем из контролов, которые, в свою очередь, созданы самим компонентом на основе каких-либо данных. Ну или в крайнем случае, как это сделано в Flex, создаются прямо в коде (после компиляции mxml-файла).
Контроллер в принципе принадлежит компоненту, а данные извне получает от родительского контроллера, например. Но это действительно для больших приложений. |
|
|||||
|
Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
|
Цитата:
Цитата:
Цитата:
А вот создание трёх обьектов как-то слабо получается назвать компонентом, ибо в моём понимании при создании компонента new должно встречаться только один раз. А если описать класс типа DisplayObjectContainer который и будет создавать эту структуру отдельно от parent'ов, то это уже как раз что я писал про обёртку. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
Основной контроллер создает основную модель и вьюверы.
|
|
|||||
|
Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
|
И описывается в Document Class.
И основной вьювер - stage. |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
stage не вьювер, а контейнер. Вьювер, а точнее компонент — DocumentClass.
|
|
|||||
|
Регистрация: Sep 2008
Адрес: Москва
Сообщений: 224
|
ну да, сорри, имею в виду что вьювер основной будет использовать stage своим контейнером.
|
|
|||||
|
Регистрация: Jun 2007
Сообщений: 374
|
А контроллер может испускать события, которые будет подхватывать другой контроллер?
Ситуация такая: мелкий контроллер создается в большом контроллере. Что-то делает локально со своим представлением. А надо вдобавок, чтобы при некоторых действиях мелкого контроллера происходили глобальные изменения. Конкретный пример: на сцену загружаются картинки. У каждой картинки модель имеет свойство url. Глобальный контроллер создает эти локальные модели, контроллеры и представления к ним. Локальный контроллер следит за изменением url, если оно вдруг изменилось, и соответственно загружает картинку в свое представление. Надо сделать так, чтобы картинки как-то выравнивались на сцене после загрузки. Для этого я сделал событие локального контроллера "картинка загрузилась", за которым следит глобальный. Это правильно? |
|
|||||
|
Et cetera
Регистрация: Sep 2002
Сообщений: 30,787
|
А картинка сама не может контролировать изменение url? Зачем это знать контроллеру? Картинка может сама послать Event.COMPLETE.
|
|
|||||
|
Регистрация: Jun 2007
Сообщений: 374
|
Ура! Я нашел решение проблемы:
Цитата:
Цитата:
|
|
|||||
|
Modus ponens
|
Я может быть вообще не совсем в тему... но после нескольких экспериментов с фреймворком (PureMVC) не ощутил никакой прелести в его использовании... более того, мне почему-то кажется что эта система в целом (не только конкретный фреймворк) добавляет очень много избыточной информации, которая на практике, вместо того чтобы организовать работу ее дезорганизует заставляя _очень часто_ вызывать кучу лишних методов / проверок (естесственно, что чем больше писанины - тем больше ошибок - дольше отладка). В этом свете мне больше понравилась система с "картой событий" при которой получатели подписываются к источнику событий через единую карту (т.е. не существует контролеров).
Вот, что-то в этом духе: http://mate.asfusion.com/assets/cont...esentation.pdf
__________________
Hell is the possibility of sanity |
![]() |
![]() |
Часовой пояс GMT +4, время: 22:10. |
|
|
« Предыдущая тема | Следующая тема » |
|
|