GTK - GTK
Eredeti szerző (k) | Spencer Kimball , Peter Mattis |
---|---|
Fejlesztő (k) | A GNOME projekt , eXperimental Computing Facility (XCF) |
Első kiadás | 1998. április 14 . |
Stabil kiadás | 4.4.0 / 2021. augusztus 23
|
Előzetes verzió | 4.3.1 / 2021. június 9
|
Adattár | |
Beírva | C , CSS |
Operációs rendszer | Linux , Unix-szerű , macOS , Windows |
típus | Widget eszköztár |
Engedély | LGPLv2.1+ |
Weboldal | gtk |
GTK (korábban GIMP ToolKit majd GTK + ) egy szabad és nyílt forráskódú cross-platform felületi elem eszközkészlet létrehozásához grafikus felhasználói felületek (GUI). Ez alatt licencelt szempontjából a GNU General Public License , amely lehetővé teszi mind szabad , és szabadalmaztatott szoftver használni. Ez az egyik legnépszerűbb eszközkészlet a Wayland és X11 ablakrendszerekhez .
A GTK csapata rendszeresen ad ki új verziókat. A GTK 4 és a GTK 3 megmarad, míg a GTK 2 az élettartam vége.
Szoftver architektúra
A GTK könyvtár grafikus vezérlőelemeket ( widgeteket ) tartalmaz; A 3.22.16 verzió 186 aktív és 36 elavult kütyüt tartalmaz. A GTK egy objektum-orientált widget eszközkészlet , amely C programozási nyelven íródott ; a GObject -et , azaz a GLib objektumrendszert használja az objektum orientációjához. Míg a GTK főleg az X11 és Wayland alapú ablakrendszerekhez készült, más platformokon is működik, beleértve a Microsoft Windows -t ( a Windows API -val összekapcsolt ) és a macOS -t (a Quartz -nal ). Van még egy HTML5 háttér, Broadway .
A GTK beállítható úgy, hogy megváltoztassa a rajzolt widgetek megjelenését; ez különböző kijelzőmotorok segítségével történik. Számos kijelzőmotor létezik, amelyek megpróbálják utánozni a natív widgetek megjelenését a használt platformon.
Verziótól kezdődően 2,8, megjelent 2005-ben, a GTK kezdte meg az átállást, hogy a kairói , hogy tegyék a legtöbb grafikus vezérlőelemek kütyü . A GTK 3.0 verziója óta minden megjelenítés Kairóban történik.
2018. január 26-án a DevConf.cz webhelyen Matthias Clasen áttekintést adott a GTK 4 fejlesztésének jelenlegi állapotáról, beleértve egy magas szintű magyarázatot arról, hogy a rendering és az input hogyan működött a GTK 3-ban, milyen változások történnek a GTK 4-ben (> 3,90 ), és miért. 2019. február 6 -án bejelentették, hogy a GTK 4 elhagyja a „+” jelet a projekt nevétől.
GTK rajzkészlet (GDK)
A GDK csomagolóeszközként szolgál az ablak alatti és grafikus rendszerek által biztosított alacsony szintű funkciók köré.
A GDK megtalálható a /gdk
könyvtárban.
GTK Scene Graph Kit (GSK)
A GSK a GTK renderelő és jelenetgráf API -ja. A GSK a grafikus vezérlőelemek (widgetek) és a megjelenítés között helyezkedik el. A GSK végül beolvadt a GTK 3.90 verziójába, amely 2017 márciusában jelent meg.
A GSK megtalálható a /gsk
könyvtárban.
GtkInspector
A GtkInspector a 3.14 -es verzióval került bevezetésre. A GtkInspector csak a libgtk-3-dev / gtk+ -devel fejlesztőcsomag telepítése után hívható meg .
GUI tervezők
A GTK számára több grafikus felhasználói felület is létezik . 2011 júliusától az alábbi projektek aktívak:
- A Glade támogatja a GtkBuilder programot , amely egy GTK beépített grafikus felhasználói felület.
- Gazpacho , GUI -készítő a GTK Pythonban írt eszköztárához
- A Crow Designer saját GuiXml formátumára és GuiLoader könyvtárára támaszkodik.
- Stetic , a MonoDevelop része , a Gtk# felé irányul .
- Gambas a 2.0 verzió óta a BASIC tetején
- Xojo a Linux
- Lázár a Linux alapértelmezésben kapcsolódást GTK 2
GtkBuilder
A GtkBuilder lehetővé teszi a felhasználói felületek tervezését kódírás nélkül. A kezelőfelületet egy Extensible Markup Language (XML) fájl írja le, amelyet ezután futás közben betöltenek, és az objektumok automatikusan létrejönnek. A Glade Interface Designer lehetővé teszi a felhasználói felület létrehozását úgy, ahogy Ön látja ( WYSIWYG ). A felhasználói felület leírása független a használt programozási nyelvtől.
Nyelvi kötések
Nyelvi kötések állnak rendelkezésre a GTK használatához a C nyelvtől eltérő nyelvektől, beleértve a C ++ , Genie , JavaScript , Perl , Python , Vala és egyebeket .
A GtkSharp, amelyet nem szabad összetéveszteni a Gtk#-val, támogatja a GTK 3 -at.
Gtk#
Fejlesztő (k) | Xamarin |
---|---|
Első kiadás | 2004. március 12 . |
Stabil kiadás | 2.12.41 / 2016. szeptember 22 .
|
Előzetes verzió | 2,99,3 (GTK3 esetén) / 2014. június 6 .
|
Adattár | |
Beírva | C# , XML , Perl , C |
Operációs rendszer | Windows , macOS , Linux |
típus | Widget eszköztár |
Engedély | GNU Lesser General Public License |
Weboldal | mono-projekt |
A Gtk# .NET -keretrendszer -összerendelések halmaza a GTK grafikus felhasználói felület (GUI) eszköztárához és a különféle GNOME -könyvtárakhoz . A könyvtár megkönnyíti a grafikus GNOME -alkalmazások létrehozását Mono vagy bármely más kompatibilis Common Language Runtime (CLR) használatával. A Gtk# egy eseményvezérelt rendszer, mint bármely más modern ablakkezelő könyvtár, ahol minden widget lehetővé teszi a kezelő módszerek társítását, amelyek bizonyos események bekövetkezésekor meghívásra kerülnek.
A Gtk# használatával épített alkalmazások számos platformon futnak, beleértve a Linuxot , a Windowsot és a MacOS -t . A Windows mono csomagjai közé tartozik a GTK, a Gtk# és a natív téma, hogy az alkalmazások natív Windows -alkalmazásoknak tűnjenek. A Mono 1.9 -től kezdve a Gtk# alkalmazások futtatása a macOS rendszeren már nem igényli az X11 kiszolgáló futtatását .
A Glade Interface Designer használható a Glade# kötésekkel a GUI alkalmazások egyszerű megtervezéséhez. A Stetic nevű GUI -tervező integrálva van a MonoDevelop integrált fejlesztői környezettel (IDE).
Amellett, hogy támogatja a szabványos GTK/GNOME verem fejlesztői eszközöket, a gtk-dotnet.dll összeállítás hidat biztosít a .NET veremben elérhető funkciók fogyasztásához. Ezen a ponton ez magában foglalja a System.Drawing funkció használatát.
2020 szeptemberétől a Gtk3 Gtk3 támogatása az előzetes fázisban marad, és az elágazó projektek, mint például a GtkSharp , azért lettek létrehozva, hogy teljes mértékben támogatják a C# és más CLI nyelveket. A Gtk# kiadott, a Gtk3 támogatását támogató verziójának hiányát indokolták a Banshee médialejátszó eltávolítására az Ubuntu 12.04 rendszerben.
Fejlődés
A GTK -t elsősorban a The GNOME Project fejleszti, amely a GNOME fejlesztői platformot és a GNOME asztali környezetet is fejleszti.
A GTK fejlesztése lazán irányított. A vita elsősorban több nyilvános levelezőlistán fordul elő. A GNOME fejlesztői és felhasználói egy éves GNOME Users And Developers European Conference GUADEC találkozón gyűlnek össze, hogy megvitassák a GNOME jelenlegi állapotát és jövőbeli irányát. A GNOME tartalmazza a freedesktop.org szabványait és programjait, hogy jobban együttműködjön más asztali számítógépekkel.
A GTK főleg C nyelven íródott . Sok nyelvi kötés áll rendelkezésre .
2016. szeptember 1 -jén a GTK fejlesztési blogon megjelent bejegyzés többek között a GTK jövőbeni számozási rendszerét jelölte. A GTK 3.22 verziója 2016 őszétől lesz az utolsó 3.x kiadás. A 3.24 -es verziót 2018 őszén vezették be, a GTK 4 késleltetésével. Ezt követően minden erőforrás a GTK 4 fejlesztési sorozatba kerül, 3.90, 3.92 stb. GTK 2.x, és nincs áthelyezve a 3.22 -re. Ami a GTK -t használó régi szoftverek jövőjét illeti , nem volt közös projekt a GTK 2.x szoftver 3.22 -re való átvitelére. A 3.24 verzió hosszú távon támogatott, és olyan programok tényleges és jövőbeli alapja, mint a gimp 3.0 és az Inkscape 1.0. Tehát a fejlesztők számára a választás a stabil GTK 3.24 hibajavítással vagy a GTK 4 változásokkal és új funkciókkal a jövőbeni fejlesztésekben.
Építs automatizálást
A GTK (és a GNOME, GLib stb.) Korábban a GNU Build System -t (Autotools néven) használta választott építési automatizálási rendszerként.
Mivel augusztus 14, 2017, a mester ága GTK úgy építették fel, mezon , a Autotools építmények rendszerfájlok ejtették.
Kritika
A GTK-val kapcsolatos leggyakoribb kritika a visszafelé való kompatibilitás hiánya a főbb frissítésekben, különösen az alkalmazásprogramozási felületen (API) és a tematikában.
A kisebb kiadások közötti kompatibilitási szüneteket a GTK 3.x fejlesztési ciklus során Benjamin Otte úgy magyarázta, hogy az újításokra való erős nyomás, például a modern felhasználók által elvárható szolgáltatások biztosítása és az egyre befolyásosabb Wayland kijelzőszerver protokoll támogatása . A GTK 4 megjelenésével megszűnik az innováció iránti nyomás, és a stabilitás és az innováció közötti egyensúly a stabilitás felé billen. Hasonlóképpen, a tematikában a közelmúltban végrehajtott változtatások kifejezetten az API ezen részének javítását és stabilizálását szolgálják, ami azt jelenti, hogy bizonyos befektetéseket később jutalmazni kell.
- Dirk Hohndel, codeveloper a felszín alatti és tagja az Intel „s Open-Source Technology Center, bírálta a GTK fejlesztők annyira durva és figyelmen kívül hagyja a legtöbb közösség kéri.
- Hong Jen Yee, az LXDE fejlesztője (amelynek GTK verzióját elvetették, és minden erőfeszítést a Qt portra összpontosítottak ) megvetését fejezte ki a GTK eszköztár radikális API -változásai és a megnövekedett memóriahasználat iránt, valamint a PCMan File Manager (PCManFM) a Qt . A PCManFM -et egyidejűleg GTK -val és Qt háttérrendszerrel fejlesztik.
- Az Audacious zenelejátszó a Qt -ra költözött a 3.6 -os verzióban. A fejlesztők által megfogalmazott okok között szerepel az ügyféloldali ablakdíszítésre való áttérés, amely szerintük az alkalmazás " GNOME -y és nem megfelelő " kinézetűvé teszi.
- A Wireshark Qt-ra váltott, mivel nem rendelkezik jó tapasztalatokkal a GTK platformok közötti támogatásáról.
Használat
Alkalmazások
Néhány figyelemre méltó alkalmazás, amely a GTK -t használja vagy egyszer használta widget eszköztárként:
- GNOME Core Applications - a GNOME asztali környezet részeként, a GTK -val együtt fejlesztve.
- AbiWord - szövegszerkesztő (3.0+, GTK+ 3)
- Anjuta - Integrált fejlesztői környezet (IDE) (GTK+ 3)
- Ardor - Digitális audio munkaállomás
- Chromium - webböngésző (a 34 -es verzióig, az Aura helyett a 35+ verzióban)
- Ekiga (korábban GnomeMeeting) - VoIP és videokonferencia alkalmazás
- A GNU Emacs használhatja a GTK -t, ha X -en fut. (GTK+ 3, 24.2+)
- Evolution - Személyes információkezelő (GTK+ 3, 3.x, GTK 4, 40.0 verzió)
- gconfig - Linux kernel forrás konfigurációs segédprogram.
- Geany- könnyű, cross-platform IDE és GTK szövegszerkesztő a Scintilla alapján . (1.37.1 verzió, GTK+ 3.24.23 alapú, utolsó GTK+ 2.20+ támogatással)
- GIMP - Raszteres grafikus szerkesztő (3.0, GTK+ 3, 2.99.4 előnézet 3.0)
- Gnumeric - táblázatkezelő alkalmazás (1.12.x, GTK+ 3)
- Gramps - Genealogy szoftver (4.0+, GTK+ 3)
- Inkscape - vektorgrafikus szerkesztő az SVG (1.0.x GTK + 3)
- LiVES - Videószerkesztő (GTK+ 2.16+ vagy 3)
- Midori - Minimalista webböngésző, amely a GTKWebKit -et használja megjelenítési motorként és a GTK -t widget eszközkészletként (GTK+ 3)
- Pidgin - Azonnali üzenetküldő alkalmazás
Asztali környezetek
Számos asztali környezet használja a GTK -t widget eszközkészletként.
Jelenlegi
- A GTK -n alapuló GNOME , vagyis a GNOME -ban natív programok GTK -t használnak
- Budgie , a semmiből készült a SolusOS utódja, a Solus operációs rendszer számára
- Fahéj , a GNOME 3 villája, amely a GTK 3 verziót használja
- MATE , a GNOME 2 villája, amely GTK 3 -at használ az 1.18 -as verzió óta
- Xfce , a 4.14 -es verzió óta GTK 3 alapú
- A Pantheon kizárólag a GTK 3 -at használja, amelyet az elemi operációs rendszer fejleszt
- Sugar , asztali környezet ifjúsági alapfokú oktatáshoz , amely GTK -t , különösen PyGTK -t használ
- Bár a KDE Qt alapú, a 4.2 -es verzió óta integrálódik a GTK írott programjaihoz és témáihoz
- Phosh , a PureOS számára tervezett mobil felhasználói felület
Inaktív
- Unity , az Ubuntu korábbi alapértelmezett asztali környezete
- Az LXDE (könnyű X11 asztali környezet) a GTK 2 alapú
- Hozzáférés a Linux platformhoz (a Palm OS PDA platform utódja )
- Consort, a GNOME 3.4 Fallback Mode - villája a SolusOS -tól
- GPE , a GPE Palmtop környezet
- ROX Desktop , könnyű asztal, a RISC OS grafikus felhasználói felületének funkcióival
Vegyes
A GTK programok futtathatók asztali környezetben, X11 és Wayland alapú, vagy ablakkezelőkben, még akkor is, ha nem a GTK -val készültek, feltéve, hogy a szükséges könyvtárak telepítve vannak; ide tartozik a macOS is, ha az X11.app telepítve van. A GTK Microsoft Windows rendszeren is futtatható , ahol néhány népszerű platformközi alkalmazás, például a Pidgin és a GIMP használja. A wxWidgets , egy platformok közötti grafikus felhasználói felület, alapértelmezés szerint a GTK-t használja Linuxon. Más portok közé tartozik a DirectFB ( például a Debian telepítője ) és az ncurses .
Ablakkezelők
A következő ablakkezelők használják a GTK -t:
GtkSourceView
A szintaxis kiemeléséhez a GtkSourceView , "forráskód -szerkesztő widget" van. A GtkSourceView -t a GNOME és a GTK külön tárolja könyvtárként: gtksourceview . Tervezik a gsv -re való átnevezést.
GtkSpell
A GtkSpell a GTK -tól különálló könyvtár. A GtkSpell a GTK -tól és az Enchant -tól függ . Az Enchant az ispell, a hunspell stb. Csomagolása , a helyesírás -ellenőrző motor/szoftver. A GtkSpell a GTK GtkTextView modulját használja a hibásan írt szavak kiemeléséhez és a helyettesítéshez.
Példa
A dokumentáció itt érhető el:
A következő kód egy grafikus GTK hello-world programot mutat be C programozási nyelven . Ennek a programnak van egy ablaka "Hello, világ!" és egy címkét hasonló szöveggel.
// helloworld.c
#include <gtk/gtk.h>
/* Callback that will be called when the application is activated */
static void
activate_callback(GApplication *app, gpointer user_data)
{
GtkWidget *window;
GtkWidget *label;
/* Create the main, top level window */
window = gtk_window_new();
/* Give it the title */
gtk_window_set_title(GTK_WINDOW(window), "Hello, world!");
/* Set the window's default size */
gtk_window_set_default_size(GTK_WINDOW(window), 200, 100);
/* Assign the variable "label" to a new GTK label,
* with the text "Hello, world!" */
label = gtk_label_new("Hello, world!");
/* Plot the label onto the main window */
gtk_window_set_child(GTK_WINDOW(window), label);
/* Make the application aware of the window.
* The application process will continue to run until all
* windows are closed */
gtk_application_add_window(GTK_APPLICATION(app), GTK_WINDOW(window));
/* Make sure that everything, window and label, are visible */
gtk_widget_show(window);
}
int main (int argc, char *argv[])
{
/* Create our test application */
GtkApplication *application = gtk_application_new("org.wikipedia.gtktest", 0);
/* Connect our handler to the "activate" callback, which will be called
* when the application is activated by the user, e.g. on first start */
g_signal_connect(application, "activate", G_CALLBACK(activate_callback), NULL);
/* Run the application and return its status */
return g_application_run(G_APPLICATION(application), argc, argv);
}
Először telepíteni kell a könyvtárakat Debian vagy származékos változataiba:
$ sudo apt-get install libgtk-4-dev
Használata pkg-config egy Unix shell , ez a kód lehet összeállítani az alábbi parancsot:
$ cc -Wall $(pkg-config --cflags --libs gtk4) helloworld.c -o helloworld
A program meghívása:
$ ./helloworld
Történelem
Linux
A GTK -t eredetileg a GNU Image Manipulation Program (GIMP) programban tervezték és használták a Motif eszköztár helyett ; valamikor Peter Mattis elkedvetlenedett a Motif iránt, és elkezdte írni saját GUI eszköztárát GIMP toolkit néven, és sikeresen felváltotta a Motif -ot a GIMP 0.60 -as kiadásával. Végül a GTK-t objektum-orientáltra írták át, és átnevezték GTK+-ra. Ezt először a GIMP 0.99 -es kiadásában használták. A GTK -t később a GNOME Alapítvány karbantartásra elfogadta , amely a GNOME asztali környezetben használja.
A GTK 2.0.0 kiadási sorozatban bevezetett új funkciók, amelyek közé tartozik a továbbfejlesztett szöveges megjelenítését a Pango új témát motor, az elérhetőség javítása a Kisegítő Toolkit , átmenet a Unicode segítségével UTF-8 szövegek, és rugalmasabb API. A 2.8 -as verziótól kezdve a GTK 2 a vektorgrafika megjelenítéséhez a kairói grafikai könyvtáratól függ .
A GTK 3.0.0 verziója tartalmazta a módosított beviteli eszközkezelést, a CSS -szerű szintaxissal írt témák támogatását , valamint a többi megnyitott GTK -alkalmazásról szóló információk fogadásának lehetőségét.
A „+” -ot 2019 februárjában, egy hackathon során egyszerűen visszautasították a „GTK” -ra .
Mac operációs rendszer
A Quartz segítségével -A GTK elérhető a macOS rendszerben .
ablakok
- A GTK 2.24.10 és 3.6.4 után a Gnome bezárta a Windows fejlesztését az Installerrel. Az MSYS2 Windows rendszerre történő telepítése jó módja a tényleges GTK használatának.
- A GTK 2.24.10 és 3.6.4 elérhető az interneten, de nagyon hibás és korlátozott a tényleges verziókhoz képest.
- A Windows 64 bites verzióját Tom Schoonjans készítette el, 2021 januárjától elérhető a 2.24.33 (tényleges, mint a Linux) és a 3.24.24 (a tényleges, mint a Linux).
- A Windows 10 őszi alkotói frissítése tartalmazza a Windows alrendszert Linuxra (WSL). A Windows Store -ból elérhető Linux disztribúciókkal, mint például az Ubuntu vagy a Debian, és olyan X szerverrel, mint az Xming vagy a VcXsvr, több ezer olyan program futhat, mint a GTK 2 vagy 3, X vagy terminál támogatással.
OpenVMS
A HP kijelentette, hogy az volt a céljuk, hogy a szükséges OpenVMS változtatásokat egyesítsék a GTK 1.3 -as fejlesztési folyamába, de ez soha nem valósult meg. Az OpenVMS GTK legújabb verziója az 1.2.10.
GTK 4
A GTK 4 fejlesztési ciklus során megvalósított egyik legfőbb újdonság (azaz GTK 3.92, stb.) A funkcionalitás delegálása a kiegészítő objektumokra ahelyett, hogy a GTK által biztosított alaposztályokba kódolta volna.
- a GtkWidget által leírt jelkezelőktől származó eseménykezelés az eseményvezérlőkre van delegálva
- a renderelés GtkSnapshot objektumokra van delegálva
- a GtkWidget elrendezési mechanizmusa a GtkLayoutManager -re van átruházva
2018-január 26-án a DevConf.cz webhelyen Matthias Clasen áttekintést adott a GTK 4 fejlesztésének jelenlegi állapotáról, beleértve a magas szintű magyarázatot arról, hogy a renderelés és az input hogyan működött a GTK 3-ban, milyen változtatások történtek a GTK 4-en, és a változások okai. Példákat adtak a GTK 4 -vel lehetővé vált dolgokra is.
Kiadások
Legenda:
Régi verzió
Régebbi verzió, még mindig karbantartva
Legújabb verzió
A legújabb előzetes verzió
Jövőbeni megjelenés
|
|||||||
Kiadási sorozat | Első kiadás | Jelentős fejlesztések | A legújabb kisebb változat | ||||
---|---|---|---|---|---|---|---|
1.0 | 1998-04-13 | Első stabil verzió | 1.0.6 | ||||
1.2 | 1999-02-25 | Új kütyük :
|
1.2.10 | ||||
2.0 | 2002-03-11 |
GObject
Az UTF-8 általános támogatása |
2.0.9 | ||||
2.2 | 2002-12-22 | Többfejű támogatás | 2.2.4 | ||||
2.4 | 2004-03-16 | Új kütyük:
|
2.4.14 | ||||
2.6 | 2004-12-16 | Új kütyük:
Az utolsó, amely támogatja a Windows 98 / Me rendszert |
2.6.10 | ||||
2.8 | 2005-08-13 | A legtöbb kütyüt Kairó jeleníti meg | 2.8.20 | ||||
2.10 | 2006-07-03 | Új kütyük:
Nyomtatási támogatás: GtkPrintOperation |
2.10.14 | ||||
2.12 | 2007-09-14 | GtkBuilder | 2.12.12 | ||||
2.14 | 2008-09-04 | JPEG 2000 betöltési támogatás | 2.14.7 | ||||
2.16 | 2009-03-13 | Új widget: GtkOrientable
Caps Lock figyelmeztetés a jelszó megadásakor GtkScale, GtkStatusIcon, GtkFileChooser fejlesztések |
2.16.6 | ||||
2.18 | 2009-09-23 | Új widget: GtkInfoBar
Fejlesztés a fájlválasztóban, nyomtatásban Az X11 alkalmazás és az X11 szerver közötti szükséges IPC nagy részének eltávolítása érdekében a GDK- t átírja (főleg Alexander Larsson), hogy "ügyféloldali ablakokat" használjon, azaz a GdkWindow, amely minden widgetnek rendelkeznie kell, most az ügyfélhez tartozik |
2.18.9 | ||||
2.20 | 2010-03-23 | Új kütyük:
Fejlesztés a fájlválasztóban, a billentyűzet kezelésében, a GDK -ban Az önvizsgálati adatok mostantól szerepelnek a GTK -ban |
2.20.1 | ||||
2.22 | 2010-09-23 |
A GdkPixbuf külön modulba költözött
A legtöbb GDK rajz Kairón alapul Sok belső adat ma már privát, és lezárható a GTK 3 előkészítése során |
2.22.1 | ||||
2.24 | 2011-01-30 | Új widget: GtkComboBoxText
A CUPS nyomtatási háttérprogram nyomtatási feladatokat küldhet PDF formátumban A GtkBuilder támogatást kapott a szöveges címkékhez és a menü eszközgombjaihoz, és sok önvizsgálati megjegyzés -javítást is hozzáadtak |
2.24.32 (2018-01-08) |
||||
3.0 | 2011-02-10 | Az eszközkészlet GTK 3 kiadásának fejlesztése és tervezése 2009 februárjában kezdődött a dublini GTK Theming Hackfest során
Többnyire befejezte a Ridley projektet
Minden renderelés Kairó segítségével történik A GDK inkább X11 agnosztikus lett Az XInput2 téma API Cascading Style Sheets (CSS) alapú, ami rontja az elérhető teljesítményt a 60 Hz -es képsebességnél |
3.0.12 | ||||
3.2 | 2011-09-25 | Új kütyük:
Új betűtípusválasztó párbeszédpanel Új kísérleti háttérprogramok: |
3.2.4 | ||||
3.4 | 2012-03-26 | Menütámogatás a GtkApplication alkalmazásban
Új színválasztó Hozzáadott támogatás az érintőképernyős eszközökhöz Hozzáadott támogatás a sima görgetéshez A GtkScrolledWindow kinetikus görgetést végez érintőképernyős eszközökkel javult a macOS támogatás Ez az első GTK 3 verzió, amely jól működik Windows rendszeren A Wayland háttérprogram frissítve van a Wayland aktuális verziójára A centrifugáló gombok új megjelenést kaptak Kisegítő lehetőségek: a fa nézetben elérhető támogatás átírásra kerül Teljes körű CSS -tematikai támogatás |
3.4.4 | ||||
3.6 | 2012-09-24 | Új kütyük:
Függőleges centrifugáló gombok CSS animációk, homályos árnyékok Támogatja a kereszthalványulást és az átmeneteket a témákban |
3.6.5 | ||||
3.8 | 2013-03-25 | Wayland 1.0 stabil támogatás
A Broadwayd szerver támogatása Továbbfejlesztett témák Jobb geometriakezelés Érintési fejlesztések A keret szinkronizálási protokoll támogatása az ablakkezelővel GdkFrameClock hozzáadva |
3.8.9 | ||||
3.10 | 2013-09-23 | Új kütyük:
A Wayland támogatása 1.2
Hozzáadva:
Eltávolítva:
Letéphető menüpontok, valamint számos GTK beállítás |
3.10.9 | ||||
3.12 | 2014-03-25 | Ügyféloldali dekorációk
A Wayland támogatása 1.5 Új widget: GtkPopover (a menük és párbeszédablakok alternatívája) |
3.12.2 | ||||
3.14 | 2014-09-22 |
GtkInspector (a gtkparasite másolata)
A gesztusok / multi-touch egyesített továbbfejlesztett támogatása Elavult:
A legtöbb kütyü belső gesztusokra vált A Wayland támogatja a GNOME Shell klasszikus módját |
3.14.15 | ||||
3.16 | 2015-03-22 | A GDK támogatja az ablakok renderelését OpenGL használatával X11 és Wayland libepoxy használatával
Új kütyük:
A görgetés nagyjavított (a görgetősáv alapértelmezés szerint el van rejtve) Kísérleti Mir háttérrendszer |
3.16.7 | ||||
3.18 | 2015-09-23 | CSS csomópont infrastruktúra hozzáadása
Több fájlkezelő frissítés és jobb fájlkeresési keresés Megszűnt a Windows XP támogatás Modell támogatás a listához és a folyamatdobozhoz Kinetikus érintőpad görgetés Az érintőpad gesztusai (Wayland) gtk-builder-tool segédprogram Csak kimeneti ablakok |
3.18.9 | ||||
3.20 | 2016-03-21 | A CSS csomópontok további integrálása
Mozgassa a húzást lefelé a GDK -ra Új widget: GtkShortcutsWindow (az alkalmazás billentyűkódjait és gesztusait mutatja) |
3.20.10 | ||||
3.22 | 2016-09-21 | Utolsó 3.x kiadás
A Wayland táblagépek támogatása összevonásra került, a grafikus táblagépek támogatása befejezettnek tekinthető A GTK 3.22 ugyanolyan sziklaszilárd (és ezért "unalmas"), mint a GTK 2 |
3+ évre 3.22.29 |
||||
3.24 | 2018-09-03 | A 3.22 -nek a GTK 3 sorozat utolsó verziójának kellett lennie
Függőségi ütések - szükséges:
Új betűválasztó funkciók:
Az Emoji új funkciói:
További új API -k: gdk_window_move_to_rect Wayland: használjon névtelen megosztott memóriát a FreeBSD -n Visszaportált eseményvezérlők a GTK 4 -ből:
Szüntessen meg néhány API -t, amelyek a GTK 4 -ben megszűntek:
|
3.23.0 3.23.1 3.23.2 3.23.3 3.24.0 ... 3.24.5 3.24.14 ... |
||||
3,90 | 2017-03-31 |
A GTK Scene Graph Kit (GSK) egyesült
Távolítson el minden elavultként megjelölt API -t Súlyos fejlődés
|
3.89.1 |
||||
3,92 | 2017-10-18 | Mivel a GNOME 3.26 már 2017. szeptember 13 -án megjelent, nem a GTK 3.92 -en alapult.
A GNU automatikus eszközöket Meson váltotta fel . |
3.91.0 |
||||
3.94 | 2018-06-26 | 3.93
A GdkWindow átnevezték GdkSurface -re Új absztrakció a rajzolható tartalomhoz: GdkPaintable Támogatott a média megjelenítése a következőkkel:
|
3,93 3,94,0 |
||||
3.96 | 2019-05-07 | A gtk4-builder-tool simplify parancs --3to4lehetőséget kapott a GTK3 ui fájlok GTK4-re konvertálására; bár az AMTK menük, az eszköztárak vagy más objektumok, például a GtkShortcutsWindow programozottan jönnek létre (nem *.ui fájllal), hanem kényelmes API -kkal.
A GtkWidget mostantól használhatja a GtkLayoutManager programot méretkiosztáshoz
A fókuszkezelést átírták, és a fókuszváltás eseménygenerálását egyesítették a keresztező eseményekkel Az eseményeket leegyszerűsítették, és csak bemenetként használják:
|
3.96.0 | ||||
3,98 | 2020-02-10 |
|
3.98.5 | ||||
3.99.0 | 2020-07-31 |
|
3.99.4 | ||||
4.0 | 2020-12-16 | 4.0.2 | |||||
4.2 | 2021-03-30 | ||||||
4.4 | 2021-08-23 |
Lásd még
- Ügyféloldali dekoráció
- A widget eszköztárainak listája
- GDK- a GIMP rajzkészlet az xlib és a GTK könyvtár között helyezkedik el, és kezeli az alapvető renderelést, például primitív rajzokat, raszteres grafikákat (bitképeket), kurzorokat, betűtípusokat, valamint az ablak eseményeit és a drag and drop funkciókat
- gtkmm - C ++ kötések a GTK számára
- Qt - platformok közötti keretrendszer és eszköztár
- Xojo -platformok közötti fejlesztési eszköz és keretrendszer
- Enlightenment Foundation Libraries (EFL) - widget eszközkészlet a felvilágosodás ablakkezelőjének
- FLTK- könnyű, platformok közötti, nem natív widget eszközkészlet
- FOX eszközkészlet- gyors, nyílt forráskódú, platformok közötti widget eszközkészlet
- IUP -többplatformos eszközkészlet natív grafikus felhasználói felületek létrehozásához
- Végső ++
- Vizuális komponens könyvtár (VCL)
- Vala- objektumorientált programozási nyelv, önálló tároló fordítóval, amely C kódot generál és a GObject rendszert használja.
- wxWidgets - többplatformos GUI -eszközkészlet, amelynek célja az egyes platformok natív grafikus API -jának közvetlen használata, amikor csak lehetséges.
Hivatkozások
Bibliográfia
- Krause, Andrew (2007. április 23.), A GTK+ Development alapjai (1. kiadás), Apress , ISBN 978-1-59059-793-4
- Wright, Peter (2000. május 15.), Beginning GTK+ és GNOME (1. kiadás), Peer Information , ISBN 978-1-86100-381-2
- Logan, Syd (2001. szeptember 6.), Gtk+ Programming in C (1. kiadás), Prentice Hall , ISBN 978-0-13-014264-1
Külső linkek