Модальные окна в AIR, компонент для Flex 4

5/03/2010

Сегодня понадобилось сделать модальное окно в AIR, пошарив по интернету я не смог найти вменяемый пример, поэтому написал свою версию. Если учитывать скупость средств, то можно сказать, что это одна из не многих версий.
Можно скачать MXML компонент Flex 4 модальное окно (10), а можно посмотреть код под катом.
Прочитать остальную часть записи »

Asset Modifier, внедрение кода во встраиваемую анимацию

17/02/2010

UPD 20.02.2010: Перенёс проект на Google code и добавил новый модификатор AssetCustomModifier, в который можно передавать любую функцию/метод.

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

Прочитать остальную часть записи »

EvalUtils – простой парсер команд

17/02/2010

Когда-то давно мне было интересно написать интерпретатор ActionScript 3 и я начал его писать. :) Но через некоторое время узнал о существовании компилятора ActionScript 3, портированом из кода проекта Tamarin. Конечно, интерпретатор потерял смысл в моих глазах, но часть кода уже была написана и я решил быстро сконцентрировать полученные знания и наработки в небольшом интерпретаторе команд, описанных в точечной нотации, поддерживающий особенности ActionScript 3. Так я получил клубок кода, который почти всегда делает то что мне нужно, использовал его в нескольких проектах и решил выложить здесь отдельно.

Прочитать остальную часть записи »

Особенность методов XML объектов в ActionScript 3

16/02/2010

Наткнулся на немного неожиданную "особенность" при работе с методами XML объектов. Такое забывать нельзя, поэтому подробности под катом.

Прочитать остальную часть записи »

Google группа JSInterface

3/02/2010

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

P.S.: Группа модерируется, поэтому спама не будет, но могут быть задержки с сообщениями, если я в offline.

Караоке плеер “Спиваймо”

11/01/2010

Ещё летом ко мне обратились с заказом сделать караоке-плеер для нового проекта, ТЗ как такового не было, был сначала один сайт, пример, с которого надо было позаимствовать идеи, а потом – второй. Поэтому все доделки и переделки тянулись до осени, а сейчас появилось время детально описать решения, которые я опробовал.

Прочитать остальную часть записи »

Тестовый PHP скрипт для загрузки файлов

11/01/2010

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

Прочитать остальную часть записи »

Разница в выборке «.*» в XML и во flash.utils.Proxy

8/01/2010

В XML выборка элементов через знак звёздочки говорит о том, что надо выбрать все дочерние узлы, не зависимо от типа узла или пространства имён XML элемента. Класс flash.utils.Proxy даёт нам возможность пользоваться выборками в своих классах. Я обнаружил разницу в поведении и дальше делюсь наблюдениями.

Прочитать остальную часть записи »

Информация о происхождении экземпляра QName

7/01/2010

В ActionScript 3 у простого типа QName есть возможность хранить информацию о происхождении экземпляра, т.е. можно узнать, это имя атрибута или узла/свойства. Но я не смог найти простого и прямого способа «выдернуть» эту информацию из экземпляра QName. Поэтому дальше горожу свой огород. :)

Прочитать остальную часть записи »

flash.utils.Proxy и Object.constructor

4/01/2010

Небольшой совет для всех кто активно использует или собирается использовать класс flash.utils.Proxy – всегда реализуйте свойство constructor возвращающее тип(экземпляр типа Class) данного объекта.

Прочитать остальную часть записи »

Server-Side ActionScript — полная русская версия справки

9/12/2009

Полный перевод на русский язык справки по Flash Media Server 3.5 Server-Side ActionScript. Круглосуточно доступен онлайн по адресу
http://ruslanshestopal.com/flashmediaserver

Динамическое создание экземпляров класса Vector

13/09/2009

Flex cookbook entry: How to dynamically create instance of Vector class.

В десятой версии Flash Player’а появилось много нового и я сегодня немного эксперементировал с одним из «новых» классов — __AS3__.vec.Vector. Этот класс пришёл к нам, как скоростной аналог типизированного массива. Я не делал скоростных замеров, т.к. таковых в сети хватает. Я попробовал создать экземпляр класса Vector динамически, т.е. без прямого указания типа его элементов.

Прочитать остальную часть записи »

Powerflasher Solutions поддерживает JSInterface

