ГТК

Бесплатный кроссплатформенный набор виджетов с открытым исходным кодом для создания графических пользовательских интерфейсов.

Оригинальный автор(ы)Спенсер Кимбалл , Питер Мэттис
Разработчик(и)Проект GNOME , экспериментальный вычислительный комплекс (XCF)
Первоначальный выпуск14 апреля 1998 г .; 26 лет назад ( 1998-04-14 )
Стабильный релиз
4.16.12 / 3 января 2025 г. ; 22 дня назад ( 2025-01-03 )
Предварительный релиз
4.17.2 / 26 декабря 2024 г. ; 30 дней назад ( 2024-12-26 )
Репозиторий
  • gitlab.gnome.org/GNOME/gtk
Написано вС , CSS [1]
Операционная системаLinux , Unix-подобные , macOS , Windows
ТипНабор инструментов для виджетов
ЛицензияLGPLv2.1+
Веб-сайтgtk.org

GTK (ранее GIMP ToolKit [2] и GTK+ [3] ) — это бесплатный программный кроссплатформенный набор инструментов для создания графических пользовательских интерфейсов (GUI). [4] Он лицензирован в соответствии с условиями GNU Lesser General Public License , что позволяет использовать его как в свободном, так и в проприетарном программном обеспечении . Это один из самых популярных наборов инструментов для оконных систем Wayland и X11 . [5]

Команда GTK регулярно выпускает новые версии. [6] GTK 4 и GTK 3 поддерживаются, в то время как GTK 2 больше не поддерживается . [7] GTK1 независимо поддерживается проектом CinePaint . [8]

Архитектура программного обеспечения

Инструментарий GTK
Упрощенная архитектура программного обеспечения GTK , Pango , GDK , ATK , GIO , Cairo и GLib
GDK содержит бэкэнды для X11 , Wayland , Broadway ( HTTP ), Quartz и GDI и использует Cairo для рендеринга. Его новый SceneGraph находится в разработке.

Библиотека GTK содержит набор графических элементов управления ( виджетов ); версия 3.22.16 содержит 186 активных и 36 устаревших виджетов. [9] GTK — это объектно-ориентированный набор инструментов для виджетов, написанный на языке программирования C ; он использует GObject (то есть объектную систему GLib ) для объектной ориентации. Хотя GTK в основном используется с оконными системами на основе X11 и Wayland , он работает и на других платформах, включая Microsoft Windows (с интерфейсом Windows API ) и macOS (с интерфейсом Quartz ). Существует также бэкэнд HTML5 под названием Broadway . [10] [11]

GTK можно настроить для изменения внешнего вида отрисовываемых виджетов; это делается с помощью различных движков отображения. Существует несколько движков отображения, которые пытаются эмулировать внешний вид собственных виджетов на используемой платформе.

Начиная с версии 2.8, выпущенной в 2005 году, GTK начал переход на использование Cairo для рендеринга большинства своих графических элементов управления виджетов . [12] Начиная с версии GTK 3.0, весь рендеринг выполняется с помощью Cairo. [13]

26 января 2018 года на DevConf.cz Маттиас Класен дал обзор текущего состояния разработки GTK 4, включая общее объяснение того, как работают рендеринг и ввод в GTK 3, какие изменения вносятся в GTK 4 (>3.90) и почему. [14] 6 февраля 2019 года было объявлено, что GTK 4 уберет «+» из названия проекта. [3]

Комплект чертежей GTK (GDK)

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

Комплект графа сцены GTK (GSK)

GSK — API рендеринга и графа сцены для GTK. GSK находится между графическими элементами управления (виджетами) и рендерингом. GSK был окончательно объединен с версией GTK 3.90, выпущенной в марте 2017 года.

GtkBuilder

GtkBuilder позволяет проектировать пользовательские интерфейсы без написания кода. Интерфейс описывается в файле Extensible Markup Language (XML), который пишется вручную или генерируется дизайнером GUI, который затем загружается во время выполнения, и объекты создаются автоматически. Описание пользовательского интерфейса не зависит от используемого языка программирования.

Языковые привязки

Для использования GTK доступны языковые привязки из языков, отличных от C, включая C++ , Genie, JavaScript , Perl , Python , Vala и другие . [15]

Бэкэнды

GTK поддерживает различные бэкэнды, которые предоставляют различные способы отображения приложений GTK в зависимости от системы и среды. Примеры бэкэндов GTK:

  • Wayland – используется с сервером отображения Wayland в системах Linux и является современной заменой X11.
  • X11 — используется по умолчанию в системах Linux, использующих сервер отображения X.Org.
  • Win32 – Для запуска приложений GTK в Windows.
  • Quartz – Для поддержки macOS.
  • Broadway – позволяет запускать приложения GTK в веб-браузерах с использованием HTML5 и WebSockets. [10] [11]

Инструменты разработки

Дизайнеры графического интерфейса

Скриншот Cambalache Interface Designer

Есть несколько дизайнеров GUI для GTK. Вот выбор дизайнеров GUI для GTK:

  • Cambalache — преемник Glade , поддерживает GTK 4. [ 16] [17]
  • Glade — поддерживает GtkBuilder, который является встроенным в GTK форматом описания графического интерфейса пользователя (активно не поддерживается).
  • Gazpacho — конструктор графического интерфейса пользователя для набора инструментов GTK, написанный на Python [18]
  • Crow Designer — использует собственный формат GuiXml и библиотеку GuiLoader. [19]
  • Stetic — часть MonoDevelop , ориентированная на Gtk# .
  • Gambas (начиная с версии 2.0 поверх BASIC )
  • Ксоджо
  • Lazarus (в Linux по умолчанию взаимодействует с GTK 2)

Инспектор ГТК

Скриншот GTK Inspector

GTK Inspector — это встроенный интерактивный инструмент отладки в GTK, позволяющий разработчикам проверять и изменять элементы пользовательского интерфейса, тестировать изменения CSS и анализировать структуру виджетов в реальном времени. Его можно включить с помощью сочетаний Control + Shift + Iклавиш Control + Shift + Dили или установив GTK_DEBUG=interactiveпеременную окружения. [20] Он был представлен в версии GTK 3.14. [21] [22]

