Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   есть ли "тонущий" Event? (http://www.flasher.ru/forum/showthread.php?t=147126)

drnet_ua 26.11.2010 17:59

есть ли "тонущий" Event?
 
если существует "всплывающий" Event, когда стейдж может поймать событие "пра-пра-пра-child-a", то логично иметь и "тонущий" евент, когда "пра-пра-пра-child" может поймать событие на стейдже, не имея ссылки на стейдж.

городить монстра который будет слушать все возможные(пусть даже сильно ограниченное число) события и повторять их для своих детей мне кажется очень не рационально.

как "велосипед" реализовал синглтон реализующий подписывание, отписывание, генерацию событий.

есть мнения по этому поводу?

i.o. 26.11.2010 18:31

а зачем такое вообще?

leofit 26.11.2010 18:32

тоже хотел спросить =) если бы было нужно такое, такое бы реализовали

drnet_ua 26.11.2010 18:43

ну например есть кнопка "очистить", она в мейне, в том-же мейне есть обьект в обьекте который содержит то, что нужно очистить

Добавлено через 1 минуту
и какбы кнопке совсем не обязательно знать что и где очистится, а тому кто чистится не особо важно кто его об этом попросил :)

Котяра 26.11.2010 18:59

Цитата:

Сообщение от i.o. (Сообщение 952739)
а зачем такое вообще?

Что-то вроде Global Broadcaster

Цитата:

ну например есть кнопка "очистить", она в мейне, в том-же мейне есть обьект в обьекте который содержит то, что нужно очистить
и какбы кнопке совсем не обязательно знать что и где очистится, а тому кто чистится не особо важно кто его об этом попросил
Магические буквы MVC

andrew911 26.11.2010 20:46

Вдогонку к Котяра
Global Broadcaster

Zebestov 26.11.2010 21:31

Немного теории:
Структура приложения в самом общем случае древовидная.
Всплывание происходит линейно (всегда только один родитель, к которому всплывает событие вплоть до "верхушки").
А вот "утопание" будет по всему дереву. Вот и оправдай эту лишнюю нагрузку и излишнюю информацию для всех детей.

Вот и не сделали ничего такого... и правильно.
Остальное уже подсказали.

drnet_ua 27.11.2010 18:55

ну дык по этому и синглтон, кастом ивент, сохраняющий ссылку на реального сендера.
про глобал броадкастер почитаю, но мне кажется это именно то самое :)

мвц - это интересно, но как-то сложно :(

и так читал и так.... в целом мне робот легз понравился больше пурМВЦ, но я не вижу пока принципиальной выгоды от мвц в своих проэктах.

i.o. 27.11.2010 19:06

лично я считаю, что "тонущие" события не нужны вообще. Если дети все прицеплены к какому-то суперпредку, то ему достаточно обратится напрямую к методу всех детей, которые нуждаются в обновлении или еще чем-то.
События в даной ситуации вообще не в тему.

drnet_ua 27.11.2010 19:40

Цитата:

я, собственно, искал решение как организовать взаимодействие неких модулей без обмена ссылками , ну и такой бродкастер вполне решает задачу: объекты совершенно не зависят ни от положения в иерархии приложения, ни от времени создания, не нужна привязка ни каким контролерам - двигай куда захочешь, короче дешево и сердито..
кто-то, поевший уже такую собаку скорее всего скажет, что простота, дескать, хуже воровства, но меня пока устраивает..
+100500


Часовой пояс GMT +4, время: 11:08.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.