15/08/2009

Ребята из Powerflasher Solutions предоставили бесплатно лицензию на FDT 3 Enterprise, по программе поддержки Open Source проектов и добавили ссылку на JSInterface, как на "some of the best" проект. :-P
Очень приятно, спасибо!

Upd. 3.09.2009
Вчера изменили формат странички и теперь там висят баннера - вдвойне приятно. :)

Загрузка изображений в TextField, в виде строки Base64, встроенной в HTML код

28/05/2009

У многих браузеров есть классная особенность - они умеют отображать картинки из строки кодированной в Base64. Такие изображения отличаются только содержимым атрибута SRC:

<img src="data:image/png;base64,iVBORw0KGgoAAAANS..." alt="Изображение" />

Мне стало интересно провернуть такой же трюк в TextField'е во Flash приложении.

Прочитать остальную часть записи »

Использование REST во Flash приложении

23/05/2009

REST - Representational state transfer, техника используемая многими web-сервисами, напрямую не поддерживается в ActionScript 3. Класс отвечающий за генерацию запросов по HTTP способен передавать только GET и POST запросы, а для REST ещё необходимы PUT и DELETE. Но есть возможность реализовать недостающую функциональность с помощью класса URLStream, но для этого придётся ещё много всего реализовать, что уже и так реализовано. В общем, я вчера поискал решения по этому поводу и нашёл две, с виду, не плохие библиотеки:

as3httpclientlib - практически полноценный HTTP клиент, поддерживает полный спектр необходимых запросов. Распространяется по лицензии MIT, т.е. абсолютно бесплатен для коммерческого использования.

RESTService - библиотека созданная специально для использования REST во Flash/Flex приложениях.

Радует, что обе библиотеки имеют примеры и документацию. :)

Отправка и получение данных в кодировке отличной от UTF-8 через HTTP

23/05/2009

Если вашему приложению необходимо общаться с существующим сервисом и он по какой-то причине не поддерживает UTF-8, ваше Flash приложение может отправлять и получать данные в нужной кодировке. Это не секретная техника и многим уже известна. А я решил написать этот коротенький пост, т.к. не смог найти этого решения в течении 5-ти минут в Google(плохо искал? оставьте ссылку в комментариях). :)

Прочитать остальную часть записи »

Изменить цвет фона Flex виджета под цвет фона HTML страницы

22/05/2009

Flex cookbook entry: To change the background color of a Flex widget for the background color of HTML page.

При создании виджетов, встраиваемых приложений создатели стремятся, либо выделить своё приложение, либо сделать так, чтоб оно сливалось с окружением. Для вторых может быть полезным этот способ.

Прочитать остальную часть записи »

Сокрытие(Embed) JavaScript кода во Flex приложении

22/05/2009

Flex cookbook entry: Embed of JavaScript code in the Flex application.

Интегрировать любой файл можно во Flex приложение с помощью метатега [Embed] с указанием myme-type как application/octet-stream. В такой способ можно сохранить JavaScript код во Flex приложении, но работать с этим кодом можно будет только если загрузить его в браузер, в HTML документ. Для загрузки кода воспользуемся библиотекой JSnterface.

Прочитать остальную часть записи »

Загрузка дополнительных JS и CSS файлов в HTML документ

21/05/2009

Flex cookbook entry: Loading of additional JS and CSS files in the HTML document.

JSInterface позволяет загружать внешние JavaScript и CSS файлы прямо в HTML страницу. Для этого необходимо указать URL файла и функцию обратного вызова, вызываемую по окончанию загрузки.

Прочитать остальную часть записи »

Сообщение о несохранённых данных перед закрытием окна браузера

21/05/2009

Flex cookbook entry: Message about unsaved data before closing the browser window.

Для Flash и Flex приложений работающих с пользовательскими данными очень важно, чтоб пользователь всегда мог сохранить свою работу перед закрытием приложения. Стандартные браузеры, имеющие поддержку JavaScript оповещают о закрытии окна/таба или переходе на другую страничку. Все эти действия могут привести к потере данных, но использование этого оповещения позволит сохранить все необходимые данные. Flash/Flex приложение подписывается на JavaScript событие "onbeforeunload", которое вызывается всегда перед закрытием страницы или переходом на другую страницу.

Прочитать остальную часть записи »