GTK+

Dari Wikipedia bahasa Indonesia, ensiklopedia bebas
Langsung ke: navigasi, cari
GTK+
Logo GTK+
Pengembang GNOME Foundation
Rilis stabil 2.16.0 (13 Maret 2009; 5 tahun yang lalu (2009-03-13))
Bahasa pemograman C
Sistem operasi Antar-platform
Jenis Widget toolkit
Lisensi GNU Lesser General Public License
Situs web resmi www.gtk.org

GTK+ atau GIMP Toolkit adalah sebuah widget toolkit antar-platform untuk menghasilkan GUI. GTK+ adalah salah satu toolkit terpopular untuk Sistem X Window, bersama-sama dengan Qt.

GTK+ mulanya dibuat untuk GNU Image Manipulation Program, sebuah penyunting grafik raster, pada 1997 oleh Spencer Kimball dan Peter Mattis, anggota eXperimental Computing Facility di University of California, Berkeley.

Dilisensikan di bawah GNU Lesser General Public License, GTK+ adalah perangkat lunak bebas dan bagian dari Projek GNU.

Desain[sunting | sunting sumber]

GTK+ ditulis di dalam bahasa pemrograman C, dan desainnya menggunakan sistem objek GObject. Platform GNOME menyediakan language binding untuk:

Yang lainnya telah menuliskan beberapa binding untuk banyak bahasa pemrograman lainnya (termasuk Ada, D), Fortran, Haskell, Lua, Ocaml, Pascal, Pike, Javascript [1][2][3] Tcl, Euphoria, dan semua bahasa pemrograman .NET). GTK-server menyediakan antarmuka IPC bagi GTK+ yang memungkinkannya digunakan dari beraneka bahasa dengan kapabilitas I/O, termasuk shell script.[4] Binding untuk banyak bahasa dapat dibangkitkan secara automatik melalui GObject-introspection.

Bahasa-bahasa purpose-written untuk GObject dan oleh karenanya juga, GTK+ menyertakan Vala dan GOB.

Seperti Qt, tetapi tidak sama dengan beberapa toolkit widget lainnya, GTK+ tidak didasarkan pada Xt. Ini memungkinkan fleksibilitas dan memungkinkan GTK+ dapat digunakan pada semua platform yang tidak memiliki Sistem X Window. Tetapi, tanpa kebergantungan ini, GTK+ memiliki kelemahan akses terhadap basis data X resources, cara tradisional untuk mengkustomisasi aplikasi-aplikasi X11.

GTK+ mulanya menyertakan beberapa rutin utilitas yang tidak secara tegas berhubungan dengan grafik, misalnya menyediakan beberapa struktur data sebagai daftar-daftar yang saling terpaut dan beberapa pohon biner. Utilitas-utilitas umum sedemikian, bersama-sama dengan sistem objek disebut GObject, kini telah bermigrasi menjadi pustaka terpisah, GLib, yang dapat digunakan para programer untuk mengembangkan kode yang tidak memerlukan antarmuka grafis.

Platform[sunting | sunting sumber]

GTK+ mulanya ditargetkan pada Sistem X Window, dan masih menyisakan platform target utamanya. Platform lain yang ditargetkan adalah Microsoft Windows (Windows 2000 dan yang lebih baru, hampir didukung sepenuhnya), DirectFB, dan Quartz (Mac OS X v10.4 dan yang lebih baru, masih dikembangkan).

Tampilan dan citarasa[sunting | sunting sumber]

Pengguna-akhir dapat mengonfigurasi tampilan toolkit-nya, hingga kepada pemberian sejumlah mesin tampilan yang berbeda. Mesin-mesin yang ada yang berupaya mengemulasi tampilan toolkit atau platform popular lainnya seperti Windows 95, Motif, Qt dan NEXTSTEP.

Sejarah[sunting | sunting sumber]

GTK+ 2 adalah pengganti GTK+ 1. Fitur-fitur barunya antara lain render teks yang diperbaiki menggunakan Pango, mesin tema baru, aksesibilitas yang diperbaiki menggunakan Accessibility Toolkit, peralihan sepenuhnya ke Unicode menggunakan string-string UTF-8 dan API yang lebih fleksibel. Tetapi, GTK+ 2 kurang kompatibel dengan GTK+ 1, dan para programer harus menge-port aplikasi ke GTK+ 2.

Mulai versi 2.8, GTK+ 2 bergantung kepada pustaka Cairo untuk merender grafik vektor pada GTK+ 2.

Rilis[sunting | sunting sumber]

Pengembangan masa depan[sunting | sunting sumber]

Projek Ridley adalah upaya untuk mengonsolidasi beberapa pustaka yang saat ini masih di luar GTK+, misalnya libgnome, libgnomeui, libgnomeprint22, libgnomeprintui22, libglade, libgnomecanvas, libegg, libeel, dan gtkglext.[5]

Para pengembanga juga memperhatikan arah-arah baru pustaka, termasuk penghentian ABI, penghilangan komponen-komponen API yang diperselisihkan, dan menambahkan sistem scene graph yang utuh, sama dengan pustaka grafis Clutter, mengintegrasikan GTK+ secara utuh dengan OpenGL.[6][7]

GTK hello world[sunting | sunting sumber]

GTK hello world di Linux

Penggunaan[sunting | sunting sumber]

Lingkungan yang menggunakan GTK+[sunting | sunting sumber]

  • GNOME didasarkan pada GTK+, artinya program-program GNOME menggunakan GTK+
  • Xfce didasarkan pada GTK+, meskipun aplikasi-aplikasinya biasanya tidak bergantung kepada banyak pustaka (inilah perbedaan antara sesuatu yang dicap sebagai "program GNOME" atau sebagai "program GTK+")
  • LXDE didasarkan pada GTK+, singkatan untuk "Lightweight X11 Desktop Environment"
  • ROX Desktop adalah desktop yang ringan, dengan fitur-fitur dari GUI-nya RISC OS
  • GPE Palmtop Environment
  • Maemo (framework tablet-internet Nokia)
  • Access Linux Platform (pengganti platform PDA Palm OS)
  • Projek Satu Laptop Per Anak menggunakan GTK+ dan PyGTK
  • Projek Broncho (sebuah projek linux mobile)

Pengelola jendela[sunting | sunting sumber]

Aplikasi[sunting | sunting sumber]

Beberapa aplikasi terkenal yang menggunakan GTK+ sebagai toolkit widget-nya adalah:

  • AbiWord - Pengolah kata
  • CinePaint (bekas FilmGimp) - Penyunting grafik beranimasi HDR Raster
  • Ekiga (bekas GnomeMeeting) - Perangkat lunak telepon VoIP H.323/SIP
  • Evolution - Alat kirim-terima surat elektronik
  • Firefox - alat selancar web
  • GIMP - Penyunting grafik raster
  • Gnumeric - Perangkat lunak lembar hampar
  • Chromium - Alat selancar web yang didasarkan pada Webkit dan sebagian besar dikembangkan oleh Google
  • GRAMPS - Perangkat lunak genealogi
  • Inkscape - Penyunting grafik vektor SVG
  • K-3D - Program animasi dan pemodelan 3-dimensi yang bebas
  • Marionnet - Simulator jejaring interaktif
  • Midori - Alat selancar web portabel
  • Nero Linux - Program autorisasi media cakram
  • Pidgin - Pesan instan
  • VMware Player - Mesin virtual
  • Wireshark - Analis, dekode, dan capture paket

Lihat pula[sunting | sunting sumber]

Referensi[sunting | sunting sumber]

Pranala luar[sunting | sunting sumber]