Pour les articles homonymes, voirGDK (homonymie).
Développé par | Projet GNOME(en)![]() |
---|---|
Dernière version | 4.11.5 ()[1]![]() |
Dépôt | gitlab.gnome.org/GNOME/gtk/tree/master/gdk![]() |
Écrit en | C![]() |
Système d'exploitation | Linux![]() |
Type | Bibliothèque logicielle![]() |
Licence | Licence publique générale limitée GNU version 2.1 ou ultérieure(d)![]() |
Documentation | docs.gtk.org/gdk3![]() |
GDK (de l'anglais « GIMP Drawing Kit ») est unebibliothèque intégrée auwidget toolkitGTK+[2] et s'interfaçant avec le système graphique afin de gérer le rendu de primitives graphiques (rectangles,arcs,droites), d'images matricielles (bitmaps), decurseurs, defontes de caractères. Elle traite également les événements provenant notamment duclavier ou de lasouris.
GDK estmultiplateforme et elle est publiée sous licenceGNU LGPL 2.1. Elle a été initialement conçue pour l'éditeur d'image matricielleGIMP.
Labibliothèque GDK se place en surcouche du système graphique ce qui permet d'isolerGTK+ des interfaces liées au système graphique. Elle joue ainsi un rôle important pour assurer la fonctionnalitémultiplateforme deGTK+, en complément de labibliothèqueGLib aussi utilisée parGTK+ pour la portabilité.
GDK peut donc s'interfacer avec les systèmes graphiquesGDI,Quartz,X11,Wayland,Mir.
Dans des environnementsembarqués, GDK peut aussi s'interfacer avec les systèmes graphiquesDirectFB[3], ou directement avec leFramebuffer Linux[4].
A noter également que GDK peut s'interfacer avecBroadway[5] pour un affichage dans unNavigateur web.
GDK a d'abord été implémentée avec le supportX11.
Les supports pourGDI et pour leFramebuffer Linux ont été introduits dans GTK+ 2.0.N'ayant pas été maintenu après GTK+ 2.4, le support pour leFramebuffer Linux a finalement été retiré après GTK+ 2.10.
Les supportsDirectFB etQuartz ont été introduits dans GTK+ 2.10. N'ayant pas été maintenu après GTK+ 2.12, le supportDirectFB a finalement été retiré à partir de GTK+ 3.0.
Les supportsWayland etBroadway ont été introduits dans GTK+ 3.2, tandis que le supportMir a été introduit à partir de GTK+ 3.16.
Pour l'instant, il n'y a pas de supportKMS/DRM implémenté dans GDK.
Depuis GTK+ 2.8, GDK s'appuie sur labibliothèqueCairo qui est alors utilisée dans l'implémentation de widgetsGTK+. À partir de GTK+ 3.0, les fonctions de dessin de GDK sont devenues obsolètes,Cairo pouvant être utilisé[6].