Функции

  • Интерактивная отладка
  • Тестирование и модификация CSS в реальном времени
  • Увеличение виджета для детального осмотра
  • Анализ структуры пользовательского интерфейса и проверка свойств объекта
  • Настраиваемые параметры отображения с помощью переменных среды
  • Подробная проверка объекта (тип, состояние, свойства, CSS, действия и т. д.)
  • Глобальный дисплей информации о приложении
  • Отладка правил CSS
  • Рендеринг записи и осмотра трубопровода

Разработка

GTK в основном разрабатывается The GNOME Project , который также разрабатывает GNOME Development Platform и GNOME Desktop Environment . [23] GTK в основном написан на языке C. [24] Доступно множество языковых привязок . Разработка GTK слабо управляется.

Разработчики и пользователи GNOME собираются на ежегодной Европейской конференции пользователей и разработчиков GNOME (GUADEC) , чтобы обсудить текущее состояние и будущее направление развития GNOME. [25] GNOME включает стандарты и программы с freedesktop.org для лучшего взаимодействия с другими рабочими столами. [ требуется ссылка ]

1 сентября 2016 года в блоге разработчиков GTK была опубликована запись, в которой, среди прочего, была обозначена будущая схема нумерации GTK. [26] Версия GTK 3.22, выпущенная осенью 2016 года, планировалась как последний выпуск 3.x, хотя осенью 2018 года вышла версия 3.24 с задержкой GTK 4. [27] При разработке GTK 4 использовались названия версий 3.90, 3.92 и т. д. до тех пор, пока в декабре 2020 года не был выпущен первый стабильный релиз GTK 4. [28] Несмотря на первый стабильный релиз GTK 4, некоторые приложения, использующие GTK , по-прежнему полагаются на GTK 2. Например, по состоянию на январь 2022 года GIMP все еще переносится на GTK 3. [29]

Автоматизация сборки

Основная ветвь GTK использует Meson для автоматизации сборки. GTK (и GNOME, GLib и т. д.) ранее использовала GNU Build System (называвшуюся Autotools) в качестве системы автоматизации сборки по выбору. С 14 августа 2017 года файлы системы сборки Autotools были удалены. [30]

Критика

Наиболее распространенной критикой GTK является отсутствие обратной совместимости в крупных обновлениях, особенно в интерфейсе прикладного программирования (API) [31] и темизации. [32] В результате разработчикам приложений или тем приходится переписывать части своего кода, чтобы он работал с более новой версией GTK.

Бенджамин Отте объяснил разрывы совместимости между второстепенными релизами в течение цикла разработки GTK 3.x сильным давлением инноваций, таким как предоставление функций, ожидаемых современными пользователями, и поддержка все более влиятельного протокола сервера отображения Wayland . С выпуском GTK 4 давление от необходимости инноваций будет снято, и баланс между стабильностью и инновациями сместится в сторону стабильности. [33] Аналогичным образом, недавние изменения в тематизации специально направлены на улучшение и стабилизацию этой части API, то есть некоторые инвестиции сейчас должны быть вознаграждены позже.

  • Орельен Гато начал Gwenview как приложение GTK, но переключился на Qt на ранних этапах разработки. [34]
  • Дирк Хондель, один из разработчиков Subsurface и член Центра технологий с открытым исходным кодом Intel , раскритиковал разработчиков GTK за резкость и игнорирование большинства запросов сообщества. [35]
  • Хонг Джен Йи, разработчик LXDE (версия GTK которого была прекращена, и все усилия были сосредоточены на порте Qt ), выразил пренебрежение к радикальным изменениям API версии 3 инструментария GTK и возросшему использованию памяти и перенес PCMan File Manager (PCManFM) на Qt . PCManFM разрабатывается с использованием GTK и бэкэнда Qt одновременно. [36]
  • Музыкальный проигрыватель Audacious перешел на Qt в версии 3.6. [37] Причины, заявленные разработчиками, включают переход к оформлению клиентских окон, из-за чего, по их словам, приложение выглядит « GNOME - y и неуместным». [38]
  • Wireshark перешел на Qt из-за отсутствия хорошего опыта кроссплатформенной поддержки GTK. [39]

Использовать

Поддержка Wayland со стороны GTK требует адаптации приложений к Wayland.
Скриншот GIMP 2.8 — GTK отвечает за управление компонентами интерфейса программы, включая меню, кнопки и поля ввода.

Приложения

Вот некоторые известные приложения, использующие GTK в качестве набора виджетов:

Программы GTK могут быть запущены в средах рабочего стола на основе X11 и Wayland или других, включая те, которые не созданы с использованием GTK, при условии установки необходимых библиотек; это включает macOS , если установлен X11.app . GTK также может быть запущен в Microsoft Windows . Он используется некоторыми популярными кроссплатформенными приложениями, такими как Pidgin и GIMP . wxWidgets , кроссплатформенный набор инструментов GUI, по умолчанию использует GTK в Linux. [40] Другие порты включают DirectFB (например, используемый установщиком Debian ).

Среды рабочего стола

Несколько сред рабочего стола используют GTK в качестве инструментария виджетов.

Текущий

  • GNOME , основанный на GTK, что означает, что программы, родные для GNOME, используют GTK
  • Budgie , созданный с нуля для преемника SolusOS, операционной системы Solus
  • Cinnamon — форк GNOME 3, использующий GTK версии 3
  • MATE — форк GNOME 2, использующий GTK 3 с версии 1.18
  • Xfce , основанный на GTK 3, начиная с версии 4.14
  • Pantheon использует исключительно GTK 3, разработанный Elementary OS
  • Sugar , среда рабочего стола для начального образования молодежи , которая использует GTK, особенно PyGTK
  • Phosh — мобильный пользовательский интерфейс, разработанный для PureOS
  • LXDE (легкая среда рабочего стола X11) основана на GTK 2
  • Unity , бывшая среда рабочего стола по умолчанию в Ubuntu

Неактивный

Оконные менеджеры

Следующие оконные менеджеры используют GTK:

GtkSourceView

Для подсветки синтаксиса есть GtkSourceView, "виджет редактирования исходного кода". GtkSourceView поддерживается GNOME отдельно от GTK как библиотека: gtksourceview. Планируется переименовать в gsv. [ нужна цитата ]

GtkSpell

GtkSpell — это библиотека, отдельная от GTK. GtkSpell зависит от GTK и Enchant . Enchant — это оболочка для ispell, hunspell и т. д., фактического движка/программного обеспечения проверки орфографии . GtkSpell использует виджет GtkTextView от GTK для выделения слов с ошибками и предложения замены.

История

