as2api -- это инструмент, генерирующий документацию для ActionScript-классов в стиле JavaDoc. Это хороший стиль: программа создает каталог "apidocs" и наполняет его HTML-документацией для указанных классов. Работает из командной строки. Есть версия для Win32 и для OSX. Синтаксис использования as2api из командной строки:
as2api --classpath [путь к классам] [пакет для документирования] Пример: as2api --classpath C:\Docume~1\rost\Locals~1\Applic~1\Macrom~1\FlashM~1\en\Config~1\Classes com.flashripper.mouse.*
Пример: as2api --classpath C:\Docume~1\rost\Locals~1\Applic~1\Macrom~1\FlashM~1\en\Config~1\Classes com.flashripper.mouse.*
Параметр --classpath -- единственный необходимый. Его значение -- путь к классам -- нужно задать его в DOS-формате (каждое имя в пути не должно содержать пробелов, а его длина не должна превышать восемь символов). Остальные (необязательные) параметры можно узнать на сайте as2api.
--classpath
Вышла новая версия компилятора MTASC. Изменения: добавлен параметр "-out", указывающий имя результирующего swf-файла (раньше исходный и результирующий файлы являлись обязятельно одним и тем же файлом), устранено несколько ошибок.
Скачать MTASC 1.08
Класс SmartRestrict предназначен для обслуживания тех случаев, когда необходимо заставить пользователя ввести в определенное текстовое поле определенную строку и для контроля этого процесса. Подобные задачи возникают, например, в интерактивных презентациях и обучающих приложениях. Преставьте, что вам нужно научить пользователя вводить правильный логин и пароль при входе в систему:
Пример использования:
import com.flashripper.utils.SmartRestrict; function onTextResult(res){ trace("Success:" + res); } // создаем экземпляр класса SmartRestrict, // в качестве параметров указывая текстовое поле, // строку, которую необходимо заставить ввести пользователя, // функцию-обработчик результата // и максимально допустимое кол-во неудачных попыток, // после совершения которых приложение само // заполнит текcтовое поле нужным значением sr=new SmartRestrict(txtLogin, "login", onTextResult,5);
function onTextResult(res){ trace("Success:" + res); }
// создаем экземпляр класса SmartRestrict, // в качестве параметров указывая текстовое поле, // строку, которую необходимо заставить ввести пользователя, // функцию-обработчик результата // и максимально допустимое кол-во неудачных попыток, // после совершения которых приложение само // заполнит текcтовое поле нужным значением
sr=new SmartRestrict(txtLogin, "login", onTextResult,5);
Исходный код класса:
// SmartRestrict class v 0.5.0.1 by Rostislav Siryk // Usage: new SmartRestrict(txtFieldToRestrict:TextField, strToBeEntered:String, fncOnResult:Function, numErrorsMaxCount:Number) import mx.utils.Delegate; class com.flashripper.utils.SmartRestrict { static private var dc=Delegate.create; private var txtField:TextField; private var strToEnter:String=String("Unknown"); private var strInProgress:String=String(""); private var numCharIndex:Number=Number(0); private var numAttempts:Number=Number(0); private var numAttemptsMax:Number=Number(24); private var fncOnResponse:Function; public function SmartRestrict(txtFieldToRestrict:TextField, strToBeEntered:String, fncOnResult:Function, numErrorsMaxCount:Number) { strToEnter=strToBeEntered; txtField=txtFieldToRestrict; fncOnResponse=fncOnResult; if(numErrorsMaxCount) numAttemptsMax=numErrorsMaxCount; //txtField.restrict=strToEnter; txtField.onChanged=dc(this,onRestricted); Selection.setFocus(txtField); } private function onRestricted() { var numCharEntered=Key.getAscii(); var numCharNeeded=strToEnter.charCodeAt(numCharIndex); trace(numCharEntered + "-" + numCharNeeded + "/"+numAttempts); if(numCharEntered==numCharNeeded) { strInProgress+=strToEnter.charAt(numCharIndex); numCharIndex++; }else{ numAttempts++; } txtField.text=strInProgress; if(numAttempts>numAttemptsMax || strToEnter==strInProgress) { doFinalize(); } } private function doFinalize() { txtField.text=strToEnter; txtField.onChanged=null; txtField.type="dynamic"; fncOnResponse(strToEnter==strInProgress); delete this; } }
import mx.utils.Delegate;
class com.flashripper.utils.SmartRestrict {
static private var dc=Delegate.create; private var txtField:TextField; private var strToEnter:String=String("Unknown"); private var strInProgress:String=String(""); private var numCharIndex:Number=Number(0); private var numAttempts:Number=Number(0); private var numAttemptsMax:Number=Number(24); private var fncOnResponse:Function; public function SmartRestrict(txtFieldToRestrict:TextField, strToBeEntered:String, fncOnResult:Function, numErrorsMaxCount:Number) { strToEnter=strToBeEntered; txtField=txtFieldToRestrict; fncOnResponse=fncOnResult; if(numErrorsMaxCount) numAttemptsMax=numErrorsMaxCount; //txtField.restrict=strToEnter; txtField.onChanged=dc(this,onRestricted); Selection.setFocus(txtField); } private function onRestricted() { var numCharEntered=Key.getAscii(); var numCharNeeded=strToEnter.charCodeAt(numCharIndex); trace(numCharEntered + "-" + numCharNeeded + "/"+numAttempts); if(numCharEntered==numCharNeeded) { strInProgress+=strToEnter.charAt(numCharIndex); numCharIndex++; }else{ numAttempts++; } txtField.text=strInProgress; if(numAttempts>numAttemptsMax || strToEnter==strInProgress) { doFinalize(); } } private function doFinalize() { txtField.text=strToEnter; txtField.onChanged=null; txtField.type="dynamic"; fncOnResponse(strToEnter==strInProgress); delete this; } }
Евгений Потапенко выпустил следующую версию Flashout -- 0.2.0.0. Можно сразу просмотреть видео-урок по Flashout (этот урок стоит пятикратного прочтения нижеследующего текста вперед, назад, вдоль, поперек и по диагонали. Рекомендуется смотреть уже после скачивания и установки FlashOut, сразу повторяя шаги урока).
Важно: Flashout 0.2 работает только с Eclipse 3.1 и Java 5!
Редактор ActionScript-кода (ASDT)
Flashout Editor (все закладки)
Навигация по закладке "Logger"
Опции закладки "Logger"
Закладка "Logger" -- лог-текст
Закладка "Logger" -- Поиск
Внимание, синтаксис Flashout.***("message") (log, debug, warning etc) больше не поддерживается.
Flashout.***("message") (log, debug, warning etc)
Используйте следующий синтаксис:
TRACE(Flashout.DEBUG + "message"); TRACE(Flashout.INFO + "message"); TRACE(Flashout.WARN + "message"); TRACE(Flashout.ERROR + "message"); TRACE(Flashout.FATAL + "message"); TRACE(Flashout.SERVER_IN + "message"); TRACE(Flashout.SEVER_OUT + "message");
Качать: Flashout 0.2.0.0. Смотреть: Видео-урок по Flashout.
// прошло 2 часа использования обновленного FlashOut. Нет слов..
Опубликованы работы-финалисты Flash Film Festival 2005. Среди финалистов -- наши! Сайт Conclave Obscurum вышел в финал Flash Film Festival в категории Art. Так что если вам нравится эта работа -- поддержите ее и проголосуйте за Conclave Obscurum.
Кристиан Кэнтрелл и Майк Чэмберс из Macromedia выпустили "Flash / JavaScript Integration Kit" (Beta). Данная разработка призвана облегчить жизнь тем, кто обменивается данными между Flash и JavaScript. Данные при этом могут быть следующих типов:
Объекты и массивы при этом могут быть вложены любое количество раз и содержать объекты любого из вышеперечисленных типов.
В данный момент подерживаются следующие браузеры:
Данную библиотеку авторы отдали в проект OpenSource Flash.
Совсем скоро появится новый Flash Player 8 (Maelstrom):
Коротко о возможностях Flash Player 8: графические фильтры (типа размытия или тени), улучшение производительности, более качественная отрисовка шрифтов и оптимизация работы с видео. Размер проигрывателя по прежнему небольшой.
Подробно:
Данный материал является выдержкой из большой и хорошей статьи "The Flash Platform" -- той самой, которая рекомендуется для распространения в мире потенциальных заказчиков а также будущих и настоящих работодателей.
Ура! Macromedia присоединяется к проекту Eclipse (являющемся платформой для OpenSource Flash-технологии FAME, о которой мы много пишем в последнее время). Цель присоединения -- создание IDE для флэш-разработчиков под названием Zorn, вот отрывок из новости:
"Macromedia Joins Eclipse Foundation Great news for the Flex/RIA community: Macromedia said it will join the Eclipse Foundation and create a "next-generation rich Internet application development tool," code-named Zorn, based on Eclipse. "This is a big move for us because we've always used our own tools," said Kevin Lynch, Macromedia's chief software architect. "Now we're adopting an open-source approach to build a new tool. It's important for the Flash platform because there's a growing community of developers adopting Eclipse and we would like to enable developers for the Flash platform to take advantage of it."
Вот ссылка на новость: Macromedia присоединяется к проекту Eclipse для создания среды разработки Zorn.
Попутно открыт новый раздел на сайте Macromedia: Macromedia - Flash Platform. На первый взгляд, ничего кардинально нового там не сказано, но точка зрения установлена верно. Рекомендуйте данный раздел своим клиентам, менеджерам, директорам по производству и руководителям проектов, если хотите на своей работе все меньше заниматься грустной борьбой где-то между таблицами стилей и резиновой html-версткой, и все больше -- продуктивной флэш-разработкой.
Процесс, как мы уже упоминали ранее, помчался!
// Via Eugene Potapenko | ruFlash
Nirth перевел с английского языка статью Карлоса Ровиры и опубликовал ее на своем сайте: Разработка Open Source Flash приложений.
Цитата:
"Если вам нравится технология Flash и Open Source разработка, то вы счастливчик, ибо добрые люди из Flash-сообщества разрабатывают по-настоящему хорошие «инструменты», которые можно интегрировать в уже существующие Open Source программы. Результат: Среда разработки для Flash, о которой можно мечтать. Теперь больше не нужно платить за лицензии, и у вас есть возможность модифицировать исходный код любой программы. На протяжении данной статьи я хочу собрать все «кусочки» которые нам нужны. Другими словами, я хочу рассмотреть вместе с вами мощную связку состоящую из MTASC-компилятора и Eclipse IDE (а также встраиваемые модули (plug-ins) для ActionScript редактирования и просмотра SWF). Лучше всего то, что, в некоторых случаях вы даже можете разрабатывать целые приложения не «вылезая» из предложенной среды."
И эта статья -- далеко не единственное, что вы можете найти на сайте Nirth'a onorange.com ;-)
Евгений Потапенко работает над второй версией FlashOut (скриншот FlashOut2) и принимает пожелания по его улучшению. Пожелания принимаются до 5 июня. Высказывать их можно в почтовой конференции ruFlash, в комментариях к данной записи или непосредственно Евгению Потапенко.
Иван Дембицкий -- это автор Менеджера Шрифтов, класов Path и XMLE, движка сайта conclave.ru, фразы " -- Если у тебя большая цель -- иди к ней медленно" и множества других замечательных вещей (мы о них раньше писали).
Сегодня, 1 июня 2005 года, студия Лебедева имеет привилегию разместить фото Ивана Дембицкого и одно из его произведений на стартовой странице студии Лебедева.
С первым днем лета вас!
Совсем древнее: 17-20.09.2002, 23-30.09.2002, 01-04.10.2002, 07-11.10.2002, 14-19.10.2002, 20-26.10.2002, 27.10-02.11.2002, 04-08.11.2002, 11-16.11.2002, 18-23.11.2002 25-30.11.2002, 02-07.12.2002, 09-14.12.2002 Сайт заработал 17.09.2002