![]() |
|
||||||||||
|
|||||
|
Не-а. Capture phase для мышки.
Реализовать... гхм ) Вообще разница бублик фазы и каптёрки в порядке триггеров хэндлеров (ну, и мелочей в самом Event`е). Бублы реализовать можно, унаследовався от EventDispatcher и сделав повторный dispatchEvent по всем parent`ам. Чтобы сделать каптюр нужно инвертировать порядок триггеров. В принципе надо создать свой "самый-корневой" StageEventDispatcher и передать на него ссылку каждому CompositeEventDispatcher (ведь DisplayObject имеют ссылку на stage. Находишь интересным?). При вызове dispatchEvent у любого CompositeEventDispatcher вызывать customDispatchEvent у StageEventDispatcher, внутри которого формировать цепочку объектов вложенности - от StageEventDispatcher до target`а. После дёрнуть dispatchEvent у каждого в прямом направлении, а потом в обратном. Но вообще я бы использовал приоритеты ![]() Кстати, для мышки или для всех input device`s? Можно поймать Keyboard Event в capture фазе?
__________________
Тут мужик танцует и поёт про флэш Последний раз редактировалось Psycho Tiger; 19.04.2011 в 21:34. |
|
|||||
|
Цитата:
Цитата:
1 - сохранять перед диспатчем таргет в статический стек, а потом вынимать (не знаю сработает ли) 2 - при диспатче передавать таргет в конструктор евента. 3 - сделать для события "оболочку". Но мне ни один из данных подходов не нравится, по этому я написал свой EventDispatche с нуля. Благо адобовцы создали IEventDispatcher. Пока вроде траблов нет =)
__________________
ranga |
|
|||||
|
Цитата:
Цитата:
Погляди на то, как это делает дядька Блуд. P.S. можно посмотреть на твою реализацию?
__________________
Тут мужик танцует и поёт про флэш |
|
|||||||
|
Цитата:
![]() Цитата:
Цитата:
Цитата:
Цитата:
Цитата:
Добавлено через 6 минут ПС: под оболочкой я имею ввиду не обвертку, а контейнер.
__________________
ranga |
|
|||||
|
стервочка (я мужик)
|
capture происходит так:
собираются родители в массив, и пробегаются в нужном порядке. потом наступает bubble и массив пробегается в другую сторону. |
|
|||||
|
Цитата:
Цитата:
Цитата:
![]() Цитата:
__________________
Тут мужик танцует и поёт про флэш |
![]() |
![]() |
Часовой пояс GMT +4, время: 13:34. |
|
|
« Предыдущая тема | Следующая тема » |
|
|