четверг, августа 31, 2006

AutoFilledInput update

Привет. Вот я и вернулся из отпуска.
Выкладываю небольшой апдейт моей компоненты autofilledinput, о которой я писал чуть ниже.
Обновления:

  • выпадающий список ранее введеных в текстовое поле строк теперь сортируется по частоте их использования

  • в файлы сборки компоненты добавлен manifest.xml, таким образом, теперь при прописывании xmlns для моей библиотеки нужно писать xmlns:fishbounce="http://fishbounce.blogspot.com"


Пока все.
Соответсвенно обновлены файлы для скачивания.
Файлы:
Скачать zip-архив с fishbounce.swc
Скачать исходный текст
Пример работы компоненты (в виде проекта под Eclipse IDE с плагином Flex Builder 2)

понедельник, августа 14, 2006

Flex-компонента AutoFilledInput

Представляю вашему вниманию компоненту AutoFilledInput - расширенный TextInput c возможностью автозавершения ввода. Все, что вводит пользователь в это текстовое поле, запоминается на его компьютере в shared object файле, а потом просто вытаскивается оттуда.
Небольшая документация (пожалуйста, внимательно прочитайте ее перед использованием компоненты):

property enterCommitEventType - тип event'а, по которому ввод считается завершенным (по умолчанию стоит FlexEvent.ENTER, т.е. когда пользователь что-то ввел и нажал Enter). По этому событию введенная строка будет сохраняться. Таким событием может быть, например, focusOut...

property autoFillStoreName - имя shared object файла, в которое будут записываться введенные строки (по умолчанию "autofillstore").

property maxRowCount - максимальное количество выводимых вариантов автозаполнения в выпадающем списке (по умолчанию 5).

method activateAutoFill(autoFillStoreName : String = null, enterCommitEventType : String = null) : void - активация режима автозавершения ввожа пользователя. В качестве параметров можно передать имя shared object файла для сохранения введенных строк, а также тип Event'а, по которому ввод будет считаться завершенным.

public function deactivateAutoFill() : void
- деактивация режима автозаполнения. "Превращение" компоненты в обычный TextInput.

public function clearAutoFillStore() : void - удалить shared object файл с сохраннеными строками.

Файлы:
Скачать zip-архив с fishbounce.swc
Скачать исходный текст
Пример работы компоненты (в виде проекта под Eclipse IDE с плагином Flex Builder 2)

Чтобы воспользоваться компонентой, нужно включить fishbounce.swc в список используемых библиотек в свойствах вашего flex-проекта. Чтобы встроить AutoFilledInput в mxml-файл, нужно прописать в аттрибутах тэга Application новое xmlns (пространство имен), например:

xmlns:fishbounce="com.fishbounce.controls.*"

тогда в mxml-файле AutoFilledInput вставится так:

<fishbounce:AutoFilledInput />


Если будут замечания, пожелания или найденные "косяки" в работе компоненты, пишите в комменты.

вторник, августа 08, 2006

Сборка Flex-приложений с помощью Apache Ant

28 июля 2006 года кончилась халява c Flex Builder 2 Trial version, и остро встал вопрос, как работать дальше? Ни редактора с автокомплитами тебе, ни автоматической сборки Flex-приложения плагином для Eclipse.

Но при наличии бесплатного Flex 2 SDK и Apache Ant не все так уж и плохо.

У Constantiner'а есть замечательный пост о сборке Flex-приложений при помощи Apache Ant.

До того (честно:)), как я наткнулся на его пост, я и сам задумался над этой проблемой и сделал для себя kit для сборки flex-приложений. Вот только сейчас дошли руки, чтобы об этом написать.

Итак.

Для сборки flex app нам понадобится скачать (если еще не скачано):

После скачивания куда-нибудь распаковываем aрхив с flex sdk. У меня sdk находится в ${user.home}/flex2_sdk (т.е. c:/documents and settings/YOUR_USER_NAME/flex2_sdk). Ant устанавливаем, следуя инструкциям в мануале.
Далее создаем в папке ${user.home} (что это такое я уже писал) файл ant.global.properties. Пишем в нем одну строчку:
flex2.sdk.dir=[ваша директория с flex2_sdk]

В моем случае это выглядит так:
flex2.sdk.dir=${user.home}/flex2_sdk

На этом "глобальные" настройки закончены.

Здесь лежит rar-архив с примером использования моего build.xml файла. Там же есть небольшое руководство по использованию.
Надеюсь, кому-нибудь поможет.

Чуть-чуть изменив build.xml файл и application.properties, можно собирать аналогично flash-приложения при помощи mtasc-компилятора.

Здесь можно взять rar-архив с build.xml и application.properties файлами. Также в уже, надеюсь, существующем файле ant.global.properties добавить строчку
mtasc.dir=[папка, где у вас лежит mtasc.exe]

В файле application.properties пропишите необходимые для сборки classpaths, например:
mtasc.classpath=-cp ${mtasc.dir}/classes -cp c:/flash/someother_classes

Кладете это все в корень вашего проекта и набираете в коммандной строке
[путь к вашему проекту] ant

Возможно, что-то непонятно. Я, на самом деле, не очень-то и подробно все описал. Спрашивайте, если что в комментариях.

понедельник, августа 07, 2006

ZTORLog4f

ZTORLo4gf - инструмент для Flex 2, включающий в себя библиотеку и консоль для логирования своих супермегакрутых flex-приложений. Написан на Flex 2.
Включив библиотеку ZTORlog4f в свой проект, командами типа ZTORLog4f.info("some header", "some body") отсылаются лог-сообщения. В качестве их "приемщиков" на данный момент могут выступать:
  • LocalConnection appender - сообщения поступают в ZTORLog4fConsole (консоль для просмотра логов) в реальном времени.
  • SharedObject appender - сообщения сохраняются в указанный в настройках shared object-файл (*.so).
  • Trace appender - сообщения выводятся в консоль Flex Builder'а.
Так называемые appender'ы могут быть написаны самостоятельно и через внешний xml-файл подключены и настроены для приема лог-сообщений. Перечисленные выше appender'ы также можно включить-выключить, настроить уровень пропускания сообщений и т.д. в соответствующем xml-файле.