GTK

GTK
Logo GTK
Logo programu
ilustracja
Pierwsze wydanie 1.0.0 – 14 kwietnia 1998; ponad 26 lat temu
Aktualna wersja stabilna 4.16.4
(1 listopada 2024) [±]
System operacyjny BSD, Linux, macOS, Solaris, Windows i inne
Rodzaj Biblioteka programistyczna
Licencja GNU LGPL
Strona internetowa

GTK, wcześniej: The GIMP Toolkit[1], GTK+[2]biblioteka służąca do tworzenia interfejsu graficznego do programów komputerowych[3].

GTK została napisana w C, aczkolwiek jest zaprojektowana obiektowo, w oparciu o implementację obiektowości dla C – GObject. Z biblioteki GTK można korzystać przy pomocy większości języków programowania. Dla C++ istnieje biblioteka gtkmm będąca nakładką na GTK wprowadzającą wygodniejszą składnię w stylu C++ (m.in. wykorzystanie tzw. pól i metod na obiektach GTK), jak i również biblioteka Gtk# będąca nakładką umożliwiającą wykorzystanie GTK na platformie .NET. Dla języka Ada została stworzona biblioteka GtkADA, umożliwiająca pełny dostęp do funkcjonalności GTK. PyGTK to biblioteka stworzona do obsługi języka Python[4]. W bibliotece tej napisanych jest wiele programów dla środowiska GNOME.

Biblioteka ta jest podstawą dla środowisk graficznych GNOME i Xfce. Na platformie uniksowej sama wykorzystuje bibliotekę GDK (odpowiedzialną za rysowanie obiektów) oraz GLib, zawierającą specjalne typy danych. Dzięki takiemu odseparowaniu GTK od systemu graficznego (w przypadku Uniksa jest to przeważnie X Window System) biblioteką bezpośrednio odpowiedzialną za interakcję z systemem graficznym, możliwe było łatwe przeportowanie GTK na inne niż uniksowe architektury (np.: Microsoft Windows oraz linuksowy DirectFB(inne języki)).

  1. GIMP Toolkit – openSUSE Wiki [online], tr.opensuse.org [dostęp 2023-12-13].
  2. Project rename to „GTK” [online], mail.gnome.org [dostęp 2024-01-21].
  3. GTK – The GTK toolkit [online], 22 grudnia 2023 [dostęp 2023-12-22] (ang.).
  4. GTK+ Language Bindings. [dostęp 2014-07-19]. [zarchiwizowane z tego adresu (2011-07-13)]. (ang.).

From Wikipedia, the free encyclopedia · View on Wikipedia

Developed by razib.in