GTK 4.0 содержит улучшения для графических интерфейсов, передачи данных и многого другого.

Несколько дней тому назад анонсирован выпуск новой версии GTK 4.0, версия, которая находилась в разработке несколько месяцев и стала новой стабильной веткой проекта. В этой новой версии представлены очень интересные функции, из которых можно выделить улучшения в воспроизведении мультимедиа.

GTK - это набор программных библиотек для создания графических интерфейсов.GTK был первоначально разработан для нужд программного обеспечения для обработки изображений GIMP. В настоящее время его область действия больше не ограничивается только GIMP, но используется в других проектах. Например, GTK лежит в основе среды сетевой объектной модели GNU (GNOME), но его также можно использовать для написания приложений для других сред Linux, а также приложений для Microsoft Windows и Apple macOS.

«GTK 4.0 - это результат кропотливой работы небольшой команды преданных своему делу разработчиков. У нас будет отдельная статья, чтобы рассмотреть статистику, но краткое изложение состоит в том, что с ноября 3.89.1 года версии 2016 мы добавили более 18,000 20 коммитов и выпустили более XNUMX выпусков в разработке.

«Поздравления и большое спасибо всем, кто участвовал в этой работе, и в особенности Бенджамину, Эммануэле, Тимму, Карлосу, Джонасу и Кристиану! «

О новой версии GTK 4.0

GTK 4.0 представляет новые виджеты и изменения в существующих элементах, встроенная поддержка воспроизведения мультимедиа, улучшения ускорения графического процессора, такие как работа на вашем новый движок рендеринга Vulkan и лучшая совместимость с macOS. Мы также можем заметить улучшения в передаче данных, переработанные шейдеры, прокрутку с ускорением графического процессора, улучшения в рендеринге OpenGL за пределами задания Vulkan, восстановление задания в HTMl5 Broadway, лучшую поддержку Windows и т. Д.

Давайте рассмотрим некоторые моменты более подробно.

Медиа менеджмент в GT4

  • GTK 4 позволит приложениям GTK более легко отображать анимацию; будь то программная анимация, веб-архив или прямая трансляция.
  • GTK 4 предоставляет новый API под названием GdkPaintable, вдохновленный усилиями CSS Houdini. Он очень гибкий (все, что вы можете нарисовать, может быть GdkPaintable). Размер содержимого можно изменять (например, svg) или со временем (например, webm).
  • Если у вас есть более специализированные потребности, все, что можно захватить в GtkSnapshot, можно превратить в рисунок с помощью gtk_snapshot_to_paintable (). Если вы создаете собственный виджет, который хочет нарисовать объект для раскрашивания, это очень просто. Просто вызовите gdk_paintable_snapshot ().
  • Вы можете управлять мультимедиа с помощью виджета GtkVideo.

Передача данных в GTK4

Традиционные методы передачи данных Пользовательские приложения между настольными приложениями инициируются буфером обмена или перетаскиванием. GTK + поддерживает эти методы, но до GTK3 API в наборе инструментов для этого типа передачи данных были тщательно замаскированными копиями соответствующих API X11. Это неудивительно, поскольку весь API GDK был смоделирован в X11. К сожалению, реализация включает такие результаты, как инкрементальные передачи и преобразования строкового формата.

Для GTK4 команда решила отказаться от этого подхода., сделав выбор в пользу модернизации. Это концепция нового подхода:

«Если данные, которые ваше приложение хочет отправить, не являются строкой, вероятно, это объект, такой как GFile, GdkTexture или GdkRGBA. Приложение на стороне получателя может не использовать GTK или GLib и, следовательно, не знает об этих типах. И даже если вы это сделаете, нет возможности перемещать объекты из одного процесса в другой целиком.

«Внутри него передача данных осуществляется путем отправки дескриптора файла из исходного приложения и целевого приложения путем чтения потока байтов. Протоколы для буфера обмена и DND используют типы MIME, такие как text / uri-list, image / png или application / x-color, для определения формата байтового потока.

Отправка объекта включает согласование двустороннего совместимого формата данных, сериализацию объекта на исходной стороне в поток байтов этого формата, передачу данных и десериализацию объекта на стороне назначения. «

Кроме того, GTK4 поставляется с новыми API.

«Первый API, который мы представляем для обработки этих типов, - это объект GdkContentFormats. Он может содержать список форматов, которые могут быть GTypes или mime. Мы используем объекты GdkContentFormats для описания форматов, в которых приложение может предлагать данные, а также форматов, в которых приложение может получать данные ».

источник: https://blog.gtk.org/


Оставьте свой комментарий

Ваш электронный адрес не будет опубликован. Обязательные для заполнения поля помечены *

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.