El equipo GTK lanza nuevas versiones periódicamente. [6] GTK 4 y GTK 3 reciben mantenimiento, mientras que GTK 2 está al final de su vida útil . [7] GTK1 recibe mantenimiento independiente del proyecto CinePaint . [8]
Arquitectura de software
This section needs to be updated. Please help update this article to reflect recent events or newly available information.(May 2024)
La biblioteca GTK contiene un conjunto de elementos de control gráfico ( widgets ); la versión 3.22.16 contiene 186 widgets activos y 36 obsoletos. [9] GTK es un conjunto de herramientas de widgets orientado a objetos escrito en el lenguaje de programación C ; utiliza GObject , que es el sistema de objetos GLib , para la orientación a objetos. Si bien GTK es principalmente para sistemas de ventanas basados en X11 y Wayland , funciona en otras plataformas, incluido Microsoft Windows (interconectado con la API de Windows ) y macOS (interconectado con Quartz ). También hay un back-end HTML5 llamado Broadway . [10] [11]
GTK se puede configurar para cambiar el aspecto de los widgets dibujados; esto se hace mediante diferentes motores de visualización. Existen varios motores de visualización que intentan emular el aspecto de los widgets nativos en la plataforma en uso.
A partir de la versión 2.8, lanzada en 2005, GTK comenzó la transición hacia el uso de Cairo para renderizar la mayoría de sus widgets de elementos de control gráfico . [12] Desde la versión 3.0 de GTK, todo el renderizado se realiza utilizando Cairo. [13]
El 26 de enero de 2018 en DevConf.cz , Matthias Clasen dio una descripción general del estado actual del desarrollo de GTK 4, incluida una explicación de alto nivel de cómo funcionaban la representación y la entrada en GTK 3, qué cambios se están realizando en GTK 4 (>3.90) y por qué. [14] El 6 de febrero de 2019 se anunció que GTK 4 eliminaría el "+" del nombre del proyecto. [3]
Kit de dibujo GTK (GDK)
GDK actúa como un envoltorio alrededor de las funciones de bajo nivel proporcionadas por los sistemas de ventanas y gráficos subyacentes.
Kit de gráficos de escena GTK (GSK)
GSK es la API de renderizado y gráficos de escena para GTK. GSK se encuentra entre los elementos de control gráfico (widgets) y el renderizado. GSK finalmente se fusionó con la versión 3.90 de GTK, lanzada en marzo de 2017.
Constructor de GTK
GtkBuilder permite diseñar interfaces de usuario sin necesidad de escribir código. La interfaz se describe en un archivo de lenguaje de marcado extensible (XML) escrito a mano o generado por un diseñador de GUI, que luego se carga en tiempo de ejecución y los objetos se crean automáticamente. La descripción de la interfaz de usuario es independiente del lenguaje de programación que se utilice.
GTK admite varios backends, lo que proporciona distintas formas de mostrar aplicaciones GTK según el sistema y el entorno. Algunos ejemplos de backends GTK son:
Wayland : se utiliza con el servidor de visualización Wayland en sistemas Linux y es un reemplazo moderno para X11.
X11 – El valor predeterminado en los sistemas Linux que utilizan el servidor de visualización X.Org.
Win32 – Para ejecutar aplicaciones GTK en Windows.
Lazarus (en Linux, la interfaz predeterminada es GTK 2)
Inspector GTK
GTK Inspector es una herramienta de depuración interactiva integrada en GTK que permite a los desarrolladores inspeccionar y modificar elementos de la interfaz de usuario, probar cambios en CSS y analizar la estructura de los widgets en tiempo real. Se puede habilitar mediante los Control + Shift + Iaccesos Control + Shift + Ddirectos o o configurando la GTK_DEBUG=interactivevariable de entorno. [20] Se introdujo con la versión 3.14 de GTK. [21] [22]
Características
Depuración interactiva
Pruebas y modificaciones de CSS en tiempo real
Ampliación del widget para una inspección detallada
Análisis de la estructura de la interfaz de usuario y examen de las propiedades de los objetos
Configuraciones de pantalla personalizables a través de variables de entorno
Inspección detallada de objetos (tipo, estado, propiedades, CSS, acciones, etc.)
Visualización de información de la aplicación global
Los desarrolladores y usuarios de GNOME se reúnen en la Conferencia Europea de Usuarios y Desarrolladores de GNOME (GUADEC) anual para discutir el estado actual y la dirección futura de GNOME. [25] GNOME incorpora estándares y programas de freedesktop.org para interoperar mejor con otros escritorios. [ cita requerida ]
El 1 de septiembre de 2016, una publicación en el blog de desarrollo de GTK denotó, entre otras cosas, el futuro esquema de numeración de GTK. [26] La versión 3.22 de GTK, lanzada en otoño de 2016, estaba prevista para ser la última versión 3.x, aunque la versión 3.24 le siguió en otoño de 2018 con el retraso de GTK 4. [27] El desarrollo de GTK 4 utilizó los nombres de versión 3.90, 3.92, etc. hasta que se lanzó la primera versión estable de GTK 4.0 en diciembre de 2020. [28] A pesar de la primera versión estable de GTK 4, algunas aplicaciones que utilizan GTK todavía dependen de GTK 2. Por ejemplo, a enero de 2022, GIMP todavía se está portando a GTK 3. [29]
Automatización de la construcción
La rama maestra de GTK utiliza Meson para la automatización de la compilación. GTK (y GNOME, GLib, etc.) utilizaban anteriormente el sistema de compilación GNU (llamado Autotools) como sistema de automatización de compilación de elección. Desde el 14 de agosto de 2017, los archivos del sistema de compilación Autotools han sido eliminados. [30]
Crítica
La crítica más común a GTK es la falta de compatibilidad con versiones anteriores en actualizaciones importantes, más notablemente en la interfaz de programación de aplicaciones (API) [31] y los temas. [32] El resultado es que los desarrolladores de aplicaciones o temas tienen que reescribir partes de su código para que funcione con una versión más nueva de GTK.
Benjamin Otte explicó que las interrupciones de compatibilidad entre versiones menores durante el ciclo de desarrollo de GTK 3.x se debían a fuertes presiones para innovar, como proporcionar las características que esperan los usuarios modernos y dar soporte al cada vez más influyente protocolo de servidor de visualización Wayland . Con el lanzamiento de GTK 4, se habrá liberado la presión de la necesidad de innovar y el equilibrio entre estabilidad e innovación se inclinará hacia la estabilidad. [33] De manera similar, los cambios recientes en la temática están específicamente destinados a mejorar y estabilizar esa parte de la API, lo que significa que cierta inversión ahora debería ser recompensada más adelante.
Hong Jen Yee, desarrollador de LXDE (cuya versión GTK fue abandonada y todos los esfuerzos se centraron en el puerto Qt ), expresó su desdén por los cambios radicales de API de la versión 3 del kit de herramientas GTK y el mayor uso de memoria, y portó PCMan File Manager (PCManFM) a Qt . PCManFM se está desarrollando con un GTK y con un backend Qt al mismo tiempo. [35]
El reproductor de música Audacious se trasladó a Qt en la versión 3.6. [36] Las razones dadas por los desarrolladores para esto incluyen una transición a decoraciones de ventanas del lado del cliente, que según afirman hacen que la aplicación parezca " GNOME -y fuera de lugar". [37]
Wireshark cambió a Qt debido a que no tuvo una buena experiencia con el soporte multiplataforma de GTK. [38]
Usar
Aplicaciones
Algunas aplicaciones notables que utilizan GTK como un conjunto de herramientas de widgets incluyen:
Los programas GTK se pueden ejecutar en entornos de escritorio basados en X11 y Wayland , u otros, incluidos los que no están hechos con GTK, siempre que se instalen las bibliotecas necesarias; esto incluye macOS si está instalado X11.app . GTK también se puede ejecutar en Microsoft Windows . Es utilizado por algunas aplicaciones multiplataforma populares como Pidgin y GIMP . wxWidgets , un kit de herramientas GUI multiplataforma, usa GTK en Linux de forma predeterminada. [39] Otros puertos incluyen DirectFB (por ejemplo, utilizado por el instalador de Debian ).
Para resaltar la sintaxis existe GtkSourceView, "widget de edición de código fuente". GtkSourceView es mantenido por GNOME por separado de GTK como una biblioteca: gtksourceview. Hay planes para cambiarle el nombre a gsv. [ cita requerida ]
GtkHechizo
GtkSpell es una biblioteca independiente de GTK. GtkSpell depende de GTK y Enchant . Enchant es un contenedor para ispell, hunspell , etc., el motor/software corrector ortográfico real . GtkSpell utiliza el widget GtkTextView de GTK para resaltar las palabras mal escritas y ofrecer reemplazos.
Historia
GNU/Linux
GTK fue diseñado y utilizado originalmente en el Programa de Manipulación de Imágenes GNU (GIMP) como reemplazo del kit de herramientas Motif ; en algún momento Peter Mattis se desencantó con Motif y comenzó a escribir su propio kit de herramientas GUI llamado kit de herramientas GIMP y reemplazó exitosamente a Motif en la versión 0.60 de GIMP. [40] Finalmente, GTK fue reescrito para que estuviera orientado a objetos y se le cambió el nombre a GTK+. [41] Esto se utilizó por primera vez en la versión 0.99 de GIMP. GTK fue posteriormente adoptado para mantenimiento por la Fundación GNOME , que lo utiliza en el entorno de escritorio GNOME.
La serie de versiones GTK 2.0.0 introdujo nuevas características que incluyen una representación de texto mejorada con Pango , un nuevo motor de temas , una accesibilidad mejorada con Accessibility Toolkit , la transición a Unicode con cadenas UTF-8 y una API más flexible. A partir de la versión 2.8, GTK 2 depende de la biblioteca de gráficos Cairo para la representación de gráficos vectoriales.
La versión 3.0.0 de GTK incluyó un manejo revisado del dispositivo de entrada, soporte para temas escritos con sintaxis similar a CSS y la capacidad de recibir información sobre otras aplicaciones GTK abiertas.
El '+' se eliminó y volvió a ser simplemente 'GTK' en febrero de 2019 durante un Hackathon . [42]
macOS
Con Quartz -backend [43] GTK está disponible en macOS . [44]
Ventanas
Después de GTK 2.24.10 y 3.6.4, Gnome abandonó el desarrollo de Windows con instalador. La instalación de MSYS2 en Windows es una buena forma de utilizar GTK real. [45]
GTK 2.24.10 y 3.6.4 están disponibles en Internet, pero tienen muchos errores y son limitados en comparación con las versiones actuales. [46] [47]
Tom Schoonjans está preparando una versión para Windows de 64 bits con 2.24.33 (actualmente como Linux) y 3.24.24 (actualmente como Linux) disponibles a partir de enero de 2021. [48]
La actualización Fall Creators Update de Windows 10 incluye el Subsistema de Windows para Linux (WSL). Con distribuciones de Linux como Ubuntu o Debian disponibles en Microsoft Store y un servidor X como Xming o VcXsvr, miles de programas como GTK 2 o 3 pueden ejecutarse con compatibilidad con X o terminal.
OpenVMS
HP declaró que su objetivo era fusionar los cambios necesarios de OpenVMS en el flujo de desarrollo de GTK versión 1.3, sin embargo esto nunca se materializó. [49] La última versión de GTK para OpenVMS es la versión 1.2.10. [50]
GTK4
Una de las principales novedades implementadas durante el ciclo de desarrollo de GTK 4 (es decir, GTK 3.92, etc.) ha sido la eliminación de las opciones de personalización para el lado del usuario (como atajos de teclado individuales que se podían configurar en GTK+ 2) y la delegación de funcionalidad a objetos auxiliares en lugar de codificarla en las clases base proporcionadas por GTK.
El manejo de eventos de los manejadores de señales descritos por GtkWidget se delega a los controladores de eventos.
La representación se delega a objetos GtkSnapshot.
El mecanismo de diseño de GtkWidget se delega a GtkLayoutManager
En enero de 2018, en DevConf.cz, Matthias Clasen ofreció una descripción general del estado actual del desarrollo de GTK 4, incluida una explicación de alto nivel sobre cómo funcionaban la representación y la entrada de datos en GTK 3, qué cambios se estaban realizando en GTK 4 y las razones de esos cambios. También se dieron ejemplos de cosas que se han vuelto posibles con GTK 4. [51]
Advertencia de bloqueo de mayúsculas al ingresar la contraseña
Mejoras en GtkScale, GtkStatusIcon y GtkFileChooser
2.16.6
Old version, no longer maintained:2.18
23 de septiembre de 2009 [63]
Nuevo widget: GtkInfoBar
Mejora en el selector de archivos, impresión
Para eliminar gran parte del IPC necesario entre la aplicación X11 y el servidor X11, GDK se reescribe (principalmente por Alexander Larsson) para utilizar "ventanas del lado del cliente", es decir, la GdkWindow, que cada widget debe tener, ahora pertenece al cliente.
2.18.9
Old version, no longer maintained:2.20
23 de marzo de 2010 [64]
Nuevos widgets:
GtkSpinner
Paleta de herramientas Gtk
Ventana fuera de pantalla Gtk
Mejora en el selector de archivos, manejo del teclado, GDK
Los datos de introspección ahora están incluidos en GTK
La mayoría de los dibujos de GDK se basan en El Cairo
Muchos datos internos ahora son privados y se pueden sellar en preparación para GTK 3
2.22.1
Old version, no longer maintained:2.24
30 de enero de 2011 [66]
Nuevo widget: GtkComboBoxText, que anteriormente era un widget personalizado incluido con Gtkmm
El backend de impresión de CUPS puede enviar trabajos de impresión como PDF
GtkBuilder ha ganado soporte para etiquetas de texto y botones de herramientas de menú y se agregaron muchas correcciones de anotaciones de introspección.
Migración de GTK+ 2.x a GTK+ 3
2.24.33 (21 de diciembre de 2020) [67]
Old version, no longer maintained:3.0
10 de febrero de 2011 [68]
El desarrollo y diseño de la versión GTK 3 del kit de herramientas comenzó en febrero de 2009 durante el GTK Theming Hackfest celebrado en Dublín [69].
El primer borrador de la hoja de ruta de desarrollo se publicó el 9 de abril de 2009 [70].
Completó casi por completo el Proyecto Ridley
el intento de consolidar varias bibliotecas que eran externas a GTK+
y el objeto GskTexture se mueve a GDK como GdkTexture, para ocupar su lugar
El backend de Wayland ahora implementa el protocolo de decoración del lado del servidor de KDE
Broadway está adaptado a GSK.
GdkWindow cambió su nombre a GdkSurface
Nueva abstracción para contenido dibujable: GdkPaintable
Existe soporte para visualizar medios con:
Vídeo Gtk
Archivo multimedia Gtk
Transmisión multimedia Gtk
Controles multimedia de Gtk
3.93 3.94.0
Old version, no longer maintained:3,96
7 de mayo de 2019 [105]
El comando gtk4-builder-toolsimplify ha ganado una opción para convertir archivos ui GTK3 a GTK4; aunque con AMTK los menús, barras de herramientas u otros objetos como GtkShortcutsWindow se crean programáticamente (no con un archivo *.ui), sino con API convenientes. [106]--3to4
GtkWidget ahora puede usar un GtkLayoutManager para la asignación de tamaño
Los administradores de diseño pueden usar opcionalmente elementos secundarios de diseño que contengan propiedades de diseño
GtkBinLayout, GtkBoxLayout, GtkGridLayout, GtkFixedLayout y GtkCustomLayout están disponibles actualmente
En el futuro aparecerán más implementaciones de administradores de diseño
Se ha reescrito el manejo del foco y se ha unificado la generación de eventos de cambio de foco con eventos cruzados.
Los eventos se han simplificado y solo se utilizan para entrada:
Los eventos de exposición han sido reemplazados por una señal GdkSurface::render
Los eventos de configuración han sido reemplazados por una señal GdkSurface::size-changed
Los eventos del mapa han sido reemplazados por una propiedad GdkSurface::mapped
gdk_event_handler_set ha sido reemplazado por una señal GdkSurface::event
GtkMenu, GtkToolbar y clases similares han sido reemplazadas por GMenu.
Adiciones
Selector de emojis
Los widgets de texto ahora tienen pilas de deshacer
Un nuevo gestor de diseño [107]
3.98.5
Old version, no longer maintained:3.99.0
31 de julio de 2020 [108]
Se introdujo el sucesor de Accessibility Toolkit (ATK) . [109] El nuevo enfoque implementará WAI-ARIA (Iniciativa de Accesibilidad del Consorcio World Wide Web (W3C) – Aplicaciones de Internet enriquecidas y accesibles).
Encabezados actualizados para utilizar tipos C estándar en lugar de tipos GLib
Nuevos widgets
Correcciones y mejoras [108]
3.99.4
Old version, no longer maintained: 4.0
16 de diciembre de 2020 [110]
4.0.2
Old version, no longer maintained: 4.2
30 de marzo de 2021 [111]
Old version, no longer maintained: 4.4
23 de agosto de 2021 [112]
Old version, no longer maintained: 4.6
30 de diciembre de 2021 [113]
Old version, no longer maintained: 4.8
6 de septiembre de 2022 [114]
Current stable version:4.10
4 de marzo de 2023 [115]
GtkFileChooser está obsoleto (use GtkFileDialog) [116]
^ "El proyecto de código abierto GTK en Open Hub: página de idiomas". www.openhub.net . Archivado desde el original el 28 de marzo de 2019 . Consultado el 28 de marzo de 2019 .
^ "Una breve descripción de cómo nació GTK". www.gtk.org . Archivado desde el original el 9 de junio de 2023 . Consultado el 5 de julio de 2023 .
^ ab Bassi, Emmanuele (6 de febrero de 2019). «Cambio de nombre del proyecto a «GTK»». mail.gnome.org . Lista de correo de GNOME . Archivado desde el original el 7 de noviembre de 2020 . Consultado el 7 de febrero de 2019 .
^ El equipo de GTK+. «Características de GTK+». Archivado desde el original el 25 de mayo de 2019. Consultado el 8 de septiembre de 2014 .
^ "Documentación". www.x.org . Archivado desde el original el 21 de diciembre de 2019 . Consultado el 22 de noviembre de 2019 .
^ ab "Proyectos/GTK/Hoja de ruta - Wiki de GNOME!". wiki.gnome.org . Archivado desde el original el 22 de mayo de 2019 . Consultado el 22 de noviembre de 2019 .
^ "GTK 4.0 – Blog de desarrollo de GTK". 16 de diciembre de 2020. Archivado desde el original el 28 de mayo de 2023. Consultado el 18 de octubre de 2021 .
^ "Robin Rowe / GTK1 · GitLab". GitLab . Archivado desde el original el 9 de marzo de 2023 . Consultado el 22 de febrero de 2023 .
^ "Manual de referencia de GTK+ 3". Archivado desde el original el 23 de junio de 2021 . Consultado el 15 de julio de 2017 .
^ ab "Uso de GTK+ con Broadway". Desarrollador de GNOME . GNOME. Archivado desde el original el 14 de junio de 2021 . Consultado el 6 de marzo de 2018 .
^ ab "Broadway - GitHub symbiose/symbiose Wiki". GitHub . Archivado desde el original el 28 de junio de 2023 . Consultado el 6 de marzo de 2018 .
^ "GTK+ utilizará el motor vectorial Cairo". 5 de febrero de 2005. Consultado el 27 de diciembre de 2009 .
^ "Gtk: Migración de GTK 2.x a GTK 3". docs.gtk.org . Archivado desde el original el 26 de mayo de 2023 . Consultado el 16 de junio de 2022 . Todo el dibujo en GTK 3 se realiza a través de Cairo.
^ "Matthias Clasen DevConf.cz 2018 talk about GTK+ 4" (PDF) . 26 de enero de 2018. Archivado (PDF) del original el 22 de abril de 2024. Consultado el 9 de marzo de 2018 .
^ El equipo GTK+. «Vinculaciones del lenguaje GTK+». www.gtk.org . Archivado desde el original el 25 de mayo de 2019. Consultado el 3 de junio de 2017 .
^ GUADEC. "Cambalache: camino a la versión 1.0".
^ "glade - man pages section 1: User Commands" (páginas del manual de glade, sección 1: comandos de usuario). docs.oracle.com . Consultado el 11 de septiembre de 2024 .
^ "Debian -- Resultados de búsqueda de paquetes -- gazpacho". packages.debian.org . Archivado desde el original el 28 de junio de 2023 . Consultado el 22 de noviembre de 2019 .
^ "Nada personal - Un sitio de desarrollo para Crow Designer, GuiLoader y Rally - Google Project Hosting". Archivado desde el original el 24 de enero de 2013 . Consultado el 17 de febrero de 2014 .
^ "GTK Inspector". Documentación para desarrolladores de GNOME . Consultado el 14 de septiembre de 2024 .
^ "Presentación de GtkInspector". 15 de mayo de 2014. Archivado desde el original el 17 de mayo de 2014 . Consultado el 17 de mayo de 2014 .
^ "Otra actualización de GtkInspector". 11 de julio de 2014. Archivado desde el original el 14 de julio de 2014 . Consultado el 13 de julio de 2014 .
^ "Análisis FODA rápido de GNOME". El proyecto GNOME . Archivado desde el original el 18 de marzo de 2014. Consultado el 18 de marzo de 2014 .
^ "Idiomas de GNOME". Ohloh . Black Duck Software. Archivado desde el original el 22 de mayo de 2014 . Consultado el 22 de mayo de 2014 .
^ "Acerca de". Conferencia Europea de Usuarios y Desarrolladores de GNOME ( GUADEC ). Archivado desde el original el 4 de octubre de 2011. Consultado el 3 de diciembre de 2011 .
^ ab "Versioning and long term stability promise in GTK". Blog de desarrollo de GTK. 1 de septiembre de 2016. Archivado desde el original el 21 de septiembre de 2016 . Consultado el 2 de septiembre de 2016 .
^ "GTK+ 3.24 ofrecerá algunas características nuevas mientras se espera a GTK4". www.phoronix.com . Archivado desde el original el 22 de abril de 2024 . Consultado el 2 de abril de 2021 .
^ "GTK 4.0". Blog de desarrollo de GTK. 16 de diciembre de 2020. Archivado desde el original el 28 de mayo de 2023. Consultado el 18 de octubre de 2021 .
^ "Ya está disponible la versión de desarrollo GIMP 2.99.2". Noticias de Gimp. 6 de noviembre de 2020. Archivado desde el original el 10 de abril de 2021. Consultado el 6 de enero de 2022 .
^ "El sistema de compilación cambia la rama maestra de GTK". mail.gnome.org . Archivado desde el original el 15 de agosto de 2017 . Consultado el 29 de octubre de 2018 .
^ "¿Cómo se crea una aplicación Gtk+? – Morten Welinder". blogs.gnome.org . 23 de junio de 2014. Archivado desde el original el 1 de julio de 2014 . Consultado el 3 de junio de 2017 .
^ mclasen (20 de noviembre de 2015). "Una actualización de GTK+". Lo que está pasando . Archivado desde el original el 2 de mayo de 2016. Consultado el 3 de junio de 2016 .
^ ab «GUADEC2013: Benjamin Otte habla de GTK+». GUADEC . Archivado desde el original el 6 de marzo de 2014 . Consultado el 5 de marzo de 2014 .
^ Larabel, Michael (12 de enero de 2014). "El mayor problema con GTK y lo bueno que hace Qt". Phoronix . Archivado desde el original el 1 de julio de 2016. Consultado el 10 de septiembre de 2014 .
^ Hong Jen Yee (26 de marzo de 2013). «Se lanzó PCManFM Qt 0.1.0». Archivado desde el original el 7 de junio de 2013. Consultado el 10 de septiembre de 2014 .
^ "Audacious - Un reproductor de audio avanzado". audacious-media-player.org . Archivado desde el original el 28 de julio de 2019 . Consultado el 22 de noviembre de 2019 .
^ Lindgren, John (6 de mayo de 2014). «Decoraciones de ventanas feas y cómo arreglarlas (GTK 3.12)». Archivado desde el original el 13 de octubre de 2014. Consultado el 21 de octubre de 2014 .
^ Gerald Combs (15 de octubre de 2013). «Nos estamos pasando a Qt». Archivado desde el original el 19 de octubre de 2013. Consultado el 19 de agosto de 2015 .
^ "GTK+". Comparación de WxWidgets con otros conjuntos de herramientas . Archivado desde el original el 5 de octubre de 2007. Consultado el 28 de agosto de 2007 .
^ "LinuxWorld - ¿Adónde fueron Spencer Kimball y Peter Mattis?". Archivado desde el original el 17 de abril de 1999. Consultado el 19 de agosto de 2013 .
^ "¿Qué es el + en GTK+?". 2011. Archivado desde el original el 26 de marzo de 2012. Consultado el 18 de marzo de 2014 .
^ "Renombrar algunas referencias a GTK+ (d080be3e) · Commits · GNOME/gtk". gitlab.gnome.org . 4 de febrero de 2019. Archivado desde el original el 25 de febrero de 2021 . Consultado el 5 de febrero de 2019 .
^ "Proyectos/GTK/OSX - Wiki de GNOME!". wiki.gnome.org . Archivado desde el original el 27 de noviembre de 2019 . Consultado el 22 de noviembre de 2019 .
^ "Descarga GTK: Mac OS X". El equipo GTK . Archivado desde el original el 11 de abril de 2020. Consultado el 11 de abril de 2020 .
^ "Descarga GTK: Windows". El equipo GTK . Archivado desde el original el 14 de abril de 2020. Consultado el 11 de abril de 2020 .
^ "GTK+ para Windows Runtime Environment". SourceForge . 15 de septiembre de 2017. Archivado desde el original el 6 de abril de 2018 . Consultado el 5 de abril de 2018 .
^ "GTK+". www.tarnyko.net . Archivado desde el original el 8 de abril de 2018 . Consultado el 5 de abril de 2018 .
^ "Instalador de GTK+ para Windows Runtime Environment (bifurcación de http://gtk-win.sourceforge.net): tschoonj/GTK-for-Windows-Runtime-Environment-Installer". 19 de noviembre de 2020. Archivado desde el original el 11 de junio de 2018. Consultado el 5 de abril de 2018 – vía GitHub.
^ «Sistemas HP OpenVMS - GTK+». Archivado desde el original el 13 de julio de 2018. Consultado el 12 de julio de 2018 .
^ «Sistemas HP OpenVMS - GTK+». Archivado desde el original el 13 de julio de 2018. Consultado el 12 de julio de 2018 .
^ Clasen, Matthias. «Actualización de estado de GTK+ 4» (PDF) . Fedora People . Archivado (PDF) del original el 22 de abril de 2024. Consultado el 22 de abril de 2024 .
^ Amundson, Shawn T. (13 de abril de 1998). "ANUNCIO: ¡GTK+ 1.0.0 lanzado!". Servicios de correo de GNOME (lista de correo). Archivado desde el original el 12 de marzo de 2019. Consultado el 20 de mayo de 2019 .
^ Amundson, Shawn T. (25 de febrero de 1999). «ANUNCIO: GTK+ y GLib 1.2.0 publicados». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Taylor, Owen (11 de marzo de 2002). «GTK+-2.0.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Taylor, Owen (22 de diciembre de 2002). «GTK+-2.2.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Taylor, Owen (16 de marzo de 2004). «GTK+-2.4.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (16 de diciembre de 2004). «GTK+-2.6.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (13 de agosto de 2005). «GTK+ 2.8.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (3 de julio de 2006). «GTK+ 2.10 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 22 de enero de 2021. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (14 de septiembre de 2007). «GTK+ 2.12 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (4 de septiembre de 2008). «GTK+ 2.14.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 10 de agosto de 2020. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (13 de marzo de 2009). «GTK+ 2.16.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 3 de junio de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (23 de septiembre de 2009). «GTK+ 2.18.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 3 de junio de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (23 de marzo de 2010). «GTK+ 2.20.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (23 de septiembre de 2010). «GTK+ 2.22.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (20 de enero de 2011). «GTK+ 2.24.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 8 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ "Etiquetas · GNOME/gtk · GitLab". GitLab . 21 de diciembre de 2020. Archivado desde el original el 4 de diciembre de 2023 . Consultado el 18 de octubre de 2023 .
^ Clasen, Matthias (10 de febrero de 2011). «GTK+ 3.0.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 12 de marzo de 2019. Consultado el 20 de mayo de 2019 .
^ "Gtk+ 3.0 Theming API Hackfest". Silicon Island . Archivado desde el original el 17 de julio de 2011. Consultado el 3 de junio de 2017 .
^ "Borrador de la hoja de ruta de Gtk+ 3". Archivado desde el original el 12 de abril de 2009 . Consultado el 3 de junio de 2017 .
^ "Attic/ProjectRidley - Wiki de GNOME!". wiki.gnome.org . Archivado desde el original el 4 de marzo de 2016 . Consultado el 29 de marzo de 2014 .
^ Clasen, Matthias (25 de septiembre de 2011). «GTK+ 3.2.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (26 de marzo de 2012). «GTK+ 3.4.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (24 de septiembre de 2012). «GTK+ 3.6.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (25 de marzo de 2013). «GTK+ 3.8.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 3 de marzo de 2016 . Consultado el 20 de mayo de 2019 .
^ "Reloj de cuadros: Manual de referencia de GDK 3". developer.gnome.org . Archivado desde el original el 14 de abril de 2017 . Consultado el 13 de abril de 2017 .
^ Clasen, Matthias (23 de septiembre de 2013). «GTK+ 3.10.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (25 de marzo de 2014). «GTK+ 3.12 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ "Decoraciones del lado del cliente en temas | Novedades". 5 de diciembre de 2013. Archivado desde el original el 19 de septiembre de 2015 . Consultado el 31 de diciembre de 2015 .
^ Clasen, Matthias (22 de septiembre de 2014). «GTK+ 3.14.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Matthias Clasen (15 de mayo de 2014). «Entrada del blog del autor de GtkInspector». Archivado desde el original el 17 de mayo de 2014. Consultado el 17 de mayo de 2014 .
^ "GtkInspector en la wiki de GNOME". 15 de mayo de 2014. Archivado desde el original el 24 de mayo de 2014 . Consultado el 17 de mayo de 2014 .
^ "Fusionando gestos en 3.14". 23 de mayo de 2014. Archivado desde el original el 14 de septiembre de 2016. Consultado el 23 de mayo de 2014 .
^ "RFC: gestos". 4 de marzo de 2014. Archivado desde el original el 24 de mayo de 2014 . Consultado el 23 de mayo de 2014 .
^ "gtk+ 3.13.2". 27 de mayo de 2014. Archivado desde el original el 29 de mayo de 2014 . Consultado el 28 de mayo de 2014 .
^ "gtk+ 3.13.3". 24 de junio de 2014. Archivado desde el original el 15 de diciembre de 2014 . Consultado el 25 de junio de 2014 .
^ Clasen, Matthias (22 de marzo de 2015). «GTK+ 3.16.0 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ en línea, heise (25 de marzo de 2015). "Escritorio Linux: Neues Gnome zeigt Nachrichten oben". Heise en línea . Archivado desde el original el 25 de junio de 2016 . Consultado el 3 de junio de 2017 .
^ "Ya está disponible GTK+ 3.16.0". mail.gnome.org . Archivado desde el original el 7 de abril de 2016 . Consultado el 3 de junio de 2017 .
^ Nestor, Marius (24 de septiembre de 2015). «GTK+ 3.18.0 publicado oficialmente como parte del entorno de escritorio GNOME 3.18». Softpedia . Archivado desde el original el 25 de mayo de 2019. Consultado el 25 de mayo de 2019 .
^ Clasen, Matthias (21 de marzo de 2016). «GTK+ 3.20». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 12 de marzo de 2019. Consultado el 20 de mayo de 2019 .
^ "GTK+ 3.20 – Clases de estilo y nombres de elementos". 20 de noviembre de 2015. Archivado desde el original el 5 de marzo de 2016 . Consultado el 18 de diciembre de 2015 .
^ Clasen, Matthias (21 de septiembre de 2016). «GTK+ 3.22 released». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ "Se fusiona el soporte para tabletas GTK+ Wayland – Carlos Garnacho". 6 de abril de 2016. Archivado desde el original el 16 de abril de 2016 . Consultado el 8 de abril de 2016 .
^ "Aporte de Hutterer". www.x.org . Archivado desde el original el 23 de septiembre de 2016. Consultado el 23 de septiembre de 2016 .
^ ab «Gtk 4.0 no será estable hasta Gtk 4.6». 13 de junio de 2016. Archivado desde el original el 23 de junio de 2016 . Consultado el 15 de junio de 2016 .
^ ab «Gtk 5.0 no será estable hasta Gtk 5.6». 14 de junio de 2016. Archivado desde el original el 23 de junio de 2016 . Consultado el 15 de junio de 2016 .
^ Clasen, Matthias (3 de septiembre de 2018). «gtk+ 3.24.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 25 de mayo de 2019. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (31 de marzo de 2017). «gtk+ 3.90.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 29 de diciembre de 2017. Consultado el 20 de mayo de 2019 .
^ "Commits · master · GNOME/gtk". GitLab . Archivado desde el original el 22 de junio de 2020. Consultado el 22 de noviembre de 2019 .
^ Clasen, Matthias (18 de octubre de 2017). «gtk+ 3.92.1». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 29 de diciembre de 2017. Consultado el 20 de mayo de 2019 .
^ Clasen, Matthias (23 de octubre de 2017). «GTK+ 3.92». Blog de desarrollo de GTK . Archivado desde el original el 25 de mayo de 2019. Consultado el 25 de mayo de 2019 .
^ "GNOME 3.26 Released". 13 de septiembre de 2017. Archivado desde el original el 16 de marzo de 2021 . Consultado el 19 de octubre de 2017 .
^ Clasen, Matthias (26 de junio de 2018). «gtk+ 3.94.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 5 de julio de 2018. Consultado el 20 de mayo de 2019 .
^ ab Clasen, Matthias (7 de mayo de 2019). «gtk 3.96». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 28 de mayo de 2019. Consultado el 28 de mayo de 2019 .
^ "Presentación de amtk". Archivado desde el original el 22 de junio de 2020 . Consultado el 4 de mayo de 2020 .
^ Clasen, Matthias (13 de febrero de 2020). «GTK 3.98». Blog de desarrollo de GTK+ . Archivado desde el original el 18 de febrero de 2020. Consultado el 18 de febrero de 2020 .
^ ab Clasen, Matthias (9 de junio de 2021). «gtk 4.3.1». Lanzamientos FTP (lista de correo). Archivado desde el original el 10 de julio de 2021 . Consultado el 10 de julio de 2021 .
^ "Emmanuele Bassi / guadec-2020". GitLab . Archivado desde el original el 15 de agosto de 2020. Consultado el 12 de septiembre de 2020 .
^ Clasen, Matthias (16 de diciembre de 2020). «gtk 4.0.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 28 de octubre de 2021. Consultado el 16 de diciembre de 2020 .
^ Clasen, Matthias (30 de marzo de 2021). «gtk 4.2.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 27 de octubre de 2021 . Consultado el 30 de marzo de 2021 .
^ Clasen, Matthias (23 de agosto de 2021). «gtk 4.4.0». Servicios de correo de GNOME (lista de correo). Archivado desde el original el 24 de agosto de 2021 . Consultado el 23 de enero de 2022 .
^ Clasen, Matthias (30 de diciembre de 2021). «gtk 4.6.0». Comunicados de FTP (lista de correo). Archivado desde el original el 23 de enero de 2022. Consultado el 23 de enero de 2022 .
^ Clasen, Matthias (6 de septiembre de 2022). «gtk 4.8.0». Archivado desde el original el 11 de enero de 2023. Consultado el 11 de enero de 2023 .
^ "NOTICIAS · 4.10.1 · GNOME/gtk · GitLab". GitLab . 13 de marzo de 2023. Archivado desde el original el 19 de abril de 2023 . Consultado el 19 de abril de 2023 .
^ "Sobre las descontinuaciones: blog de desarrollo de GTK". 30 de octubre de 2022. Archivado desde el original el 28 de febrero de 2024. Consultado el 21 de abril de 2024 .
Bibliografía
Krause, Andrew (23 de abril de 2007), Fundamentos del desarrollo de GTK+ (1.ª ed.), Apress , ISBN978-1-59059-793-4
Logan, Syd (6 de septiembre de 2001), Programación Gtk+ en C (1.ª ed.), Prentice Hall , ISBN978-0-13-014264-1, archivado desde el original el 30 de septiembre de 2012 , consultado el 15 de agosto de 2009
Enlaces externos
Wikimedia Commons tiene medios relacionados con GTK .
El Wikibook de Programación en X Window tiene una página sobre el tema: GTK+