GTK изначально был разработан и использовался в программе GNU Image Manipulation Program (GIMP) в качестве замены инструментария Motif ; в какой-то момент Питер Мэттис разочаровался в Motif и начал писать свой собственный набор инструментов GUI, названный GIMP toolkit, и успешно заменил Motif в версии 0.60 GIMP. [41] Наконец, GTK был переписан, чтобы стать объектно-ориентированным , и был переименован в GTK+. [42] Впервые он был использован в версии 0.99 GIMP. Впоследствии GTK был принят для обслуживания GNOME Foundation , который использует его в среде рабочего стола GNOME.

ГТК 2

Серия релизов GTK 2.0.0 (2002 [43] ) представила новые функции, в том числе улучшенную визуализацию текста с использованием Pango , новый движок тем , улучшенную доступность с использованием Accessibility Toolkit , переход на Unicode с использованием строк UTF-8 и более гибкий API. Начиная с версии 2.8, GTK 2 зависит от графической библиотеки Cairo для визуализации векторной графики.

ГТК 3

Версия GTK 3.0.0 (2011 [44] ) включала пересмотренную обработку устройств ввода, поддержку тем, написанных с использованием синтаксиса, подобного CSS , и возможность получать информацию о других открытых приложениях GTK.

В феврале 2019 года во время хакатона знак «+» был убран, и снова осталось просто «GTK» . [45]

OpenVMS

HP заявила, что их целью было объединить необходимые изменения OpenVMS с потоком разработки GTK версии 1.3, однако это так и не было реализовано. [46] Последняя версия GTK для OpenVMS — версия 1.2.10. [47]

ГТК 4

Одним из основных изменений, внесенных в цикл разработки GTK 4 (т. е. GTK 3.92 и т. д.), было удаление пользовательских настроек (например, индивидуальных сочетаний клавиш, которые можно было задать в GTK+ 2) и делегирование функциональности вспомогательным объектам вместо ее кодирования в базовые классы, предоставляемые GTK. Другие изменения включают:

  • Обработка событий от обработчиков сигналов, описанных GtkWidget, делегируется контроллерам событий.
  • Рендеринг делегирован объектам GtkSnapshot.
  • Механизм компоновки делегирован от GtkWidget к GtkLayoutManager.

На выпуске DevConf.cz 2018 года Маттиас Класен дал обзор текущего состояния разработки GTK 4, включая высокоуровневое объяснение того, как рендеринг и ввод работали в GTK 3, какие изменения были внесены в GTK 4 и причины этих изменений. Также были приведены примеры того, что стало возможным с GTK 4. [48]

Релизы

Легенда:
Неподдерживаемая версия
Старая версия, все еще поддерживается
Последняя версия
Последняя предварительная версия
Будущий релиз
Выпуск серииПервоначальный выпускОсновные улучшенияПоследняя минорная версия
Старая версия, больше не поддерживается:1.01998-04-13 [49]Первая стабильная версия1.0.
Старая версия, больше не поддерживается:1.21999-02-25 [50]Новые виджеты :
  • GtkFontSelector
  • GtkPacker
  • GtkItemFactory
  • GtkCTree
  • GtkНевидимый
  • GtkCalendar
  • GtkLayout
  • GtkPlug
  • GtkSocket
1.2.10
Старая версия, больше не поддерживается:2.02002-03-11 [51]GОбъект

Полная поддержка UTF-8

2.0.9
Старая версия, больше не поддерживается:2.22002-12-22 [52]Поддержка нескольких головок2.2.4
Старая версия, больше не поддерживается:2.42004-03-16 [53]Новые виджеты:
  • GtkFileChooser
  • GtkComboBox
  • GtkComboBoxEntry
  • GtkExpander
  • GtkFontButton
  • GtkColorButton
2.4.14
Старая версия, больше не поддерживается:2.62004-12-16 [54]Новые виджеты:
  • GtkIconView
  • GtkAboutDialog
  • GtkCellView

Последняя поддержка Windows 98 / Me

2.6.10
Старая версия, больше не поддерживается:2.82005-08-13 [55]Большинство виджетов визуализируются Cairo2.8.20
Старая версия, больше не поддерживается:2.102006-07-03 [56]Новые виджеты:
  • GtkStatusIcon
  • GtkAssistant
  • GtkLinkButton
  • GtkRecentChooser

Поддержка печати: GtkPrintOperation

2.10.14
Старая версия, больше не поддерживается:2.122007-09-14 [57]GtkBuilder2.12.12
Старая версия, больше не поддерживается:2.142008-09-04 [58]Поддержка загрузки JPEG 20002.14.7
Старая версия, больше не поддерживается:2.162009-03-13 [59]Новый виджет: GtkOrientable

Предупреждение о Caps Lock при вводе пароля

Улучшения в GtkScale, GtkStatusIcon, GtkFileChooser

2.16.6
Старая версия, больше не поддерживается:2.182009-09-23 [60]Новый виджет: GtkInfoBar

Улучшение выбора файлов, печать

Чтобы удалить большую часть необходимого IPC между приложением X11 и сервером X11, GDK переписан (в основном Александром Ларссоном) для использования «клиентских окон», т. е. GdkWindow, которое должно быть у каждого виджета, теперь принадлежит клиенту.

2.18.9
Старая версия, больше не поддерживается:2.202010-03-23 ​​[61]Новые виджеты:
  • GtkSpinner
  • GtkToolPalette
  • GtkOffscreenWindow

Улучшения в выборе файлов, обработке клавиатуры, GDK

Данные интроспекции теперь включены в GTK

2.20.1
Старая версия, больше не поддерживается:2.222010-09-23 [62]GdkPixbuf перемещен в отдельный модуль

Большинство рисунков GDK основаны на Каире

Многие внутренние данные теперь являются конфиденциальными и могут быть запечатаны в рамках подготовки к GTK 3.

2.22.1
Старая версия, больше не поддерживается:2.242011-01-30 [63]Новый виджет: GtkComboBoxText, который ранее был пользовательским виджетом, поставляемым с Gtkmm

Сервер печати CUPS может отправлять задания печати в формате PDF.

GtkBuilder получил поддержку текстовых тегов и кнопок инструментов меню, а также было добавлено множество исправлений аннотаций интроспекции.

Переход с GTK+ 2.x на GTK+ 3

