The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Новая версия EFL 1.13 (Enlightenment Foundation Library)

10.02.2015 11:07

После трёх месяцев разработки проект Enlightenment представил выпуск набора библиотек EFL 1.13 (Enlightenment Foundation Library), позволяющих создавать визуально привлекательные графические интерфейсы, отличающиеся компактностью, низким потреблением ресурсов и высокой производительностью. Несмотря на изначальное развитие в качестве базиса для окружения Enlightenment, компоненты EFL часто используются для построения интерфейсов потребительской электроники и мобильных устройств. Например, EFL является составной частью мобильной платформы Tizen, используются в бытовой технике Electrolux, телефонах Samsung, а также в продуктах компаний ProFUSION, Free.fr и Calaos.

Кроме библиотек EFL выпущен набор виджетов Elementary 1.13, а также пакеты Emotion Generic Players 1.13 и Evas Generic Loaders 1.13. Emotion Generic Players включает реализации базовых компонентов для проигрывания медиаконтента. Evas Generic Loaders представляет собой коллекцию модулей, позволяющих организовать загрузку форматов svg, xcf, pdf, ps, ppt, doc, docx, xls, avi, mkv, wmv и т.д. Модули из состава Emotion Generic Players и Evas Generic Loaders выполнены в форме обособленных процессов, взаимодействующих с базовой программой через разделяемую память и неименованные каналы, что позволяет обеспечить продолжение работы программы на базе EFL, даже в случае краха обработчика медиаконтента.

Ключевые новшества:

  • Многочисленные улучшения в поддержке Wayland, в том числе в ecore_drm добавлена возможность использования libinput и представлен drm launcher, позволяющий запустить Enlightenment не только при наличии root-привилегий, но и через logind;
  • Представлена бета-версия новой библиотеки Elocation, предоставляющей разработчикам средства для получения информации о географическом местоположении. В настоящее время библиотека получает данные при помощи DBus-сервиса GeoClue1, в дальнейшем ожидается поддержка GeoClue2. В качестве примера областей использования Elocation отмечается установка геотегов на фотографии, получение адресных данных на основе координат GPS и их отображение на карте;
  • Улучшена поддержка платформ Windows и OS X. Прекращена поддержка Windows CE;
  • В систему сборки добавлена поддержка automake 1.14. Прекращено распространение архивов в формате Bzip2, архивы с кодом библиотек теперь будут поставляться в форматах gz и xz;
  • Продолжена работа по усовершенствованию Elua, runtime на основе LuaJIT, предназначенного для быстрой разработки приложений на языке Lua с использованием EFL;
  • Многие виджеты Elelmentary переведены на использование системы Eolian, позволяющей генерировать код на основе классов описания метаданных в файлах ".eo". В целом API Eolian отмечен как стабильный.
  • В систему рендеринга Evas 3D добавлена поддержка импорта и экспорта данных в формате PLY, что позволяет задействовать в EFL модели, подготовленные в Blender. В Evas 3D также реализован режим смешивания мэшей;
  • В Evas для всех объектов добавлена поддержка масок прозрачности изображений;
  • Увеличена производительность выбора больших блоков текста в шаблонизаторе Edje;
  • В EvasGL реализован новый скрипт генерации шейдеров и обеспечена генерация шейдеров на этапе выполнения Makefile. Представлена концепция безопасного подключения дополнений к EvasGL. Добавлена поддержка дополнения bind_wayland_display.

