Топ-100
Indietro

ⓘ GTK, toolkit. GTK in informatica, è un toolkit per la creazione di interfacce grafiche. Sviluppato in C, supporta nativamente lambiente grafico X Window System ..




GTK (toolkit)
                                     

ⓘ GTK (toolkit)

GTK in informatica, è un toolkit per la creazione di interfacce grafiche. Sviluppato in C, supporta nativamente lambiente grafico X Window System e Microsoft Windows ed è software libero secondo la licenza LGPL.

Il toolkit, progettato inizialmente come ausilio alla programmazione per il noto programma di grafica GIMP, ha acquisito popolarità scavalcando Motif e divenendo parte fondamentale dellambiente desktop GNOME.

                                     

1. Linguaggio

GTK usa il linguaggio di programmazione C esteso, grazie a GLib e GObject, al paradigma della programmazione orientata agli oggetti. GTK fornisce binding per linguaggi come il C++, il Perl, il Ruby, il Java e Python PyGTK. Altri hanno aggiunto anche il supporto ad altri linguaggi come Ada, Fortran, D, Haskell, Pascal, PHP, Pike e C# grazie a Mono Gtk#.

                                     

2. Codice non collegato alla grafica

GTK inizialmente conteneva alcune funzioni di utilità che non riguardavano strettamente la grafica, per esempio la fornitura di strutture dati come liste concatenate e alberi binari. Tali utilità generali, insieme con il sistema a oggetti chiamato GObject, ora sono stati migrati in una libreria GLib separata, che i programmatori possono utilizzare per sviluppare codice che non necessita di una interfaccia grafica. Un tipico esempio di questo approccio è il progetto GStreamer. GLib è comunque mantenuta dagli sviluppatori di GTK.

Per la sua estendibilità, portabilità e bontà tecnica è stata scelta come componente per altri widget toolkit, come wxWidgets.

                                     

3. Piattaforme

In origine la GTK era destinata solo allX Window System, che comunque rimane la piattaforma di riferimento. Attualmente può essere installata su Microsoft Windows dalla versione 2.8 è richiesto Windows 2000 o superiore, DirectFB, e Quartz Mac OS X Tiger o superiore, ancora in sviluppo.

                                     

4. Aspetto

Lutente finale può configurare laspetto dellinterfaccia a suo piacimento grazie alla possibilità di cambiare il tema utilizzato. Si possono così emulare le sembianze di altre librerie o di altri ambienti, tra i quali Windows 95, Motif, Qt o NEXTSTEP.

                                     

5. Storia

GTK+ 2

GTK+ 2 si è sviluppata con lintenzione di sostituire e migliorare la GTK+. Tra le nuove caratteristiche, inserite gradualmente già dalla GTK+ originale, si segnalano:

  • un gestore dei temi introdotto già dalla versione 1.2.0 ma rielaborato successivamente per consentire la personalizzazione di ogni singolo elemento grafico
  • la completa transizione a Unicode con ladozione di stringhe UTF-8 dalla versione 1.3.2
  • una API più flessibile a seguito dello spostamento della logica ad oggetti nella libreria GObject dalla versione 1.3.1
  • accessibilità ai disabili migliorata con luso della libreria ATK a partire dalla versione 1.3.5
  • una gestione migliorata del rendering del testo internazionale con Pango introdotto nella versione 1.3.1

Tuttavia, GTK+ 2 non è compatibile con GTK+ 1, ed i programmatori devono migrare il loro vecchio codice.

A partire dalla versione 2.8, GTK+ 2 dipende dalla libreria Cairo per il rendering dellinterfaccia mediante grafica vettoriale 2D.



                                     

6.1. Usi Ambienti che usano GTK