2.24.33
(2020-12-21) [64]
Старая версия, больше не поддерживается:3.02011-02-10 [65]Разработка и проектирование версии инструментария GTK 3 начались в феврале 2009 года во время GTK Theming Hackfest, проходившего в Дублине [66]
  • Первый проект дорожной карты развития был опубликован 9 апреля 2009 года [67]

Завершено в основном по проекту Ридли

  • попытка объединить несколько библиотек, которые были внешними по отношению к GTK+
  • включая libgnome, libgnomeui, libgnomeprint22, libgnomeprintui22, libglade, libgnomecanvas, libegg, libeel, gtkglext, и libsexy[68]

Весь рендеринг выполнен с помощью Cairo.

GDK стал более независимым от X11

XInput2, API темы, основан на каскадных таблицах стилей (CSS), что ухудшает достижимую производительность для частоты кадров 60 Гц

3.0.12
Старая версия, больше не поддерживается:3.22011-09-25 [69]Новые виджеты:
  • GtkLockButton
  • GtkOverlay

Новый диалог выбора шрифта

Новые экспериментальные бэкэнды:

3.2.4
Старая версия, больше не поддерживается:3.42012-03-26 [70]Поддержка меню в GtkApplication

Новый выбор цвета

Добавлена ​​поддержка сенсорных устройств

Добавлена ​​поддержка плавной прокрутки

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

Улучшена поддержка macOS

Это первая версия GTK 3, которая хорошо работает на Windows.

Бэкэнд Wayland обновлен до текущей версии Wayland

Кнопки вращения получили новый вид

Доступность: переписана поддержка доступности TreeView.

Более полная поддержка тем CSS

3.4.4
Старая версия, больше не поддерживается:3.62012-09-24 [71]Новые виджеты:
  • GtkSearchEntry
  • GtkMenuButton
  • GtkLevelBar

Вертикальные кнопки вращения

CSS-анимации, размытие теней

Поддержка кроссфейдинга и переходов в темах

3.6.5
Старая версия, больше не поддерживается:3.82013-03-25 [72]Стабильная поддержка Wayland 1.0

Поддержка сервера broadwayd

Улучшенная тематика

Лучшее управление геометрией

Улучшения сенсорного экрана

Поддержка оконного менеджера для протокола синхронизации кадров

Добавлен GdkFrameClock [73]

3.8.9
Старая версия, больше не поддерживается:3.102013-09-23 [74]Новые виджеты:
  • GtkHeaderBar
  • GtkPlacesБоковая панель
  • GtkStack
  • GtkStackSwitcher
  • GtkRevealer
  • GtkSearchBar
  • GtkListBox

Поддержка Wayland 1.2

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

Добавлен:

  • клиентские украшения
  • поддержка масштабированного вывода на экранах с высоким разрешением
  • режим точной настройки для прокрутки

Удаленный:

  • поддержка протокола Motif DND
  • поддержка нескольких экранов на дисплей
  • gdk_window_get_display
  • gtk_widget_push_composite_child

Отрывные пункты меню, а также множество настроек GTK

Современная модель чертежа GTK

3.10.9
Старая версия, больше не поддерживается:3.122014-03-25 [75]Декорации на стороне клиента [76]

Поддержка Wayland 1.5

Новый виджет: GtkPopover (альтернатива меню и диалогам)

3.12.2
Старая версия, больше не поддерживается:3.142014-09-22 [77]Представлен GtkInspector (копия gtkparasite) [78] [79]

Улучшена поддержка жестов / объединена функция multi-touch [80] [81]

Устаревшее: [82]

  • GtkРазное
  • GtkAlignment
  • GtkArrow
  • GdkColor
  • Регионы стиля
  • поддержка файлов .icon
  • gdk_window_flush
  • рисование за пределами области начала/конца рисования

Большинство виджетов преобразованы для внутреннего использования жестов

Wayland поддерживает классический режим GNOME Shell [83]

3.14.15
Старая версия, больше не поддерживается:3.162015-03-22 [84]GDK поддерживает рендеринг окон с использованием OpenGL для X11 и Wayland с использованием libepoxy

Новые виджеты:

  • GtkGLArea
  • GtkStackSidebar
  • GtkModelButton
  • GtkPopoverMenu

Прокрутка переработана ( полоса прокрутки скрыта по умолчанию [85] )

Экспериментальный бэкэнд Мира [86]

3.16.7
Старая версия, больше не поддерживается:3.182015-09-23 [87]Добавить инфраструктуру узла CSS

Больше обновлений дизайна FileChooser и улучшенный поиск FileChooser

Прекращена поддержка Windows XP

Поддержка моделей для списков и потоковых полей

Кинетическая прокрутка тачпада

Жесты тачпада (Wayland)

утилита gtk-builder-tool

Окна только для вывода

3.18.9
Старая версия, больше не поддерживается:3.202016-03-21 [88]Дальнейшая интеграция узлов CSS [89]

Перетащите и опустите вниз в GDK

Новый виджет: GtkShortcutsWindow (показывает сочетания клавиш и жесты приложения)

3.20.10
Старая версия, больше не поддерживается: 3.222016-09-21 [90]Последний релиз 3.x [26]

Поддержка планшетов Wayland объединена, [91] поддержка графических планшетов считается завершенной [92]

GTK 3.22 будет таким же стабильным (и, следовательно, «скучным»), как и GTK 2 [33] [93] [94]

для 3+ лет
3.22.29
Старая версия, которая все еще поддерживается: 3.242018-09-03 [95]3.22 должна была стать последней версией серии GTK 3
  • Версия 3.24 была выпущена в основном для облегчения перехода с GTK+ 3.x на GTK+ 4.

Повышение зависимости – требуется:

  • либэпокси 1.4
  • панго 1.41

Новые функции выбора шрифта:

  • разрешить настройку функций шрифта OpenType
  • показать примеры возможностей шрифта OpenType
  • разрешить выбор вариаций шрифтов OpenType
  • поддержка уровней детализации для выбора

Новые возможности эмодзи:

  • поддержка всплывающего окна для завершения ввода Emoji
  • сбросьте сочетание клавиш Ctrl-Shift-e

Другие новые API: gdk_window_move_to_rect

Wayland: использование анонимной разделяемой памяти на FreeBSD

Контроллеры событий, портированные из GTK 4:

  • GtkEventControllerScroll
  • GtkEventControllerMotion
  • GtkEventControllerKey
  • GtkGestureStylus

