Archive for the ‘mxml’ Category
 	  
						
				
				
				Wednesday, February 13th, 2008 
					
					
					http://knowfree.net/ — ресурс где можно найти множество книг по программированию в том числе и на flash|flex.
В день добавляют по 3-7 новых книг, естественно все книги на языке оригинала )
одно из последних обновлений:

Интересно когда у нас будут печатать подобные книги?
На ссылку навел 7thsky.
					
				Posted in ActionScript 2.0, ActionScript 3.0, Flex, Flex Builder 2, Flex Builder 3, mxml, Video, Люди |   7 Comments »
			 
				
				
				Monday, December 24th, 2007 
					
					
					Давно что-то не писал, накопилось много мелочей о которых иногда полезно знать, а иногда просто не стоит обращать внимание:
- Во  флексе есть  фича что он автоматом лишнии убирает пункты меню которое появляется при нажатии правой кнопки мыши. Это приятно, но стоит знать что при создании попапа с помощью   PopUpManager этой фичи нету (все пункты меню имеют место быть) и их нужно отрубать ручками.
 
- ФФ, делаем так: открываем приложение (желательно тянущееся чтобы наглядно было), открываем второй таб, переходим в него, ресайзим окно браузера, и возвращаемся на наше приложение и видим бяку: флеш и не думал ресайзится (повторный ресайз исправляет ситуацию)).
UPD: решение проблемы подсказал 7htsky : “надо поставить  margin: 1px 0 0 0, нашли решение тут“ 
- Ситуация: есть ваш компонент наследованный от чего-то  и его нужно использовать вместо стандартного, внутри используются стейты (например ваш мега TitleWindow внутри него 48 состояний) если стейты объявиться <mx:states />  то будет ругаться, стейты нужно объявлять просто <states />
 
- Все лаяут контейнеры (Canvas, Box…) плохо дружат со скроллерами (также как это делает ИЕ) — если ширина контента выставлена 100%,  а по высоте контент больше чем контейнер то появляются 2 скроллера вертикальный и горизонтальный  причем горизонтальный скролит  именно на ширину появившегося вертикального скроллера (не приятно это, то ли дело ФФ 🙂 )
 
- Проекта MyLar больше нету,его переименовали в Mylyn. Почитать что это за птица.
 
- Флеш блох оказывается очень много ) и они часто появляются.
 
Глобальные посты и темы будут попозже — сейчас идет подготовка к новому году)
					
				Posted in ActionScript 3.0, Flex, mxml |   2 Comments »
			 
				
				
				Tuesday, November 27th, 2007 
					
					
					Что стартуем
Стартуем курсы по Flex, ActionScript 3.0
Для чего стартуем
Научить людей основам(и не только) Flex, ActionScript 3.0, в процессе обучения написать живое приложение.
Кому стоит читать дальше
Молодым амбициозным людям которые только начинают свою “флешово-флексовую” жизнь, и хотят попрактивоваться. Всем кто уже “напрактиковался” в своей жизни советую прокрутить конец поста и почитать пункт “Flash|Flex для больших дядей” :).
Более подробная информация:
Кто это организует и кто будет рассказывать
Организую эти курсы я, я же буду и рассказывать страшные истории.
Место веселых стартов
Курсы будут в г. Харькове. Вероятно в ХАИ.
Кого я жду на курсах?
Жду я человеков, которые:
- Хотят получить знания по Flex|ActionScript3.0
 
- Живут в Харькове
 
- Имеют базовые знания по программированию, ООП и писали программы сложнее Hello World на любом из языков (имеют понятие, что такое массив, цикл ,класс…)
 
- Способны самообучатся в заданном направлении )
 
- Видели английский язык и понимаю как минимум 1 слово из 10 прочитаных 🙂
 
- Учитывая что “веселые старты” – это проект не коммерческий я ожидаю адекватное поведение людей, выполнение некоторых требований и ответственности
 
