ГТК+

С Википедије, слободне енциклопедије
(преусмерено са Dži-Ti-Kej+)
GTK+
Програмер(и)GNOME Fondacija
Најновија
верзија
2.20.1
02. мај, 2010
ОСвишеплатформски
ТипВиџет тулкит
ЛиценцаЛГПЛ
Веб-сајтwww.гтк.орг

GTK+ (ГИМП Тоолкит) је вишеплатформски виџет тулкит за креирање графичког корисничког окружења. Представља најпопуларнији тулкит за X Wиндоw Систем поред Нокијиног интерфејса. Првобитно је креиран за потребе графичког едитора ГИМП 1997 године.

Лиценциран је под ЛГПЛ лиценцом и део је ГНУ пројекта, који има за циљ стварање оперативног система потпуно заснованог на слободном софтверу.

Дизајн[уреди | уреди извор]

ГТК+ је објектно оријентисани виџет тулкит написан на програмском језику C. Објектна оријентација је постигнута коришћењем ГЛиб објектног система (ГОбјецт). Иако ГТК+ примарно циља на X Wиндоw системе, такође подржава и друге платформе укључујући и Мицрософт Wиндоwс, ДирецтФБ и Мац ОС X.

Може се и конфигурисати тако да се мења изглед исцртаних виџета, што се постиже коришћењем различитих уграђених механизама за приказ. Постоји неколико оваквих механизама који покушавају да емулирају изглед матерњих виџета на коришћеној платформи.

Везе са програмским језицима[уреди | уреди извор]

Библиотека написана на једном програмском језику се може користити у другом програмском језику уколику су написане одговарајуће језичке везе: ГТК+ поседује везе за многе језике.

Листа веза:

Језик Назив Званично подржан
C ГТК+ матерњи (везе нису потребне)
C++ гткмм Да
Вала вала Да
Рубy рубy-гтк2 Да
Пyтхон ПyГТК Да
Јава јава-гноме Да (није доступан за Мицрософт Wиндоwс)
.НЕТ Гтк# Да
ПХП ПХП-ГТК Да
Перл Гтк2-Перл Да
Ада ГткАда Не
D гткД Не
Фортран гтк-фортран Не
Цоммон Лисп CL-ГТК2 Не
Хаскелл гтк2хс Не
Луа Не
Оцамл ЛаблГТК Не
Пасцал Не
Пике Не
ЈаваСцрипт ГЈС Не
Смаллталк Смаллталк YX Не
Тцл Гноцл Не
Еупхориа Не

Историјат[уреди | уреди извор]

ГТК+ је оригинално дизајниран и коришћен у ГИМП графичком едитору као замена за Мотиф тулкит. Тренутна верзија ГТК+ 2 је успешно наследила првобитну ГТК+ 1, уз увођење нових карактеристика: напредни рендеринг текста коришћењем Панго библиотеке, нови механизам за теме, комплетна транзиција на Уникод коришћењем УТФ-8 стрингова и флексибилнијег АПИ-ја. Ипак, ГТК+ 2 није компатибилан са ГТК+ 1, и апликације се морају портовати. Од верзије 2.8, ГТК+ 2 зависи и од Цаиро библиотеке за рендеринг векторске графике.

Пример кода[уреди | уреди извор]

ГТК+ програм на C програмском језику који исцртава прозор са насловом "Поздрав свете" и лабелу са сличним текстом:

 #include <gtk/gtk.h>
 int main (int argc, char *argv[])
 {
    GtkWidget *window;
    GtkWidget *label;
    gtk_init (&argc, &argv);
    /* kreiranje glavnog prozora */
    window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
    /* dodeljivanje naslova */
    gtk_window_set_title (GTK_WINDOW (window), "Pozdrav svete");
    /* Povezivanje destroy signala prozora sa gtk_main_quit
     * Kada se započne uništavanje prozora dobijamo obaveštenje i
     * zaustavljamo glavnu GTK+ petlju
     */
    g_signal_connect (window, "destroy", G_CALLBACK (gtk_main_quit), NULL);
    /* Kreiranje ""Pozdrav svete" labele  */
    label = gtk_label_new ("Pozdrav svete");
    /* i njeno postavljanje na glavni prozor */
    gtk_container_add (GTK_CONTAINER (window), label);
    /* obezbeđivanje da je sve (prozor i labela) vidljivo */
    gtk_widget_show_all (window);
    /* pokretanje glavne petlje i njeno izvršavanje do stopiranja aplikacije */
    gtk_main ();
    return 0;
 }

Употреба[уреди | уреди извор]

Скриншот ГИМП-а 2.4. ГТК+ је одговоран за управљање интерфејс компоненти програма, укључујући меније, тастере, поља за унос и сл.
Окружења која користе ГТК+

Ова десктоп окружења нису потребна за извршавање ГТК+ програма. Ако су инсталиране све потребне библиотеке, ГТК+ програм се може извршавати на сваком десктоп окружењу или менаџеру прозора заснованом на X11, укључујући и Мац ОС X. ГТК+ се може извршавати и под Мицрософт Wиндоwс-ом, где га и користе неке популарне крос-платформске апликације као што су Пидгин и ГИМП. wxWидгетс, крос-платформски ГУИ тулкит, користи ГТК+ за Униx системе.

Менаџери прозора

Следећи менаџери прозора користе ГТК+:

Апликације[уреди | уреди извор]

Неке од значајнијих апликација које користе ГТК+:

Види још[уреди | уреди извор]

Спољашње везе[уреди | уреди извор]