Проект Enlightenment представил (http://enlightenment.org/p.php?p=news/show&l=en&news_id=43) новую порцию стабильных релизов библиотек, составляющих набор EFL (Enlightenment Foundation Library). Библиотеки EFL позволяют создавать визуально привлекательные графические интерфейсы, отличающиеся компактностью, низким потреблением ресурсов и высокой производительностью. Несмотря на изначальное развитие в качестве базиса для окружения Enlightenment 17, в настоящее время компоненты EFL обретают популярность для построения интерфейсов потребительской электроники и мобильных устройств. Например, EFL является составной частью мобильной платформы Tizen, продолжающей развитие MeeGo, используются в бытовой технике Electrolux (https://www.opennet.ru/opennews/art.shtml?num=28750), телефонах Samsung (https://www.opennet.ru/opennews/art.shtml?num=24315), а также в продуктах компаний ProFUSION, Free.fr и Calaos.
Новые компоненты EFL, переведённые в разряд стабильных:
- Eio 1.0.0 (http://trac.enlightenment.org/e/wiki/Eio) - абстрактный интерфейс для доступа к файловой системе и реализации асинхронного ввода/вывода;
- Emotion 1.0.0 (http://trac.enlightenment.org/e/wiki/Emotion) - библиотека для интеграции в EFL-приложения поддержки проигрывания аудио и видео контента. Проигрывание видео может осуществляться с использованием Gstreamer, Xine или других внешних плагинов (например, VLC), при этом видео отображается как стандартный объект в Evas;
- Ethumb 1.0.0 (http://trac.enlightenment.org/e/wiki/Ethumb) - библиотека для формирования эскизов изображений, соответствующих стандартам freedesktop.org. Ethumb реализован в виде сервиса dbus и клиентской библиотеки, взаимодействующей с данным сервисом;
- Elementary 1.0.0 (http://trac.enlightenment.org/e/wiki/Elementary) - набор виджетов с готовой реализацией разнообразных графических элементов (от кнопок и элементов управления, до календаря и модуля редактирования текста).
Обновление компонентов, ранее входящих в состав EFL:
- Eina 1.2.0 (http://trac.enlightenment.org/e/wiki/Eina) - библиотека с реализацией различных типов данных (массив, хэш, список, дерево) и полезных инструментов (работа с логами, оценка производительности, преобразование форматов и т.д.).
<blockquote>В новой версии добавлен (http://trac.enlightenment.org/e/browser/trunk/eina/NEWS) API для управления семафорами, реализован итератор Eina_Xattr, добавлены новые типы данных eina_inarray и eina_value, ускорена работа Eina_Rbtree;</blockquote>
- Eet 1.6.0 (http://trac.enlightenment.org/e/wiki/Eet) - библиотека для записи произвольного набора блоков данных в файл и их последующего частого чтения в произвольном порядке.
<blockquote>В новой версии проведены (http://trac.enlightenment.org/e/browser/trunk/eet/NEWS) дополнительные оптимизации потребления памяти и производительности, добавлена поддержка GNUTLS 3.x, реализован API EET_DATA_DESCRIPTOR_ADD_BASIC_VAR_ARRAY, размер eet_connection увеличен до 1 Мб;</blockquote>
- Evas 1.2.0 (http://trac.enlightenment.org/e/wiki/Evas) - система рендеринга для организации вывода на экран. Evas оперирует содержимым экрана как сценой, на которой размещаются определенные объекты, состояние которых в последующем отслеживается. Подобный подход, абстрагированный от размещения экранных элементов, позволяет разрабатывать интерфейс пользователя с точки зрения дизайнера, а не программиста (в коде достаточно определить только логику и не думать о прорисовке и выводе на экран). Evas также абстрагирует метод вывода, что позволяет использовать один и тот же код в сочетании как с программным рендерингом, так и с OpenGL. При этом над сценой можно проделывать такие операции как масштабирование, вращение и 3D-трансформации. Evas обеспечивает замечательную производительность даже при использовании программных методов рендеринга, без задействования аппаратной акселерации вывода.
<blockquote>В новой версии реализовано около 40 изменений (http://trac.enlightenment.org/e/browser/trunk/evas/NEWS), среди которых: движок Shm для отрисовки с использованием Wayland, оптимизация производительности, прекращение поддержки движка Software_SDL, поддержка двойной буферизации в движке buffer, новые API для управления флагами событий и для манипулирования объектами фреймов, бэкенд evasgl для ПО, использующего Mesa;</blockquote>
- Ecore 1.2.0 (http://trac.enlightenment.org/e/wiki/Ecore) - библиотека для организации цикла обработки событий, имеющая в своем арсенале набор модулей для упрощения связанных с обработкой событий задач, таких как работа с X, Evas, нитями, сетевыми соединениями и т.п.
<blockquote>В новой версии добавлено около 100 новых функций (http://trac.enlightenment.org/e/browser/trunk/ecore/NEWS), добавлены компоненты для работы с Wayland, проведена оптимизация потребления памяти, улучшена поддержка платформ Windows и Mac OS X;</blockquote>
- Embryo 1.2.0 (http://trac.enlightenment.org/e/wiki/Embryo) - библиотека для написания небольших компилируемых приложений для встраиваемых устройств.
<blockquote>В новой версии улучшена (http://trac.enlightenment.org/e/browser/trunk/embryo/NEWS) поддержка платформы Windows, добавлена поддержка exotic, реализован набор математических функций;</blockquote>
- Edje 1.2.0 (http://trac.enlightenment.org/e/wiki/Edje) - графическая библиотека, отделяющая внешний вид от кода (оформление задается в виде загружаемого из файла шаблона). По своей сути Edje занимает нишу где-то между HTML+CSS и Flash/PSD/SVG. При помощи данной библиотеки можно сформировать насыщенный пользовательский интерфейс, снабженный анимированными визуальными эффектами и поддерживающий динамическое оформление (внешний вид можно полностью поменять просто сменив EDJ-шаблон и не трогая код, при этом, в отличие от визуальных тем, порядок расположения элементов может быть произвольно изменен).
<blockquote>В новой версии добавлены (http://trac.enlightenment.org/e/browser/trunk/edje/NEWS) vkbd-типы HEX, TERMINAL, PASSOWORD, около реализовано 30 новых функций, увеличена скорость загрузки Edje-файлов, улучены средства для интеграции скриптов на языке Lua;</blockquote>
- Efreet 1.2.0 (http://trac.enlightenment.org/e/wiki/Efreet) - библиотека, позволяющая использовать в приложениях некоторые спецификации Freedesktop.org по работе с пиктограммами, Desktop-файлами и меню.
<blockquote>В новой версии отмечено (http://trac.enlightenment.org/e/browser/trunk/efreet/NEWS) несколько незначительных исправлений;</blockquote>
- E_Dbus 1.2.0 (http://trac.enlightenment.org/e/wiki/E_Dbus) - надстройка над DBus API, позволяющая использовать его в EFL-приложениях и интегрировать в основной цикл обработки событий Ecore/main.
<blockquote>В новой версии проведена (http://trac.enlightenment.org/e/browser/trunk/e_dbus/NEWS) работа над ошибками;</blockquote>
- Eeze 1.2.0 (http://trac.enlightenment.org/e/wiki/Eeze) - библиотека для организации взаимодействия с внешними устройствами через udev, hal и другие механизмы.
<blockquote>В новой версии добавлена (http://trac.enlightenment.org/e/browser/trunk/eeze/NEWS) поддержка определения bluetooth-устройств, реализован API для работы с сетевыми устройствами;</blockquote>
- Expedite 1.2.0 (http://trac.enlightenment.org/e/wiki/Expedite) - инструментарий для измерения производительности, который может тестировать различные движки Evas, такие как X11, XRender, OpenGL, SDL и DirectFB. Методика тестирования максимально приближена к реальным условиям.
<blockquote>В новой версии удалена (http://trac.enlightenment.org/e/browser/trunk/expedite/NEWS) поддержка движков SDL 16bpp и Software_SDL;</blockquote>
- Evil 1.1.0 (http://trac.enlightenment.org/e/wiki/Evil) - реализация уровня совместимости для работы на платформе Windows.
<blockquote>Среди улучшений (http://trac.enlightenment.org/e/browser/trunk/evil/NEWS) незначительное расширение API, например, добавлено POSIX-совместимое семейство функция printf() и вызов strcasestr().</blockquote>
URL: http://enlightenment.org/p.php?p=news/show&l=en&news_id=43
Новость: https://www.opennet.ru/opennews/art.shtml?num=33714