Состав EFL:

  • Eina - библиотека с реализацией различных типов данных (массив, хэш, список, дерево) и полезных инструментов (работа с логами, оценка производительности, преобразование форматов и т.д.).
  • Eet - библиотека для записи произвольного набора блоков данных в файл и их последующего частого чтения в произвольном порядке.
  • Evas - система рендеринга для организации вывода на экран. Evas оперирует содержимым экрана как сценой, на которой размещаются определённые объекты, состояние которых в последующем отслеживается. Подобный подход, абстрагированный от размещения экранных элементов, позволяет разрабатывать интерфейс пользователя с точки зрения дизайнера, а не программиста (в коде достаточно определить только логику и не думать о прорисовке и выводе на экран). Evas также абстрагирует метод вывода, что позволяет использовать один и тот же код в сочетании как с программным рендерингом, так и с OpenGL. При этом над сценой можно проделывать такие операции как масштабирование, вращение и 3D-трансформации. Evas обеспечивает замечательную производительность даже при использовании программных методов рендеринга, без задействования аппаратной акселерации вывода.
  • Ecore - библиотека для организации цикла обработки событий, имеющая в своем арсенале набор модулей для упрощения связанных с обработкой событий задач, таких как работа с X, Evas, нитями, сетевыми соединениями и т.п.
  • Embryo - библиотека для написания небольших компилируемых приложений для встраиваемых устройств.
  • Edje - графическая библиотека, отделяющая внешний вид от кода (оформление задаётся в виде загружаемого из файла шаблона). По своей сути Edje занимает нишу где-то между HTML+CSS и Flash/PSD/SVG. При помощи данной библиотеки можно сформировать насыщенный пользовательский интерфейс, снабжённый анимированными визуальными эффектами и поддерживающий динамическое оформление (внешний вид можно полностью поменять просто сменив EDJ-шаблон и не трогая код, при этом, в отличие от визуальных тем, порядок расположения элементов может быть произвольно изменён).
  • Efreet - библиотека, позволяющая использовать в приложениях некоторые спецификации Freedesktop.org по работе с пиктограммами, Desktop-файлами и меню.
  • Eeze - библиотека для организации взаимодействия с внешними устройствами через udev, hal и другие механизмы.
  • Expedite - инструментарий для измерения производительности, который может тестировать различные движки Evas, такие как X11, XRender, OpenGL, SDL и DirectFB. Методика тестирования максимально приближена к реальным условиям.
  • Evil - реализация уровня совместимости для работы на платформе Windows.
  • Eio - абстрактный интерфейс для доступа к файловой системе и реализации асинхронного ввода/вывода;
  • Emotion - библиотека для интеграции в EFL-приложения поддержки проигрывания аудио и видео контента. Проигрывание видео может осуществляться с использованием Gstreamer, Xine или других внешних плагинов (например, VLC), при этом видео отображается как стандартный объект в Evas.
  • Ethumb - библиотека для формирования эскизов изображений, соответствующих стандартам freedesktop.org. Ethumb реализован в виде сервиса dbus и клиентской библиотеки, взаимодействующей с данным сервисом.
  • Elementary - набор виджетов с готовой реализацией разнообразных графических элементов (от кнопок и элементов управления, до календаря и модуля редактирования текста).
  • Eldbus - надстройкой над DBus API, заменившая собой ранее доступный модуль E_Dbus. Поддержка E_dbus пока сохранена, но больше не будет обновляться;
  • Ephysics - предоставляет средства для использования движка симуляции физических процессов Bullet Physics Engine в приложениях на базе EFL. Ephysics обеспечивает связку Bullet с библиотеками Ecore и Evas;
  • Ecore Audio - API для работы со звуком.



  1. Главная ссылка к новости (https://phab.enlightenment.org...)
  2. OpenNews: Выпуск EFL 1.12 (Enlightenment Foundation Library)
  3. OpenNews: Выпуск эмулятора терминала Terminology 0.5, развиваемого проектом Enlightenment
  4. OpenNews: Проект Enlightenment представил первый выпуск медиапроигрывателя Rage
  5. OpenNews: Выпуск пользовательского окружения Enlightenment 19 с поддержкой Wayland
  6. OpenNews: Корректирующий выпуск пользовательского окружения Enlightenment DR 0.19.3
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/41645-efl
Ключевые слова: efl, enlightenment
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (15) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (-), 13:17, 10/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > позволяющих создавать визуально привлекательные графические интерфейсы

    А почему тогда в их Enlightenment графический интерфейс такой визуально непривлекательный?

     
     
  • 2.2, Аноним (-), 13:33, 10/02/2015 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Получше gtk будет
     
  • 2.4, Anonimus (??), 13:44, 10/02/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Тоже задавался этим вопросом. Для себя решил, что "визуально привлекательный" - это для программистов которые его пилят.
     
  • 2.5, Аноним (-), 13:50, 10/02/2015 [^] [^^] [^^^] [ответить]  
  • +18 +/
    Потому что хорошие кисти и краски не делют из программиста художника
     

  • 1.3, Бутират (?), 13:44, 10/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    Этот гуй под венду/мак запускается?
     
  • 1.6, Futu (?), 15:22, 10/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Evil - реализация уровня совместимости для работы на платформе Windows.

    Подходящее название

     
  • 1.8, Kodir (ok), 16:53, 10/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • –3 +/
    Если библиотека делает всё то, что декларирует, нафик ей тогда винда?? :) Тупо вставиться в её автоэкзек?

    Ребят, если кто имел опыт под виндой, расскажите - как оно? Можно юзать в продакшене? Легко ли допиливается?

     
     
  • 2.11, lybin (ok), 19:48, 10/02/2015 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Чтобы софт кроссплатформенный писать.
     

  • 1.9, Аноним (-), 18:00, 10/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Хорошая либа, компактная функциональная, и доки написаны просто и без лишних букв
     
  • 1.10, Аноним (-), 18:54, 10/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не смог найти ни одного вменяемого скриншота(
    Все специально сделано, что бы нельзя было рассмотреть элементы интерфейса?
     
     
  • 2.12, Stax (ok), 21:02, 10/02/2015 [^] [^^] [^^^] [ответить]  
  • +/
    > Не смог найти ни одного вменяемого скриншота(

    Ну тут например есть https://trac.enlightenment.org/e/wiki/EdjeTextblockPart
    Не в смысле "вменяемо выглядящий", а в смысле характерный пример того, как предполагается, чтобы это выглядело.

    > Все специально сделано, что бы нельзя было рассмотреть элементы интерфейса?

    А еще они просто обожают антиалиасинг при рендеринге графических элементов, они все имеют "мягкие края" (+ мягкую окантовку в духе "свет пробивается сзади") - так раздражает после привычки к современным интерфейсам андроида или тех же черно-белых иконок в гноме.

    Впрочем, не думаю, что их заботит, что об их интерфейсах думают другие. Главное, samsung платит бабло, и ладно :)
    А еще по ссылке на описание графического тулкита "Elementary" https://phab.enlightenment.org/w/elementary/ довольно характерно видно, насколько они заботятся о документации.

     
  • 2.13, Ойноним (?), 21:32, 10/02/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Тебе скриншот какого участка кода сделать? И в каком редакторе? Может есть пожелание какой гарнитурой и кеглем шрифта будет открыт код для сознания скриншота?
     

  • 1.14, Аноним (-), 03:00, 11/02/2015 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ну я зашел сюда http://www.enlightenment.org/p.php?p=about/e17&l=en

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

     
     
  • 2.15, Аноним (-), 06:33, 11/02/2015 [^] [^^] [^^^] [ответить]  
  • +1 +/
    С третьей минуты https://www.youtube.com/watch?v=UE8vFCsYh4I
     
     
  • 3.16, Аноним (-), 13:47, 11/02/2015 [^] [^^] [^^^] [ответить]  
  • +/
    Спасибо)

    Посмотрел, но как то не впечатлило.
    Вызывает ощущение, что чего-то не хватает.
    Сочетание цветов местами не очень удачное.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру