GTK je multiplatformní toolkit, který slouží vytváření GUI. Pochází z projektu GIMP. Ten používal GTK pro vykreslování svého prostředí. Je napsané v C, ale existuj mnoho alternativ pro C++ a další jazyky. Na GTK je založeno prostřední GNOME.
S GTK+ multiplatformně
Cílem seriálu je ukázat možnosti a použití knihovny GTK+, nastínit problémy při multiplatformním vývoji, se kterými jsme se setkali, a jejich řešení. Podíváme se na výhody i nevýhody této knihovny, na kompilaci a dojde i na jednoduché příklady použití. Na obsahu dalších dílů se můžete podílet i vy, naši čtenáři. Diskuzní fórum je vám k dispozici.
Čtěte článek S GTK+ multiplatformněProgramování pro X Window System (2)
Po minulém úvodním článku se teď už opravdu pustíme do programování. První toolkit, na který se podíváme blíž, je GTK+. Zkratka pochází z názvu „The Gimp Toolkit“. GTK+ totiž původně vzniklo jako toolkit pro program Gimp. Dnes je na tomto toolkitu postaveno mnoho aplikací a tvoří základ desktopového prostředí GNOME.
Čtěte článek Programování pro X Window System (2)Programování pro X Window System (4)
Dnes se podíváme, jaké widgety jsou v GTK+ k dispozici. Nebudeme se příliš pouštět do podrobností, protože třídy widgetů mají často desítky metod a podrobný výklad by byl příliš dlouhý a asi také dost nudný. Proto se zaměříme jen na nejdůležitější vlastnosti widgetů. Detaily je možné nalézt v referenční dokumentaci GTK+.
Čtěte článek Programování pro X Window System (4)Programování pro X Window System (5)
V pátém dílu seriálu se podíváme na funkce knihovny GLib. V další části článku se budeme zabývat podporou GTK+ pro periodicky volané funkce, vstupy/výstupy a konfiguraci grafických stylů widgetů. Nakonec probereme možnosti komunikace mezi programy pomocí výběrů a drag&drop.
Čtěte článek Programování pro X Window System (5)Programování pro X Window System (6)
V tomto článku uzavřeme téma GTK+. Podíváme se dovnitř toolkitu, jak fungují widgety. Na závěr si ukážeme, jak definovat novou třídu widgetů.
Čtěte článek Programování pro X Window System (6)