Команда GTK регулярно выпускает новые версии. [6] GTK 4 и GTK 3 поддерживаются, в то время как GTK 2 больше не поддерживается . [7] GTK1 независимо поддерживается проектом CinePaint . [8]
Архитектура программного обеспечения
Этот раздел необходимо обновить . Пожалуйста , помогите обновить эту статью, чтобы отразить недавние события или новую доступную информацию. ( Май 2024 )
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 поддерживает различные бэкэнды, которые предоставляют различные способы отображения приложений GTK в зависимости от системы и среды. Примеры бэкэндов GTK:
Wayland – используется с сервером отображения Wayland в системах Linux и является современной заменой X11.
X11 — используется по умолчанию в системах Linux, использующих сервер отображения X.Org.
Lazarus (в Linux по умолчанию взаимодействует с GTK 2)
Инспектор ГТК
GTK Inspector — это встроенный интерактивный инструмент отладки в GTK, позволяющий разработчикам проверять и изменять элементы пользовательского интерфейса, тестировать изменения CSS и анализировать структуру виджетов в реальном времени. Его можно включить с помощью сочетаний Control + Shift + Iклавиш Control + Shift + Dили или установив GTK_DEBUG=interactiveпеременную окружения. [20] Он был представлен в версии GTK 3.14. [21] [22]
Функции
Интерактивная отладка
Тестирование и модификация CSS в реальном времени
Увеличение виджета для детального осмотра
Анализ структуры пользовательского интерфейса и проверка свойств объекта
Настраиваемые параметры отображения с помощью переменных среды
Подробная проверка объекта (тип, состояние, свойства, CSS, действия и т. д.)
Разработчики и пользователи 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]
Использовать
Приложения
Вот некоторые известные приложения, использующие 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
Для подсветки синтаксиса есть 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.
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]
Улучшения в GtkScale, GtkStatusIcon, GtkFileChooser
2.16.6
Старая версия, больше не поддерживается:2.18
2009-09-23 [60]
Новый виджет: GtkInfoBar
Улучшение выбора файлов, печать
Чтобы удалить большую часть необходимого IPC между приложением X11 и сервером X11, GDK переписан (в основном Александром Ларссоном) для использования «клиентских окон», т. е. GdkWindow, которое должно быть у каждого виджета, теперь принадлежит клиенту.
2.18.9
Старая версия, больше не поддерживается:2.20
2010-03-23 [61]
Новые виджеты:
GtkSpinner
GtkToolPalette
GtkOffscreenWindow
Улучшения в выборе файлов, обработке клавиатуры, GDK
и объект GskTexture перемещается в GDK как GdkTexture, чтобы занять его место
бэкэнд Wayland теперь реализует протокол декорирования на стороне сервера KDE
Broadway портирован на GSK.
GdkWindow переименован в GdkSurface
Новая абстракция для рисуемого контента: GdkPaintable
Поддерживается отображение медиа с помощью:
GtkВидео
GtkMediaFile
GtkMediaStream
GtkMediaControls
3,93 3,94,0
Старая версия, больше не поддерживается:3.96
2019-05-07 [102]
Команда gtk4-builder-toolsimplify получила возможность конвертировать файлы пользовательского интерфейса 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
GtkMenu, GtkToolbar и подобные классы были заменены на GMenu.
Дополнения
Выбор эмодзи
Текстовые виджеты теперь имеют стеки отмены
Новый менеджер макетов [104]
3.96.0
Старая версия, больше не поддерживается:3.99.0
2020-07-31 [105]
Представлен преемник Accessibility Toolkit (ATK) . [106] Новый подход будет реализовывать WAI-ARIA (Инициатива по обеспечению доступности Консорциума Всемирной паутины (W3C) – Доступные многофункциональные интернет-приложения).
Обновлены заголовки для использования стандартных типов C вместо типов GLib .
^ "Проект GTK с открытым исходным кодом на Open Hub: страница языков". www.openhub.net . Архивировано из оригинала 28 марта 2019 г. . Получено 28 марта 2019 г. .
^ «Краткое описание того, как родился GTK». www.gtk.org . Архивировано из оригинала 9 июня 2023 г. . Получено 5 июля 2023 г. .
^ ab Bassi, Emmanuele (6 февраля 2019 г.). "Project rename to "GTK"". mail.gnome.org . GNOME mailinglist. Архивировано из оригинала 7 ноября 2020 г. . Получено 7 февраля 2019 г. .
^ Команда GTK+. "Возможности GTK+". Архивировано из оригинала 25 мая 2019 г. Получено 8 сентября 2014 г.
^ "Документация". www.x.org . Архивировано из оригинала 21 декабря 2019 г. Получено 22 ноября 2019 г.
^ ab "Projects/GTK/Roadmap - GNOME Wiki!". wiki.gnome.org . Архивировано из оригинала 22 мая 2019 г. . Получено 22 ноября 2019 г. .
^ "GTK 4.0 – Блог разработки GTK". 16 декабря 2020 г. Архивировано из оригинала 28 мая 2023 г. Получено 18 октября 2021 г.
^ "Robin Rowe / GTK1 · GitLab". GitLab . Архивировано из оригинала 9 марта 2023 г. . Получено 22 февраля 2023 г. .
^ "GTK+ 3 Reference Manual". Архивировано из оригинала 23 июня 2021 г. Получено 15 июля 2017 г.
^ ab "Использование GTK+ с Broadway". Разработчик GNOME . GNOME. Архивировано из оригинала 14 июня 2021 г. Получено 6 марта 2018 г.
^ ab "Broadway - GitHub symbiose/symbiose Wiki". GitHub . Архивировано из оригинала 28 июня 2023 г. Получено 6 марта 2018 г.
^ "GTK+ будет использовать Cairo Vector Engine". 5 февраля 2005 г. Получено 27 декабря 2009 г.
^ "Gtk: Переход с GTK 2.x на GTK 3". docs.gtk.org . Архивировано из оригинала 26 мая 2023 г. . Получено 16 июня 2022 г. Вся отрисовка в GTK 3 выполняется через Cairo.
^ "Matthias Clasen DevConf.cz 2018 talk about GTK+ 4" (PDF) . 26 января 2018 г. Архивировано (PDF) из оригинала 22 апреля 2024 г. Получено 9 марта 2018 г.
^ Команда GTK+. "GTK+ Language Bindings". www.gtk.org . Архивировано из оригинала 25 мая 2019 г. Получено 3 июня 2017 г.
^ GUADEC. «Камбалаче: дорога к версии 1.0».
^ "glade - man pages section 1: User Commands". docs.oracle.com . Получено 11 сентября 2024 г. .
^ "Debian -- Результаты поиска пакетов -- gazpacho". packages.debian.org . Архивировано из оригинала 28 июня 2023 г. . Получено 22 ноября 2019 г. .
^ "Nothing-personal - A development site for Crow Designer, GuiLoader and Rally - Google Project Hosting". Архивировано из оригинала 24 января 2013 г. Получено 17 февраля 2014 г.
^ "GTK Inspector". Документация разработчика GNOME . Получено 14 сентября 2024 г.
^ "Введение в GtkInspector". 15 мая 2014 г. Архивировано из оригинала 17 мая 2014 г. Получено 17 мая 2014 г.
^ "Еще одно обновление GtkInspector". 11 июля 2014 г. Архивировано из оригинала 14 июля 2014 г. Получено 13 июля 2014 г.
^ "GNOME Quick SWOT Analysis". Проект GNOME . Архивировано из оригинала 18 марта 2014 г. Получено 18 марта 2014 г.
^ "GNOME Languages". Ohloh . Black Duck Software. Архивировано из оригинала 22 мая 2014 г. Получено 22 мая 2014 г.
^ "О проекте". Европейская конференция пользователей и разработчиков GNOME ( GUADEC ). Архивировано из оригинала 4 октября 2011 г. Получено 3 декабря 2011 г.
^ ab "Версии и долгосрочная стабильность обещают в GTK". Блог разработчиков GTK. 1 сентября 2016 г. Архивировано из оригинала 21 сентября 2016 г. Получено 2 сентября 2016 г.
^ "GTK+ 3.24 предоставит некоторые новые функции в ожидании GTK4". www.phoronix.com . Архивировано из оригинала 22 апреля 2024 г. . Получено 2 апреля 2021 г. .
^ "GTK 4.0". Блог разработки GTK. 16 декабря 2020 г. Архивировано из оригинала 28 мая 2023 г. Получено 18 октября 2021 г.
^ "Вышла версия GIMP 2.99.2 для разработки". Новости Gimp. 6 ноября 2020 г. Архивировано из оригинала 10 апреля 2021 г. Получено 6 января 2022 г.
^ "Система сборки меняет основную ветку GTK". mail.gnome.org . Архивировано из оригинала 15 августа 2017 г. . Получено 29 октября 2018 г. .
^ «Как создать приложение Gtk+? – Мортен Велиндер». blogs.gnome.org . 23 июня 2014 г. Архивировано из оригинала 1 июля 2014 г. Получено 3 июня 2017 г.
^ mclasen (20 ноября 2015 г.). "Обновление GTK+". Goings on . Архивировано из оригинала 2 мая 2016 г. Получено 3 июня 2016 г.
^ ab "GUADEC2013: Бенджамин Отте рассказывает о GTK+". GUADEC . Архивировано из оригинала 6 марта 2014 г. Получено 5 марта 2014 г.
^ Aurélien Gâteau (3 октября 2021 г.). «История названия Gwenview». agateau.com . Архивировано из оригинала 22 апреля 2024 г. . Получено 15 декабря 2024 г. . Да, вы правильно прочитали! Gwenview начинал свою жизнь как приложение GTK+!
^ Ларабель, Майкл (12 января 2014 г.). «Самая большая проблема с GTK и что хорошего делает Qt». Phoronix . Архивировано из оригинала 1 июля 2016 г. Получено 10 сентября 2014 г.
↑ Hong Jen Yee (26 марта 2013 г.). "PCManFM Qt 0.1.0 released". Архивировано из оригинала 7 июня 2013 г. Получено 10 сентября 2014 г.
^ "Audacious - An Advanced Audio Player". audacious-media-player.org . Архивировано из оригинала 28 июля 2019 г. . Получено 22 ноября 2019 г. .
^ Линдгрен, Джон (6 мая 2014 г.). «Уродливые украшения окон и как их исправить (GTK 3.12)». Архивировано из оригинала 13 октября 2014 г. Получено 21 октября 2014 г.
↑ Gerald Combs (15 октября 2013 г.). «Мы переходим на Qt». Архивировано из оригинала 19 октября 2013 г. Получено 19 августа 2015 г.
^ "GTK+". WxWidgets в сравнении с другими наборами инструментов . Архивировано из оригинала 5 октября 2007 г. Получено 28 августа 2007 г.
^ "LinuxWorld - Куда делись Спенсер Кимбалл и Питер Мэттис?". Архивировано из оригинала 17 апреля 1999 г. Получено 19 августа 2013 г.
^ «Что такое + в GTK+?». 2011. Архивировано из оригинала 26 марта 2012 г. Получено 18 марта 2014 г.
^ "Переименовать некоторые ссылки на GTK+ (d080be3e) · Коммиты · GNOME / gtk". gitlab.gnome.org . 4 февраля 2019 г. Архивировано из оригинала 25 февраля 2021 г. Получено 5 февраля 2019 г.
^ "HP OpenVMS systems - GTK+". Архивировано из оригинала 13 июля 2018 г. Получено 12 июля 2018 г.
^ "HP OpenVMS systems - GTK+". Архивировано из оригинала 13 июля 2018 г. Получено 12 июля 2018 г.
^ Clasen, Matthias. "GTK+ 4 Status Update" (PDF) . Fedora People . Архивировано (PDF) из оригинала 22 апреля 2024 г. . Получено 22 апреля 2024 г. .
^ Амундсон, Шон Т. (13 апреля 1998 г.). "АНОНС: GTK+ 1.0.0 Released!". GNOME Mail Services (список рассылки). Архивировано из оригинала 12 марта 2019 г. . Получено 20 мая 2019 г. .
^ Амундсон, Шон Т. (25 февраля 1999 г.). "АНОНС: GTK+ и GLib 1.2.0 выпущены". GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
↑ Тейлор, Оуэн (11 марта 2002 г.). «GTK+-2.0.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
↑ Тейлор, Оуэн (22 декабря 2002 г.). «GTK+-2.2.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
↑ Тейлор, Оуэн (16 марта 2004 г.). «GTK+-2.4.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (16 декабря 2004 г.). «GTK+-2.6.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (13 августа 2005 г.). «GTK+ 2.8.0 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (3 июля 2006 г.). «GTK+ 2.10 released». GNOME Mail Services (список рассылки). Архивировано из оригинала 22 января 2021 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (14 сентября 2007 г.). "GTK+ 2.12 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (4 сентября 2008 г.). "GTK+ 2.14.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 10 августа 2020 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (13 марта 2009 г.). "GTK+ 2.16.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 3 июня 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (23 сентября 2009 г.). "GTK+ 2.18.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 3 июня 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (23 марта 2010 г.). "GTK+ 2.20.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (23 сентября 2010 г.). "GTK+ 2.22.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (20 января 2011 г.). "GTK+ 2.24.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 8 мая 2019 г. . Получено 20 мая 2019 г. .
^ "Теги · GNOME / gtk · GitLab". GitLab . 21 декабря 2020 г. Архивировано из оригинала 4 декабря 2023 г. Получено 18 октября 2023 г.
^ Clasen, Matthias (10 февраля 2011 г.). "GTK+ 3.0.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 12 марта 2019 г. . Получено 20 мая 2019 г. .
^ "Gtk+ 3.0 Theming API Hackfest". Silicon Island . Архивировано из оригинала 17 июля 2011 г. Получено 3 июня 2017 г.
^ "Gtk+ 3 roadmap draft". Архивировано из оригинала 12 апреля 2009 г. Получено 3 июня 2017 г.
^ "Attic/ProjectRidley - GNOME Wiki!". wiki.gnome.org . Архивировано из оригинала 4 марта 2016 г. Получено 29 марта 2014 г.
^ Clasen, Matthias (25 сентября 2011 г.). "GTK+ 3.2.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (26 марта 2012 г.). "GTK+ 3.4.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (24 сентября 2012 г.). "GTK+ 3.6.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (25 марта 2013 г.). "GTK+ 3.8.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 3 марта 2016 г. Получено 20 мая 2019 г.
^ "Frame clock: GDK 3 Reference Manual". developer.gnome.org . Архивировано из оригинала 14 апреля 2017 г. . Получено 13 апреля 2017 г. .
^ Clasen, Matthias (23 сентября 2013 г.). "GTK+ 3.10.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (25 марта 2014 г.). "GTK+ 3.12 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ "Декорации на стороне клиента в темах | Goings on". 5 декабря 2013 г. Архивировано из оригинала 19 сентября 2015 г. Получено 31 декабря 2015 г.
^ Clasen, Matthias (22 сентября 2014 г.). "GTK+ 3.14.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Маттиас Класен (15 мая 2014 г.). "Запись в блоге автора GtkInspector". Архивировано из оригинала 17 мая 2014 г. Получено 17 мая 2014 г.
^ "GtkInspector в GNOME wiki". 15 мая 2014 г. Архивировано из оригинала 24 мая 2014 г. Получено 17 мая 2014 г.
^ "Объединение жестов в 3.14". 23 мая 2014 г. Архивировано из оригинала 14 сентября 2016 г. Получено 23 мая 2014 г.
^ "RFC: gestures". 4 марта 2014 г. Архивировано из оригинала 24 мая 2014 г. Получено 23 мая 2014 г.
^ "gtk+ 3.13.2". 27 мая 2014 г. Архивировано из оригинала 29 мая 2014 г. Получено 28 мая 2014 г.
^ "gtk+ 3.13.3". 24 июня 2014 г. Архивировано из оригинала 15 декабря 2014 г. Получено 25 июня 2014 г.
^ Clasen, Matthias (22 марта 2015 г.). "GTK+ 3.16.0 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
↑ онлайн, Хайзе (25 марта 2015 г.). «Linux-Desktop: Neues Gnome zeigt Nachrichten oben». Хайз онлайн . Архивировано из оригинала 25 июня 2016 года . Проверено 3 июня 2017 г.
^ "GTK+ 3.16.0 released". mail.gnome.org . Архивировано из оригинала 7 апреля 2016 г. Получено 3 июня 2017 г.
^ Нестор, Мариус (24 сентября 2015 г.). «GTK+ 3.18.0 официально выпущен как часть среды рабочего стола GNOME 3.18». Softpedia . Архивировано из оригинала 25 мая 2019 г. . Получено 25 мая 2019 г. .
^ Clasen, Matthias (21 марта 2016 г.). "GTK+ 3.20". GNOME Mail Services (список рассылки). Архивировано из оригинала 12 марта 2019 г. . Получено 20 мая 2019 г. .
^ "GTK+ 3.20 – Style Classes and Element Names". 20 ноября 2015 г. Архивировано из оригинала 5 марта 2016 г. Получено 18 декабря 2015 г.
^ Clasen, Matthias (21 сентября 2016 г.). "GTK+ 3.22 released". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ "Поддержка планшета GTK+ Wayland объединена – Карлос Гарначо". 6 апреля 2016 г. Архивировано из оригинала 16 апреля 2016 г. Получено 8 апреля 2016 г.
^ "hutterer input". www.x.org . Архивировано из оригинала 23 сентября 2016 г. Получено 23 сентября 2016 г.
^ ab "Gtk 4.0 не будет стабильна до Gtk 4.6". 13 июня 2016 г. Архивировано из оригинала 23 июня 2016 г. Получено 15 июня 2016 г.
^ ab "Gtk 5.0 не будет стабильной до Gtk 5.6". 14 июня 2016 г. Архивировано из оригинала 23 июня 2016 г. Получено 15 июня 2016 г.
^ Clasen, Matthias (3 сентября 2018 г.). "gtk+ 3.24.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 25 мая 2019 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (31 марта 2017 г.). "gtk+ 3.90.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 29 декабря 2017 г. . Получено 20 мая 2019 г. .
^ "Коммиты · master · GNOME / gtk". GitLab . Архивировано из оригинала 22 июня 2020 г. Получено 22 ноября 2019 г.
^ Clasen, Matthias (18 октября 2017 г.). "gtk+ 3.92.1". GNOME Mail Services (список рассылки). Архивировано из оригинала 29 декабря 2017 г. . Получено 20 мая 2019 г. .
^ Clasen, Matthias (23 октября 2017 г.). "GTK+ 3.92". Блог разработки GTK . Архивировано из оригинала 25 мая 2019 г. Получено 25 мая 2019 г.
^ "GNOME 3.26 Released". 13 сентября 2017 г. Архивировано из оригинала 16 марта 2021 г. Получено 19 октября 2017 г.
^ Clasen, Matthias (26 июня 2018 г.). "gtk+ 3.94.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 5 июля 2018 г. Получено 20 мая 2019 г.
^ ab Clasen, Matthias (7 мая 2019 г.). "gtk 3.96". GNOME Mail Services (список рассылки). Архивировано из оригинала 28 мая 2019 г. . Получено 28 мая 2019 г. .
^ "Представляем amtk". Архивировано из оригинала 22 июня 2020 г. Получено 4 мая 2020 г.
^ Clasen, Matthias (13 февраля 2020 г.). "GTK 3.98". Блог разработки GTK+ . Архивировано из оригинала 18 февраля 2020 г. Получено 18 февраля 2020 г.
^ ab Clasen, Matthias (9 июня 2021 г.). "gtk 4.3.1". FTP-релизы (список рассылки). Архивировано из оригинала 10 июля 2021 г. . Получено 10 июля 2021 г. .
^ "Emmanuele Bassi / guadec-2020". GitLab . Архивировано из оригинала 15 августа 2020 г. Получено 12 сентября 2020 г.
^ Clasen, Matthias (16 декабря 2020 г.). "gtk 4.0.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 28 октября 2021 г. . Получено 16 декабря 2020 г. .
^ Clasen, Matthias (30 марта 2021 г.). "gtk 4.2.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 27 октября 2021 г. . Получено 30 марта 2021 г. .
^ Clasen, Matthias (23 августа 2021 г.). "gtk 4.4.0". GNOME Mail Services (список рассылки). Архивировано из оригинала 24 августа 2021 г. . Получено 23 января 2022 г. .
^ Clasen, Matthias (30 декабря 2021 г.). "gtk 4.6.0". FTP-релизы (список рассылки). Архивировано из оригинала 23 января 2022 г. . Получено 23 января 2022 г. .
^ Clasen, Matthias (6 сентября 2022 г.). "gtk 4.8.0". Архивировано из оригинала 11 января 2023 г. Получено 11 января 2023 г.
^ "NEWS · 4.10.1 · GNOME / gtk · GitLab". GitLab . 13 марта 2023 г. Архивировано из оригинала 19 апреля 2023 г. Получено 19 апреля 2023 г.
^ "Об устаревании – Блог разработки GTK". 30 октября 2022 г. Архивировано из оригинала 28 февраля 2024 г. Получено 21 апреля 2024 г.
^ Clasen, Matthias (28 июля 2023 г.). "НОВОСТИ · 4.12.0 · GNOME / gtk · GitLab". GitLab . Получено 4 января 2025 г. .
^ Clasen, Matthias (12 марта 2024 г.). "НОВОСТИ · 4.14.0 · GNOME / gtk · GitLab". GitLab . Получено 4 января 2025 г. .
^ Clasen, Matthias (7 сентября 2024 г.). "НОВОСТИ · 4.16.0 · GNOME / gtk · GitLab". GitLab . Получено 4 января 2025 г. .
Логан, Сид (6 сентября 2001 г.), Gtk+ Programming in C (1-е изд.), Prentice Hall , ISBN978-0-13-014264-1, архивировано из оригинала 30 сентября 2012 г. , извлечено 15 августа 2009 г.
Внешние ссылки
На Викискладе есть медиафайлы по теме GTK .
В Wikibook X Window Programming есть страница по теме: GTK+