33 коровы – VIVA_INDIA, или будте внимательны когда описываете события - RIA разработка, Flex, Action Script, AIR, Eclipse, Monkey script

VIVA_INDIA, или будте внимательны когда описываете события

January 23, 2008 – 8:47 am

Есть класс который диспатчит событие и есть желание получить удобство написания кода когда подписываемся на события этого класса.

Для этого делаем так:

Класс события:

package com.the33cows.somepackage
{
import flash.events.Event;

public class SomeEvent extends Event
{
public static const VIVA_INDIA : String = "vivaIndia";
.......

}

Класс:

package com.the33cows.somepackage
{
import flash.events.EventDispatcher;

[Event(name="vivaIndia", type="com.the33cows.somepackage.SomeEvent")]

public class SomeEventDispatcher extends EventDispatcher
{
...
}
}

теперь при наборе кода получаем такое:

что есть очень приятно).

Я всегда себе задавал вопрос почему, адоб использует именно такую конструкцию

[Event(name=”vivaIndia”, type=”com.the33cows.somepackage.SomeEvent”)]

по-моемому было бы логичнее использовать

[Event(name=”VIVA_INDIA”, type=”com.the33cows.somepackage.SomeEvent”)]

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

Оказалось парсер безумно туп!

У меня образовалось событие в названии которого были несколько прописных букв подряд

для наглядного примера:

public static const VIVA_INDIA : String = "VIVA_INDIA_OMG";

для него метатег выглядел так

[Event(name="VIVA_INDIA_OMG", type="com.the33cows.somepackage.SomeEvent")]

на что я в ответ получил:


Правда не очень привлекательная картина? )

Справедливо как для 2.0.1 так и для 3 го билдера

Будьте счастливы и кодируйте с миром ).

Sorry, comments for this entry are closed at this time.



]]> rss о RIA от 33 Коровы
Забадать RSS!
]]>
~~~~~~