GTK+
Z Wikipedii
| GTK+ | |
| biblioteka | |
Logo programu |
|
| Producent | GNOME Foundation |
| Platforma systemowa | Mac OS, Linux, BSD, Solaris, Windows i inne |
| Pierwsze wydanie | 1.0.0, 14 kwietnia 1998 |
| Aktualna wersja stabilna | 2.16.1 - 12 kwietnia 2009; 90 dni temu |
| Licencja | LGPL |
| www.gtk.org | |
GTK+ - biblioteka służąca do tworzenia interfejsu graficznego do programów komputerowych. Pierwotnie stworzona na potrzeby programu GIMP, stąd też nazwa - The GIMP Toolkit. Znak + pojawił się w nazwie, gdy autorzy dodali do oryginalnego GTK możliwość programowania obiektowego.
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. właściwości 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 bardzo popularnego języka Python. W PyGTK jest napisanych 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).
GTK+ przeszło duże zmiany w wersji 2.0. Do nich należą:
- pełna obsługa kodowania UTF-8,
- obsługa wygładzania czcionek i Xft,
- zaawansowany system wyświetlania i manipulacji tekstem (Pango),
- obsługa wielu języków jednocześnie,
- metody wprowadzania niezależne od X Input Method,
- system wspomagania dla osób niepełnosprawnych (ATK).