Чем я буду веселить человеков
Я буду веселить человеков написание программ на флекс на примере конкретного приложения. В веселье будет входить:
- Введение в науку (что где пыцкать чтобы заработало)
 
- Немного теории и практики проектирования приложения, паттерны проектирования. Пощупаем немного UML
 
- Создание и использование компонентов
 
- Стилирование компонентов
 
- Общение клиент/сервер (вероятно на примере AMFPHP)
 
- Разные страшные слова типа биндинг )
 
- Работа в комманде
 
- Где и что искать, кого спрашивать
 
- Другие разные плюшки
 
Для чего это мне нужно
Мне это нужно потому, что я хочу:
- Эксперементов на живых людях.
 
- Попробывать себя в качестве “Умного дядьки”, возможность покапать глубже некоторые темы
 
- Нести знания в массы и пропагандировать любимую технологию
 
- Помочь людям которые хотят и могут учится, помочь сделать это быстрее
 
- Помочь ВУЗу где я учился
 
- Немного растормашить отечественных флешеров/флексеров
 
Что это даст человекам
- Знания и опыт
 
- Быстрый старт
 
- Общение с новыми людьми
 
- Хлеба и зрелищ
 
О каком конкретном проекте идет и почему я решил это все организовать
Есть интересный проект, который неплохо бы сделать в качестве гуманитарной помощи моему вузу — ХАИ. Этот  проект совершенно не коммерческий и я не получу от его написания никакой выгоды кроме морального удовлетворения. Кроме него, у меня есть другие интересные проекты приоритет которых выше. Поэтом я предлагаю такой вот обмен – код за знания. Более подробно о проекте  – в процессе, но обещаю, что будет интересно.
В проекте есть пара вещей, которые потом можно будет развить в отдельные проекты и получать из них выгоду при желании, если у вас канешно это получится;). Никто не будет против если вы это сделаете.
Организационные вопросы
Мои контакты есть в блоге.
Я рассчитываю найти несколько адекватных желающих (1-5 человек, дальше как получится). Неадекватных людей, попрошу не беспокоить, ибо делать тут им нечего.
Интерсивность курсов зависит от активности учашихся, для себя я планирую 1-2 встречи в неделю по 2-3-4 часа.
Стартовать надеюсь будем после Нового Года).
Flash|Flex для больших дядей
Для больших дядей есть отдельные предложения. В процессе веселых стартов, можно организовывать встречи и устраивать показательные выступления для других дядей, ну или просто поболтать и поесть мороженого (этак раз в 1-2 месяца, г. Харьков).
Ну и большая просьба для флешеров и флексеров попиарте это предложение среди харьковских знакомых студентов 🙂
UPD:  совсем старый стал ) и забыл написать главное. Кто хочет поучавствовать пишите письма со своми контактами, где-то  в середине декабря (если будет с кем) организуем встречу, и пообщаемся в живом эфире. Мои Контакты
					
				Posted in ActionScript 3.0, AIR, Flex, Flex Builder 2, Flex Builder 3, mxml, UML Tool, Люди |   22 Comments »
			 
				
				
				Sunday, October 21st, 2007 
					
					
					В этой части мы поругаемся на NetStream.