Le librerie GTK sono parte integrante del progetto GNOME e sono perciò le fondamenta dellinterfaccia utente di ogni programma sviluppato per GNOME. La versatilità e la relativa leggerezza hanno consentito alle GTK+ di essere alla base di altri desktop environment considerati più leggeri. Infatti esiste una versione di GNOME dedicata agli ambienti embedded GNOME Mobile. Ad oggi sono usate per i seguenti ambienti:

  • Access Linux Platform successore della piattaforma Palm OS PDA
  • Xfce è basato su GTK, anche se le sue applicazioni tipicamente non dipendono da molte librerie questa è la differenza tra quello che è marcato" applicazione GNOME” e quello che è semplicemente" applicazione GTK”.
  • Openmoko telefono, GPS e palmare Linux, utilizza GTK per linterfaccia fin dalla prima versione anche se nelle ultime distribuzioni supporta anche QT ed Enlightenment.
  • GNOME è basato su GTK, quindi le applicazioni GNOME usano GTK
  • One Laptop per Child il progetto caritatevole "Un laptop per ogni bambino" usa GTK+ e PyGTK
  • ROX Desktop è un desktop leggero, con funzioni che provengono dalla GUI del RISC OS
  • Maemo Ambiente TabletPC-Internet Nokia
  • LXDE è basato su GTK, lacronimo significa "Lightweight X11 Desktop Environment"
  • GPE Palmtop Environment Linux sui palmari e Familiar Linux

Non è necessario usare questi ambienti grafici per eseguire programmi GTK. Se un programma richiede le librerie e queste sono installate, può funzionare anche su altri ambienti basati su X11, come KDE; Questo comprende Mac OS X se X11.app è installato. GTK può funzionare anche su Microsoft Windows, ed è utilizzato da alcune popolari applicazioni cross-platform come GIMP e Pidgin. wxWidgets, un cross-platform GUI toolkit, usa GTK su tutti i sistemi Unix. Alcuni port tra i più insoliti sono DirectFB e ncurses.



                                     

6.2. Usi Applicazioni scritte usando GTK

Alcune significative applicazioni multipiattaforma con codice aperto che usano GTK come widgets toolkit:

  • Evolution - Mailer
  • Mozilla Thunderbird - Mailer
  • Netscape - Internet suite
  • Mozilla Seamonkey - Internet suite
  • CinePaint ex FilmGimp - Editor di immagini Raster HDR
  • Wireshark ex Ethereal - Sniffer, decodifica e analizzatore di pacchetti
  • K-3D - Modellatore 3D con animazione
  • gMplayer - Player Video multiformato
  • Ekiga ex GnomeMeeting - H.323/SIP VoIP softphone
  • Pidgin ex GAIM - Programma di Chat multiprotocollo
  • VMware Server 1.x - Macchina Virtuale
  • GStreamer - server per applicazioni multimediali usa solo GLib/GObject
  • GIMP - Editor di immagini Raster
  • Mozilla Firefox - Browser
  • Inkscape - Editor di immagini vettoriali SVG
                                     
  • GTK codice aeroportuale IATA dell aeroporto civile di Sungei Tekai Malaysia GTK toolkit per la creazione di interfacce grafiche gtk - - nome precedente
  • Development Toolkit Claro toolkit Dojo Toolkit FOX toolkit Globus Toolkit GTK the GIMP Toolkit GWT, Google Web Toolkit Harmony toolkit Insight Segmentation
  • Gtk HTML è un motore di rendering scritto C usando il toolkit GTK È usato da varie applicazioni GTK principalmente dal cliente di posta elettronica
  • Standard Widget Toolkit SWT è un toolkit grafico open source concepito per la piattaforma Java. Fu distribuito nel novembre 2001 per lo sviluppo del
  • Media Lovin Toolkit spesso abbreviato MLT è una piattaforma software multimediale open source sviluppata per la diffusione televisiva. Questo framework
  • kernel Linux, con un ambiente grafico sviluppato utilizzando X.Org, GTK toolkit e Matchbox window manager. Il framework OpenEmbedded e il sistema di
  • semplicemente Glade, è un software per la creazione di GUI basate sul celebre toolkit GTK con componenti aggiuntive per l ambiente desktop GNOME. Non includendo
  • gtkmm è l interfaccia C ufficiale del popolare toolkit grafico GTK Include le typesafe callback e un completo set di widget facilmente estendibili
  • supportati dal sistema. Il programma è scritto in C C e usa il toolkit grafico GTK che lo rende indipendente dalla piattaforma. È disponibile per quasi
  • ma dalla versione 2.26 usa per default il nuovo motore WebKit Gtk la portabilità su GTK di WebKit della Apple. Tra le caratteristiche ci sono la funzione