ГТК+
![]() |
![]() | |
![]() | |
Програмер(и) | GNOME Fondacija |
---|---|
Најновија верзија | 2.20.1 02. мај, 2010 |
ОС | вишеплатформски |
Тип | Виџет тулкит |
Лиценца | ЛГПЛ |
Веб-сајт | www.гтк.орг |
GTK+ (ГИМП Тоолкит) је вишеплатформски виџет тулкит за креирање графичког корисничког окружења. Представља најпопуларнији тулкит за X Wиндоw Систем поред Нокијиног Qт интерфејса. Првобитно је креиран за потребе графичког едитора ГИМП 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;
}
Употреба
[уреди | уреди извор]![](https://upload.wikimedia.org/wikipedia/commons/thumb/5/5b/GIMP2.4-English.png/220px-GIMP2.4-English.png)
- Окружења која користе ГТК+
- ГНОМЕ је заснован на ГТК+, што изначи да ГНОМЕ програми користе ГТК+
- Xфце је заснован на ГТК+, иако многе његове апликације не зависе од много библиотека
- ЛXДЕ је заснован на ГТК+
- РОX Десктоп
- ГПЕ Палмтоп Енвиронмент
- Маемо до верзије 5 је заснован на ГТК+ док ће наредне верзије користити Qт
- Аццесс Линуx Платформ наследник Палм ОС-а
- Сугар образовна платформа користи ГТК+ и ПyГТК
- Моблин
- КДЕ је заснован на Qт-у, али има интеграцију са ГТК+ програмима (од верзије 4.2).
Ова десктоп окружења нису потребна за извршавање ГТК+ програма. Ако су инсталиране све потребне библиотеке, ГТК+ програм се може извршавати на сваком десктоп окружењу или менаџеру прозора заснованом на X11, укључујући и Мац ОС X. ГТК+ се може извршавати и под Мицрософт Wиндоwс-ом, где га и користе неке популарне крос-платформске апликације као што су Пидгин и ГИМП. wxWидгетс, крос-платформски ГУИ тулкит, користи ГТК+ за Униx системе.
- Менаџери прозора
Следећи менаџери прозора користе ГТК+:
Апликације
[уреди | уреди извор]Неке од значајнијих апликација које користе ГТК+:
- АбиWорд - Ворд процесор
- Ањута - опен-сорс ИДЕ
- ЦинеПаинт - графички едитор
- Екига - апликација за ВоИП и видео конференције
- Еволутион
- ГИМП - графички едитор
- Гнумериц - Таблични процесор
- Цхромиум - Веб броузер кога развија Гоогле
- Инксцапе - едитор за СВГ Векторску графику
- К-3Д - 3Д моделирање
- Марионнет - Интерактивни мрежни симулатор
- Мидори - Веб броузер
- МоноДевелоп - опен-сорс ИДЕ
- Неро Линуx - менаџер оптичких дискова
- Пидгин - програм за размену инстант порука
- ВМwаре Плаyер - софтвер за виртуелизацију
- Wиресхарк - анализатор пакета
Види још
[уреди | уреди извор]Спољашње везе
[уреди | уреди извор]- ГТК+ Пројект
- Званични ГТК+ 2.x Туторијал Архивирано на сајту Wayback Machine (17. јун 2010)
- ГТК+ Приручник Архивирано на сајту Wayback Machine (5. јун 2010)
- Lista GTK+ aplikacija