Грубо говоря NetStream – это основа всей работы с видео/аудио. На мой взгляд основа чего-либо должна быть идеальна, ну или хотя бы близка к идеалу. А тут нам подогнали реально сырое(? или просто глюченое)  решение.
В процессе решения нам понадобится всего пара-тройка напильников
Напильник номер один
NetStream – как есть просто не приспособлен для работы с видео. Если попытаться использовать пример их хелпа, то мы после запуска видео сразу же ловим эксепшин:
[code lang=”actionscript”]
Error #2044: Unhandled AsyncErrorEvent:. text=Error #2095: flash.net.NetStream was unable to invoke callback onMetaData. error=ReferenceError: Error #1069: Property onMetaData not found on flash.net.NetStream and there is no default value.
[/code]
Добрые индусы забыли добавить в NetStream метод onMetaData. Верне не один метод а всего два: onCuePoint, onMetaData,  вобщем эти методы я подглядел в классе VideoPlayer, правда уже после того как я наловился эксепшинов )  еще там они объявляют метод onPlayStatus, но я не сильно старался понять зачем этот пустой метод нужен:).
И тут на выручку нам приходит напильник, просто наследуемся от NetStream и вставляем не хватающие методы, я просто стал диспатчить события с полученной инфой чтобы все выглядело однообразно:
[code lang=”actionscript”]
class VideoNetStream extends NetStream
{
public function VideoNetStream(connection:NetConnection)
{
super(connection);
}
public function onMetaData(info:Object, … rest):void
{
var evt : NetStatusEvent = new NetStatusEvent(“metaData”);
evt.info = info;
dispatchEvent(evt);
}
public function onCuePoint(info:Object, … rest):void
{
var evt : NetStatusEvent = new NetStatusEvent(“cuePoint”);
evt.info = info;
dispatchEvent(evt);
}
}
[/code]
Напильник номер два
В данной ситуации я даже незнаю кого обвинять, или адоб или создателей firefox (далее фф). Вобщем в ФФ флеш плеер не соображает когда ему скормили неверный урл. вернее 50/50 иногда есть событие что поток не найден а иногда нет, вот например на такой урл [code]http://qweqweqweqweqw[/code] фф не будет ругаться и будет пытаться молча найти его всю свою жизнь, естественно уходы в раздумия на долго не радуют пользователя и он убивает фф :'(.
ИЕ работает как часики ) сразу же ругается на неверный урл.
Напильником номер два мы переопределяем метод play у NetStream и вставляем таймер который отвечает за таймаут соединения(если стрим в течении например минуты не отвечает то мы сам диспатчим событие об ошибке). Код я не буду приводить ибо его нужно чистить и приводить в порядок, а кому нужно тот сам напишет)
Грабли номер три
Если в ситуации описанной выше у ФФ еще делать close() (даже после таймера)  и заново подсунуть неверный урл, то ФФ просто падает (play(badUrl) -> close() -> play(newBadUrl));
В данной ситуации нужно еще переопределить метод close() вставив проверку на то как жилось стриму до этого.
и закусочный напильник
Учитывая асинхронность работы NetStream при “нервном пользователе” не успевает сделать close(). На приход в себя, как показывает практика, достаточно 500-1000 мс.
Что я сделал собрав эти грабли с напильниками
У меня получился класс VideoNetStream, который сам справляется с критическими ситуациями, в моем случае он просто игнорирует вызовы всех методов до тех пор пока сервер или не отдаст ответ или пока сам стрим не поймет что он не дождался. я сделал флаг isBusy который показывает окружающему миру, что стрим еще думает.
Если есть какие-то еще “фичи” стрима, пишите, будем добавлять.
Если где-то написал не то говорите )
Продолжение серии может будет, а может и нет )
И немного десерта
читать и смотреть, сначало немного на русском, а потом и официальный сайт
с картинками
					
				Posted in ActionScript 3.0, Flex, mxml, Video |   10 Comments »
			 
				
				
				Thursday, October 18th, 2007 
					
					
					Вышла IDEA-7 c поддержкой Flex. И вышла 15 числа, явно день был полный ништяков 
Пока особых подробностей рассказать не могу, ибо только поставил и щупаю.
Пока нащупал стандартные возможности). Фичи и не фичи пытаються обсудить тут
Поругивается на свои неймспейсы в мхмл.
Вобщем все быстро побрасили работу и давате щупать что нам дали )
					
				Posted in ActionScript 3.0, Flex, Flex Builder 2, Flex Builder 3, IDEA, mxml |   4 Comments »