Статьи

Что нового в Apache Pivot?

Прошло много времени с тех пор, как я писал о Pivot , поэтому я подумал, что я бы хотел кратко описать некоторые вещи, над которыми мы работали в последнее время (Apache Pivot — это платформа для создания многофункциональных интернет-приложений на Java. в настоящее время проходит инкубацию в Apache Software Foundation).

Переходы CardPane

Одной из новых функций, добавленных в Pivot 1.2, была поддержка переходов изменения выбора в классе CardPane. Это позволяет разработчикам легко добавить визуальный интерес к навигации приложения. Pivot 1.2 включает в себя поддержку переходов с плавным переходом и горизонтальным / вертикальным слайдом, а в Pivot 1.3 добавлен флип-переход, изначально реализованный для демонстрации редактора строк таблицы . Эта демонстрация (из учебника Pivot) показывает, как выглядит каждый из новых переходов (требуется Java 6):

http://ixnay.biz/card_panes.html

Круто, да? Если у кого-то есть предложения по другим переходам, которые вы хотели бы увидеть, пожалуйста, сообщите нам об этом .

Scripting

We have made some significant enhancements to WTKX scripting support for Pivot 1.3. Script code can now be embedded inline in a WTKX document (previously, it had to be stored in an external file). More importantly, it is now much simpler to declare event handlers in WTKX. It is no longer necessary to implement a listener interface and programmatically add the listener to a component’s listener list — this can now be done entirely in markup. For example, the following WTKX creates a PushButton and attaches two button press listeners to it, one written in JavaScript and the other in Groovy:

<PushButton wtkx:id="pushButton" buttonData="Click Me!">
<buttonPressListeners>
<wtkx:script language="javascript">
importPackage(org.apache.pivot.wtk);
function buttonPressed(button) {
Alert.alert("Hello from JavaScript!", button.getWindow());
}
</wtkx:script>

<wtkx:script language="groovy">
buttonPressed = {
out.println("Hello from Groovy!")
}
</wtkx:script>
</buttonPressListeners>
</PushButton>

Вы, вероятно, не захотите так кодировать логику для всего своего приложения, но это значительно упрощает объявление простых обработчиков событий.

Контуры

Поставщик JFreeChart для Pivot обновлен для работы с последней версией JFreeChart . Демо здесь:

http://ixnay.biz/charts.html

UI Scaling

Pivot был разработан с нуля, чтобы быть независимым от разрешения; Все компоненты отображаются с использованием графических примитивов Java2D. Однако только в Pivot 1.2 эта поддержка стала доступна пользователю. Pivot 1.2 и более поздние версии позволяют пользователю интерактивно увеличивать и уменьшать масштаб дисплея, нажимая Shift-Control и прокручивая колесико мыши или нажимая клавиши + или -. Вы можете попробовать это самостоятельно в демоверсии Kitchen Sink (или в любом другом приложении Pivot). Хотя Pivot по-прежнему не может требовать полной поддержки специальных возможностей, эта функция должна помочь нам в этом.

JSON Viewer

На прошлой неделе у меня была возможность отладить некоторый код, основанный на некоторых довольно сложных данных JSON. Данные были очищены от пробелов и перевода строки для эффективности, что затрудняло их чтение. Я собрал это приложение, чтобы помочь мне более эффективно ориентироваться в данных. Это позволяет пользователю вставлять данные JSON из буфера обмена или перетаскивать файлы JSON в компонент TreeView:

http://ixnay.biz/json_viewer.html

Благодаря встроенной поддержке JSON Pivot, приложение было почти тривиально писать. Вот исходный код:

http://svn.apache.org/repos/asf/incubator/pivot/trunk/tools/src/org/apache/pivot/tools/json/

Обратите внимание, что приложение использует преимущества новых функций сценариев Pivot. Большая часть кода приложения определена в JSONViewer.java, но обработчик удаления определен в json_viewer.js, и, конечно, структура пользовательского интерфейса определена в json_viewer.wtkx. Я думаю, что это довольно удобный инструмент — надеюсь, другие разработчики тоже найдут в нем какую-то ценность.

логотип

Наконец, мы очень стараемся придумать логотип для Pivot, но до сих пор наши усилия были несколько скучными (в конце концов, мы инженеры-программисты, а не графические дизайнеры). Если кто-то склонен к творчеству и хочет помочь, мы будем рады услышать от вас! Пожалуйста, оставьте нам записку в нашем списке рассылки для разработчиков .

Это все на данный момент. Я буду публиковать более скоро, как мы приближаемся к выпуску Pivot 1.3.

От: http://weblogs.java.net/blog/gkbrown/archive/2009/07/what_is_new_wit.html