Отменить поддержку нескольких API, исчезнувших в GTK 4:

  • Цепочки фокуса в GtkContainer
  • чувствительность шагового двигателя в GtkRange
3.23.0
3.23.1
3.23.2
3.23.3
3.24.0
...3.24.5
3.24.14
...

3.24.29

Старая версия, больше не поддерживается:3.902017-03-31 [96]GTK Scene Graph Kit (GSK) объединен [6]

Удалить все API, помеченные как устаревшие.

Тяжелое развитие

  • сломать API и ABI [93] [94]

Новый Vulkan -рендерер дополняет старый Cairo -рендерер [97]

3.89.1

3.89.2
3.89.4
3.89.5
3.90

Старая версия, больше не поддерживается:3.922017-10-18 [98] [99]Поскольку GNOME 3.26 был выпущен уже 13 сентября 2017 года, [100] он не был основан на GTK 3.92.

GNU autotools был заменен на Meson .

3.91.0

3.91.1
3.91.2
3.92.1

Старая версия, больше не поддерживается:3.942018-06-26 [101]3.93
  • GdkScreen, GdkVisual удалены
  • GdkDeviceManager заменен на GdkSeat
  • Обработка буфера обмена перенесена из GTK в GDK.
  • GdkEvent преобразуется в непрозрачный GObject
  • Рендерер GL в GSK в значительной степени завершен и теперь находится на одном уровне с рендерером Vulkan
  • использование GdkPixbuf в API сокращено
    • и объект GskTexture перемещается в GDK как GdkTexture, чтобы занять его место
  • бэкэнд Wayland теперь реализует протокол декорирования на стороне сервера KDE
  • Broadway портирован на GSK.

GdkWindow переименован в GdkSurface

Новая абстракция для рисуемого контента: GdkPaintable

Поддерживается отображение медиа с помощью:

  • GtkВидео
  • GtkMediaFile
  • GtkMediaStream
  • GtkMediaControls
3,93
3,94,0
Старая версия, больше не поддерживается:3.962019-05-07 [102]Команда gtk4-builder-tool simplify получила возможность конвертировать файлы пользовательского интерфейса GTK3 в GTK4; хотя в AMTK меню, панели инструментов или другие объекты, такие как GtkShortcutsWindow, создаются программно (не с помощью файла *.ui), а с помощью удобных API. [103]--3to4

GtkWidget теперь может использовать GtkLayoutManager для распределения размера

  • Менеджеры макетов могут опционально использовать дочерние элементы макета, содержащие свойства макета.
  • В настоящее время доступны GtkBinLayout, GtkBoxLayout, GtkGridLayout, GtkFixedLayout и GtkCustomLayout
  • В будущем появятся новые реализации менеджера макетов.

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

События были упрощены и используются только для ввода:

  • события expose были заменены сигналом GdkSurface::render
  • события конфигурации были заменены сигналом GdkSurface::size-changed
  • События карты были заменены свойством GdkSurface::mapped
  • gdk_event_handler_set был заменен сигналом GdkSurface::event
  • ключевые события больше не содержат строку
  • события на неотображенных виджетах игнорируются
3,93
3,94,0
Старая версия, больше не поддерживается:3.982020-02-10 [102]
  • Улучшения производительности
  • Рефакторинг методом перетаскивания
  • Перемещение GDK в сторону Уэйленда
  • Перемещения
    • GtkMenu, GtkToolbar и подобные классы были заменены на GMenu.
  • Дополнения
    • Выбор эмодзи
    • Текстовые виджеты теперь имеют стеки отмены
    • Новый менеджер макетов [104]
3.96.0
Старая версия, больше не поддерживается:3.99.02020-07-31 [105]
  • Представлен преемник Accessibility Toolkit (ATK) . [106] Новый подход будет реализовывать WAI-ARIA (Инициатива по обеспечению доступности Консорциума Всемирной паутины (W3C) – Доступные многофункциональные интернет-приложения).
  • Обновлены заголовки для использования стандартных типов C вместо типов GLib .
  • Новые виджеты
  • Исправления и улучшения [105]
3.99.4
Старая версия, больше не поддерживается: 4.02020-12-16 [107]4.0.3
Старая версия, больше не поддерживается: 4.22021-03-30 [108]4.2.1
Старая версия, больше не поддерживается: 4.42021-08-23 [109]4.4.1
Старая версия, больше не поддерживается: 4.62021-12-30 [110]4.6.9
Старая версия, больше не поддерживается: 4.82022-09-06 [111]4.8.3
Старая версия, больше не поддерживается: 4.102023-03-04 [112]GtkFileChooser устарел (используйте GtkFileDialog) [113]4.10.5
Старая версия, больше не поддерживается: 4.122023-08-05 [114]4.12.5
Старая версия, больше не поддерживается: 4.142024-03-12 [115]4.14.6
Последняя версия: 4.162024-06-09 [116]4.16.12

Смотрите также

Ссылки

  1. ^ "Проект GTK с открытым исходным кодом на Open Hub: страница языков". www.openhub.net . Архивировано из оригинала 28 марта 2019 г. . Получено 28 марта 2019 г. .
  2. ^ «Краткое описание того, как родился GTK». www.gtk.org . Архивировано из оригинала 9 июня 2023 г. . Получено 5 июля 2023 г. .
  3. ^ ab Bassi, Emmanuele (6 февраля 2019 г.). "Project rename to "GTK"". mail.gnome.org . GNOME mailinglist. Архивировано из оригинала 7 ноября 2020 г. . Получено 7 февраля 2019 г. .
  4. ^ Команда GTK+. "Возможности GTK+". Архивировано из оригинала 25 мая 2019 г. Получено 8 сентября 2014 г.
  5. ^ "Документация". www.x.org . Архивировано из оригинала 21 декабря 2019 г. Получено 22 ноября 2019 г.
  6. ^ ab "Projects/GTK/Roadmap - GNOME Wiki!". wiki.gnome.org . Архивировано из оригинала 22 мая 2019 г. . Получено 22 ноября 2019 г. .
  7. ^ "GTK 4.0 – Блог разработки GTK". 16 декабря 2020 г. Архивировано из оригинала 28 мая 2023 г. Получено 18 октября 2021 г.
  8. ^ "Robin Rowe / GTK1 · GitLab". GitLab . Архивировано из оригинала 9 марта 2023 г. . Получено 22 февраля 2023 г. .
  9. ^ "GTK+ 3 Reference Manual". Архивировано из оригинала 23 июня 2021 г. Получено 15 июля 2017 г.
  10. ^ ab "Использование GTK+ с Broadway". Разработчик GNOME . GNOME. Архивировано из оригинала 14 июня 2021 г. Получено 6 марта 2018 г.
  11. ^ ab "Broadway - GitHub symbiose/symbiose Wiki". GitHub . Архивировано из оригинала 28 июня 2023 г. Получено 6 марта 2018 г.
  12. ^ "GTK+ будет использовать Cairo Vector Engine". 5 февраля 2005 г. Получено 27 декабря 2009 г.
  13. ^ "Gtk: Переход с GTK 2.x на GTK 3". docs.gtk.org . Архивировано из оригинала 26 мая 2023 г. . Получено 16 июня 2022 г. Вся отрисовка в GTK 3 выполняется через Cairo.
  14. ^ "Matthias Clasen DevConf.cz 2018 talk about GTK+ 4" (PDF) . 26 января 2018 г. Архивировано (PDF) из оригинала 22 апреля 2024 г. Получено 9 марта 2018 г.
  15. ^ Команда GTK+. "GTK+ Language Bindings". www.gtk.org . Архивировано из оригинала 25 мая 2019 г. Получено 3 июня 2017 г.
  16. ^ GUADEC. «Камбалаче: дорога к версии 1.0».
  17. ^ "glade - man pages section 1: User Commands". docs.oracle.com . Получено 11 сентября 2024 г. .
  18. ^ "Debian -- Результаты поиска пакетов -- gazpacho". packages.debian.org . Архивировано из оригинала 28 июня 2023 г. . Получено 22 ноября 2019 г. .
  19. ^ "Nothing-personal - A development site for Crow Designer, GuiLoader and Rally - Google Project Hosting". Архивировано из оригинала 24 января 2013 г. Получено 17 февраля 2014 г.
  20. ^ "GTK Inspector". Документация разработчика GNOME . Получено 14 сентября 2024 г.
  21. ^ "Введение в GtkInspector". 15 мая 2014 г. Архивировано из оригинала 17 мая 2014 г. Получено 17 мая 2014 г.
  22. ^ "Еще одно обновление GtkInspector". 11 июля 2014 г. Архивировано из оригинала 14 июля 2014 г. Получено 13 июля 2014 г.
  23. ^ "GNOME Quick SWOT Analysis". Проект GNOME . Архивировано из оригинала 18 марта 2014 г. Получено 18 марта 2014 г.
  24. ^ "GNOME Languages". Ohloh . Black Duck Software. Архивировано из оригинала 22 мая 2014 г. Получено 22 мая 2014 г.
  25. ^ "О проекте". Европейская конференция пользователей и разработчиков GNOME ( GUADEC ). Архивировано из оригинала 4 октября 2011 г. Получено 3 декабря 2011 г.
  26. ^ ab "Версии и долгосрочная стабильность обещают в GTK". Блог разработчиков GTK. 1 сентября 2016 г. Архивировано из оригинала 21 сентября 2016 г. Получено 2 сентября 2016 г.
  27. ^ "GTK+ 3.24 предоставит некоторые новые функции в ожидании GTK4". www.phoronix.com . Архивировано из оригинала 22 апреля 2024 г. . Получено 2 апреля 2021 г. .
  28. ^ "GTK 4.0". Блог разработки GTK. 16 декабря 2020 г. Архивировано из оригинала 28 мая 2023 г. Получено 18 октября 2021 г.
  29. ^ "Вышла версия GIMP 2.99.2 для разработки". Новости Gimp. 6 ноября 2020 г. Архивировано из оригинала 10 апреля 2021 г. Получено 6 января 2022 г.
  30. ^ "Система сборки меняет основную ветку GTK". mail.gnome.org . Архивировано из оригинала 15 августа 2017 г. . Получено 29 октября 2018 г. .
  31. ^ «Как создать приложение Gtk+? – Мортен Велиндер». blogs.gnome.org . 23 июня 2014 г. Архивировано из оригинала 1 июля 2014 г. Получено 3 июня 2017 г.
  32. ^ mclasen (20 ноября 2015 г.). "Обновление GTK+". Goings on . Архивировано из оригинала 2 мая 2016 г. Получено 3 июня 2016 г.
  33. ^ ab "GUADEC2013: Бенджамин Отте рассказывает о GTK+". GUADEC . Архивировано из оригинала 6 марта 2014 г. Получено 5 марта 2014 г.
  34. ^ Aurélien Gâteau (3 октября 2021 г.). «История названия Gwenview». agateau.com . Архивировано из оригинала 22 апреля 2024 г. . Получено 15 декабря 2024 г. . Да, вы правильно прочитали! Gwenview начинал свою жизнь как приложение GTK+!
  35. ^ Ларабель, Майкл (12 января 2014 г.). «Самая большая проблема с GTK и что хорошего делает Qt». Phoronix . Архивировано из оригинала 1 июля 2016 г. Получено 10 сентября 2014 г.
  36. Hong Jen Yee (26 марта 2013 г.). "PCManFM Qt 0.1.0 released". Архивировано из оригинала 7 июня 2013 г. Получено 10 сентября 2014 г.
  37. ^ "Audacious - An Advanced Audio Player". audacious-media-player.org . Архивировано из оригинала 28 июля 2019 г. . Получено 22 ноября 2019 г. .
  38. ^ Линдгрен, Джон (6 мая 2014 г.). «Уродливые украшения окон и как их исправить (GTK 3.12)». Архивировано из оригинала 13 октября 2014 г. Получено 21 октября 2014 г.
  39. Gerald Combs (15 октября 2013 г.). «Мы переходим на Qt». Архивировано из оригинала 19 октября 2013 г. Получено 19 августа 2015 г.
  40. ^ "GTK+". WxWidgets в сравнении с другими наборами инструментов . Архивировано из оригинала 5 октября 2007 г. Получено 28 августа 2007 г.
  41. ^ "LinuxWorld - Куда делись Спенсер Кимбалл и Питер Мэттис?". Архивировано из оригинала 17 апреля 1999 г. Получено 19 августа 2013 г.
  42. ^ «Что такое + в GTK+?». 2011. Архивировано из оригинала 26 марта 2012 г. Получено 18 марта 2014 г.
  43. ^ https://mail.gnome.org/archives/gtk-devel-list/2002-March/msg00161.html .
  44. ^ https://mail.gnome.org/archives/gtk-devel-list/2011-February/msg00020.html .
  45. ^ "Переименовать некоторые ссылки на GTK+ (d080be3e) · Коммиты · GNOME / gtk". gitlab.gnome.org . 4 февраля 2019 г. Архивировано из оригинала 25 февраля 2021 г. Получено 5 февраля 2019 г.
  46. ^ "HP OpenVMS systems - GTK+". Архивировано из оригинала 13 июля 2018 г. Получено 12 июля 2018 г.
  47. ^ "HP OpenVMS systems - GTK+". Архивировано из оригинала 13 июля 2018 г. Получено 12 июля 2018 г.
  48. ^ Clasen, Matthias. "GTK+ 4 Status Update" (PDF) . Fedora People . Архивировано (PDF) из оригинала 22 апреля 2024 г. . Получено 22 апреля 2024 г. .
  49. ^ Амундсон, Шон Т. (13 апреля 1998 г.). "АНОНС: GTK+ 1.0.0 Released!". GNOME Mail Services (список рассылки). Архивировано из оригинала 12 марта 2019 г. . Получено 20 мая 2019 г. .
  50. ^ Амундсон, Шон Т. (25 февраля 1999 г.). "АНОНС: GTK+ и GLib 1.2.0 выпущены". GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  51. Тейлор, Оуэн (11 марта 2002 г.). «GTK+-2.0.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  52. Тейлор, Оуэн (22 декабря 2002 г.). «GTK+-2.2.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  53. Тейлор, Оуэн (16 марта 2004 г.). «GTK+-2.4.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  54. ^ Clasen, Matthias (16 декабря 2004 г.). «GTK+-2.6.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  55. ^ Clasen, Matthias (13 августа 2005 г.). «GTK+ 2.8.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  56. ^ Clasen, Matthias (3 июля 2006 г.). «GTK+ 2.10 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 22 января 2021 г. . Получено 20 мая 2019 г. .
  57. ^ Clasen, Matthias (14 сентября 2007 г.). "GTK+ 2.12 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  58. ^ Clasen, Matthias (4 сентября 2008 г.). "GTK+ 2.14.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
  59. ^ Clasen, Matthias (13 марта 2009 г.). "GTK+ 2.16.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 3 июня 2019 г. . Получено 20 мая 2019 г. .
  60. ^ Clasen, Matthias (23 сентября 2009 г.). "GTK+ 2.18.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 3 июня 2019 г. . Получено 20 мая 2019 г. .
  61. ^ Clasen, Matthias (23 марта 2010 г.). "GTK+ 2.20.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  62. ^ Clasen, Matthias (23 сентября 2010 г.). "GTK+ 2.22.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  63. ^ Clasen, Matthias (20 января 2011 г.). "GTK+ 2.24.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 8 мая 2019 г. . Получено 20 мая 2019 г. .
  64. ^ "Теги · GNOME / gtk · GitLab". GitLab . 21 декабря 2020 г. Архивировано из оригинала 4 декабря 2023 г. Получено 18 октября 2023 г.
  65. ^ Clasen, Matthias (10 февраля 2011 г.). "GTK+ 3.0.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 12 марта 2019 г. . Получено 20 мая 2019 г. .
  66. ^ "Gtk+ 3.0 Theming API Hackfest". Silicon Island . Архивировано из оригинала 17 июля 2011 г. Получено 3 июня 2017 г.
  67. ^ "Gtk+ 3 roadmap draft". Архивировано из оригинала 12 апреля 2009 г. Получено 3 июня 2017 г.
  68. ^ "Attic/ProjectRidley - GNOME Wiki!". wiki.gnome.org . Архивировано из оригинала 4 марта 2016 г. Получено 29 марта 2014 г.
  69. ^ Clasen, Matthias (25 сентября 2011 г.). "GTK+ 3.2.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  70. ^ Clasen, Matthias (26 марта 2012 г.). "GTK+ 3.4.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  71. ^ Clasen, Matthias (24 сентября 2012 г.). "GTK+ 3.6.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  72. ^ Clasen, Matthias (25 марта 2013 г.). "GTK+ 3.8.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 3 марта 2016 г. Получено 20 мая 2019 г.
  73. ^ "Frame clock: GDK 3 Reference Manual". developer.gnome.org . Архивировано из оригинала 14 апреля 2017 г. . Получено 13 апреля 2017 г. .
  74. ^ Clasen, Matthias (23 сентября 2013 г.). "GTK+ 3.10.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  75. ^ Clasen, Matthias (25 марта 2014 г.). "GTK+ 3.12 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  76. ^ "Декорации на стороне клиента в темах | Goings on". 5 декабря 2013 г. Архивировано из оригинала 19 сентября 2015 г. Получено 31 декабря 2015 г.
  77. ^ Clasen, Matthias (22 сентября 2014 г.). "GTK+ 3.14.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  78. ^ Маттиас Класен (15 мая 2014 г.). "Запись в блоге автора GtkInspector". Архивировано из оригинала 17 мая 2014 г. Получено 17 мая 2014 г.
  79. ^ "GtkInspector в GNOME wiki". 15 мая 2014 г. Архивировано из оригинала 24 мая 2014 г. Получено 17 мая 2014 г.
  80. ^ "Объединение жестов в 3.14". 23 мая 2014 г. Архивировано из оригинала 14 сентября 2016 г. Получено 23 мая 2014 г.
  81. ^ "RFC: gestures". 4 марта 2014 г. Архивировано из оригинала 24 мая 2014 г. Получено 23 мая 2014 г.
  82. ^ "gtk+ 3.13.2". 27 мая 2014 г. Архивировано из оригинала 29 мая 2014 г. Получено 28 мая 2014 г.
  83. ^ "gtk+ 3.13.3". 24 июня 2014 г. Архивировано из оригинала 15 декабря 2014 г. Получено 25 июня 2014 г.
  84. ^ Clasen, Matthias (22 марта 2015 г.). "GTK+ 3.16.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  85. онлайн, Хайзе (25 марта 2015 г.). «Linux-Desktop: Neues Gnome zeigt Nachrichten oben». Хайз онлайн . Архивировано из оригинала 25 июня 2016 года . Проверено 3 июня 2017 г.
  86. ^ "GTK+ 3.16.0 released". mail.gnome.org . Архивировано из оригинала 7 апреля 2016 г. Получено 3 июня 2017 г.
  87. ^ Нестор, Мариус (24 сентября 2015 г.). «GTK+ 3.18.0 официально выпущен как часть среды рабочего стола GNOME 3.18». Softpedia . Архивировано из оригинала 25 мая 2019 г. . Получено 25 мая 2019 г. .
  88. ^ Clasen, Matthias (21 марта 2016 г.). "GTK+ 3.20". GNOME Mail Services (список рассылки). Архивировано из оригинала 12 марта 2019 г. . Получено 20 мая 2019 г. .
  89. ^ "GTK+ 3.20 – Style Classes and Element Names". 20 ноября 2015 г. Архивировано из оригинала 5 марта 2016 г. Получено 18 декабря 2015 г.
  90. ^ Clasen, Matthias (21 сентября 2016 г.). "GTK+ 3.22 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  91. ^ "Поддержка планшета GTK+ Wayland объединена – Карлос Гарначо". 6 апреля 2016 г. Архивировано из оригинала 16 апреля 2016 г. Получено 8 апреля 2016 г.
  92. ^ "hutterer input". www.x.org . Архивировано из оригинала 23 сентября 2016 г. Получено 23 сентября 2016 г.
  93. ^ ab "Gtk 4.0 не будет стабильна до Gtk 4.6". 13 июня 2016 г. Архивировано из оригинала 23 июня 2016 г. Получено 15 июня 2016 г.
  94. ^ ab "Gtk 5.0 не будет стабильной до Gtk 5.6". 14 июня 2016 г. Архивировано из оригинала 23 июня 2016 г. Получено 15 июня 2016 г.
  95. ^ Clasen, Matthias (3 сентября 2018 г.). "gtk+ 3.24.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
  96. ^ Clasen, Matthias (31 марта 2017 г.). "gtk+ 3.90.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 29 декабря 2017 г. . Получено 20 мая 2019 г. .
  97. ^ "Коммиты · master · GNOME / gtk". GitLab . Архивировано из оригинала 22 июня 2020 г. Получено 22 ноября 2019 г.
  98. ^ Clasen, Matthias (18 октября 2017 г.). "gtk+ 3.92.1". GNOME Mail Services (список рассылки). Архивировано из оригинала 29 декабря 2017 г. . Получено 20 мая 2019 г. .
  99. ^ Clasen, Matthias (23 октября 2017 г.). "GTK+ 3.92". Блог разработки GTK . Архивировано из оригинала 25 мая 2019 г. Получено 25 мая 2019 г.
  100. ^ "GNOME 3.26 Released". 13 сентября 2017 г. Архивировано из оригинала 16 марта 2021 г. Получено 19 октября 2017 г.
  101. ^ Clasen, Matthias (26 июня 2018 г.). "gtk+ 3.94.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 5 июля 2018 г. Получено 20 мая 2019 г.
  102. ^ ab Clasen, Matthias (7 мая 2019 г.). "gtk 3.96". GNOME Mail Services (список рассылки). Архивировано из оригинала 28 мая 2019 г. . Получено 28 мая 2019 г. .
  103. ^ "Представляем amtk". Архивировано из оригинала 22 июня 2020 г. Получено 4 мая 2020 г.
  104. ^ Clasen, Matthias (13 февраля 2020 г.). "GTK 3.98". Блог разработки GTK+ . Архивировано из оригинала 18 февраля 2020 г. Получено 18 февраля 2020 г.
  105. ^ ab Clasen, Matthias (9 июня 2021 г.). "gtk 4.3.1". FTP-релизы (список рассылки). Архивировано из оригинала 10 июля 2021 г. . Получено 10 июля 2021 г. .
  106. ^ "Emmanuele Bassi / guadec-2020". GitLab . Архивировано из оригинала 15 августа 2020 г. Получено 12 сентября 2020 г.
  107. ^ Clasen, Matthias (16 декабря 2020 г.). "gtk 4.0.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 28 октября 2021 г. . Получено 16 декабря 2020 г. .
  108. ^ Clasen, Matthias (30 марта 2021 г.). "gtk 4.2.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 27 октября 2021 г. . Получено 30 марта 2021 г. .
  109. ^ Clasen, Matthias (23 августа 2021 г.). "gtk 4.4.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 24 августа 2021 г. . Получено 23 января 2022 г. .
  110. ^ Clasen, Matthias (30 декабря 2021 г.). "gtk 4.6.0". FTP-релизы (список рассылки). Архивировано из оригинала 23 января 2022 г. . Получено 23 января 2022 г. .
  111. ^ Clasen, Matthias (6 сентября 2022 г.). "gtk 4.8.0". Архивировано из оригинала 11 января 2023 г. Получено 11 января 2023 г.
  112. ^ "NEWS · 4.10.1 · GNOME / gtk · GitLab". GitLab . 13 марта 2023 г. Архивировано из оригинала 19 апреля 2023 г. Получено 19 апреля 2023 г.
  113. ^ "Об устаревании – Блог разработки GTK". 30 октября 2022 г. Архивировано из оригинала 28 февраля 2024 г. Получено 21 апреля 2024 г.
  114. ^ Clasen, Matthias (28 июля 2023 г.). "НОВОСТИ · 4.12.0 · GNOME / gtk · GitLab". GitLab . Получено 4 января 2025 г. .
  115. ^ Clasen, Matthias (12 марта 2024 г.). "НОВОСТИ · 4.14.0 · GNOME / gtk · GitLab". GitLab . Получено 4 января 2025 г. .
  116. ^ Clasen, Matthias (7 сентября 2024 г.). "НОВОСТИ · 4.16.0 · GNOME / gtk · GitLab". GitLab . Получено 4 января 2025 г. .

Библиография

  • Краузе, Эндрю (23 апреля 2007 г.), Основы разработки GTK+ (1-е изд.), Apress , ISBN 978-1-59059-793-4
  • Райт, Питер (15 мая 2000 г.), Начало работы с GTK+ и GNOME (1-е изд.), Peer Information , ISBN 978-1-86100-381-2
  • Логан, Сид (6 сентября 2001 г.), Gtk+ Programming in C (1-е изд.), Prentice Hall , ISBN 978-0-13-014264-1, архивировано из оригинала 30 сентября 2012 г. , извлечено 15 августа 2009 г.
  • Официальный сайт
Взято с "https://en.wikipedia.org/w/index.php?title=GTK&oldid=1271693355"