GTK: Perbedaan antara revisi
Konten dihapus Konten ditambahkan
update |
Reno-Sifana (bicara | kontrib) k Perbaikan Tata Bahasa |
||
(51 revisi perantara oleh 12 pengguna tidak ditampilkan) | |||
Baris 1:
{{Infobox software
| name = GTK
| logo =
|
| screenshot = Awf-2020-2.png
| latest release version = 3.14.8▼
| caption = Contoh kumpulan widget GTK 3
| latest release date = {{release date|2015|01|31}}▼
| author = Spencer Kimball, Peter Mattis
| latest preview version = ▼
| developer = The GNOME Project, eXperimental Computing Facility (XCF)
| released = {{start date and age|1998|04|14}}
| programming language = [[C (bahasa pemrograman)|C]]▼
▲| latest release date = {{release date|
| genre = [[Widget toolkit]]▼
| url = https://mail.gnome.org/archives/ftp-release-list/2021-March/msg00201.html
| license = [[GNU Lesser General Public License]]▼
|
| date = 30 Maret 2021
| accessdate = 1 April 2021
| last = Clasen
| first = Matthias
| mailinglist = GNOME Mail Services}}</ref>
▲| latest preview version = 4.1.0
| latest preview date = {{release date|2021|01|31}}<ref name="latest preview">{{cite mailing list
| url = https://mail.gnome.org/archives/ftp-release-list/2021-January/msg00100.html
| title = gtk 4.1.0
| date = 31 Januari 2021
| accessdate = 22 Februari 2021
| last = Clasen
| first = Matthias
| mailinglist = GNOME Mail Services}}</ref>
| status = Aktif
▲| programming language = [[C (bahasa pemrograman)|C]], [[CSS]]
| operating system = [[Linux]], [[Mirip Unix]], [[Microsoft Windows|Windows]], [[OS X]]
| website = {{URL|https://www.gtk.org/}}
}}
'''GTK
GTK
Dilisensikan di bawah [[LGPL|GNU Lesser General Public License]], GTK
== Desain ==
{{main|Daftar ikatan bahasa untuk GTK}}{{Pemutakhiran|date=Maret 2021|reason=Untuk bagian "platform" dan "tampilan dan citarasa" perlu dimutakhirkan agar sesuai dengan perkembangan terbaru}}
GTK ditulis di dalam [[bahasa pemrograman C]], dan desainnya menggunakan [[sistem objek]] [[GObject]]. Berikut adalah beberapa ''[[language binding]]'' (ikatan bahasa) untuk GTK:<ref>{{Cite web|url=https://www.gtk.org/docs/language-bindings/index|title=Language Bindings|website=The GTK Project|access-date=23 Februari 2021|archive-date=2023-06-25|archive-url=https://web.archive.org/web/20230625053241/https://www.gtk.org/docs/language-bindings/index|dead-url=no}}</ref>
* [[C++]] ([[gtkmm]])▼
* [[
* [[
* [[
* [[
* [[
* [[PyGObject]] ([[Python (bahasa pemrograman)|Python]])
* Vala ([[Vala (bahasa pemrograman)|Vala]])
Yang lainnya telah menuliskan beberapa binding untuk banyak [[bahasa pemrograman]] lainnya (
Salah satu languange binding untuk GTK yang menggunakan GObject-introspection diantaranya PyGObject, Vala, GJS dan seed.
Seperti [[Qt]], tetapi tidak sama dengan beberapa toolkit widget lainnya, GTK
GTK
=== Platform ===
GTK
=== Tampilan dan citarasa ===
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
== Sejarah ==
Baris 49 ⟶ 71:
Mulai versi 2.8, GTK+ 2 bergantung kepada pustaka [[Cairo (graphics)|Cairo]] untuk merender grafik vektor pada GTK+ 2.
GTK+ 3.0 merupakan pembaruan besar yang dirilis pada bulan Februari 2011 sebagai pengganti dari GTK+ 2. Fitur-fitur utama barunya mencakup pembaruan penanganan perangkat input, API tema baru menggunakan [[Cascading Style Sheets|CSS]] untuk membuat tema, dukungan untuk memilih beberapa backend untuk GDK saat runtime, beberapa widget baru, dan masih banyak lagi.<ref>{{Cite web|title=February 2011 – GTK Development Blog|url=https://blog.gtk.org/2011/02/|language=en-US|access-date=2021-02-23|archive-date=2023-05-18|archive-url=https://web.archive.org/web/20230518234813/https://blog.gtk.org/2011/02/|dead-url=no}}</ref>
=== Rilis ===▼
Huruf '+' pada GTK+ dihilangkan menjadi GTK saja pada saat [[Hackathon|Hackaton]].<ref>{{Cite web|title=Rename some references to GTK+ (d080be3e) · Commits · GNOME / gtk|url=https://gitlab.gnome.org/GNOME/gtk/commit/d080be3e5091c98d5171063a95d55c01170881f3|website=GitLab|language=en|access-date=2021-02-23|archive-date=2021-02-25|archive-url=https://web.archive.org/web/20210225124433/https://gitlab.gnome.org/GNOME/gtk/commit/d080be3e5091c98d5171063a95d55c01170881f3|dead-url=no}}</ref>
GTK 4 yang merupakan versi terbaru dari GTK, dirilis pada Desember 2020. GTK 4 menghadirkan fitur-fitur baru seperti perenderan menggunakan [[Vulkan (API)|Vulkan]], pembaruan untuk API [[Drag and Drop|drag-and-drop]], dukungan untuk shaders, dan masih banyak lagi.<ref>{{Cite web|title=GTK 4.0 – GTK Development Blog|url=https://blog.gtk.org/2020/12/16/gtk-4-0/|language=en-US|access-date=2021-02-23|archive-date=2023-05-28|archive-url=https://web.archive.org/web/20230528122452/https://blog.gtk.org/2020/12/16/gtk-4-0/|dead-url=no}}</ref>
== GTK hello world ==
<syntaxhighlight lang="c">
#include <gtk/gtk.h>
int main (int argc, char argv[])
{
gtk_init (&argc, &argv);
GtkWidget * window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (window), 400 , 400);
gtk_window_set_tile (GTK_WINDOW (window), "Hello World! ");
g_signal_connect (G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);
gtk_main ();
return 0;
}
</syntaxhighlight>
=== Sampel 2 ===
<syntaxhighlight lang="c">
#include <gtk/gtk.h>
int main (int argc, char argv[])
{
gtk_init (&argc, &argv);
GtkWidget * window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
gtk_window_set_default_size (GTK_WINDOW (window), 400 , 400);
gtk_window_set_tile (GTK_WINDOW (window), "Hello GTK!\nHello World GTK Sample");
g_signal_connect (G_OBJECT(window), "destroy", G_CALLBACK(gtk_main_quit), NULL);
gtk_main ();
return 0;
}
</syntaxhighlight>
== Penggunaan ==
=== Lingkungan yang menggunakan GTK
<!--{{GAMBAR - [[Layar cuplik]] [[GIMP]] 2.0. GTK
* [[GNOME]] didasarkan pada GTK
* [[Xfce]] didasarkan pada GTK
* [[LXDE]] didasarkan pada GTK
* [[ROX Desktop]] adalah desktop yang ringan, dengan fitur-fitur dari [[GUI]]-nya [[RISC OS]]
* [[GPE Palmtop Environment]]
* [[Maemo Platform|Maemo]] (framework tablet-internet [[Nokia]])
* [[Access Linux Platform]] (pengganti platform [[Personal digital assistant|PDA]] [[Palm OS]])
* Projek [[XO-1 (laptop)|Satu Laptop Per Anak]] menggunakan GTK
* Projek [[Broncho]] (sebuah projek linux mobile)
Baris 77 ⟶ 126:
=== Aplikasi ===
Beberapa aplikasi terkenal yang menggunakan GTK
* [[AbiWord]] - Pengolah kata
* [[CinePaint]] (bekas FilmGimp) - Penyunting grafik beranimasi [[High dynamic range imaging|HDR]] Raster
* [[Ekiga]] (bekas GnomeMeeting) - Perangkat lunak telepon VoIP H.323/SIP
* [[Evolution (software)|Evolution]] - Alat kirim-terima surat elektronik
Baris 94 ⟶ 143:
* [[Pidgin (software)|Pidgin]] - Pesan instan
* [[VMware Player]] - Mesin virtual
* [[Wireshark]] - Analis, dekode, dan capture paket (diganti dengan [[Qt]] sejak versi 1.11.0<ref>{{Cite web|title=We’re switching to Qt. {{!}} Sniff free or die|url=https://blog.wireshark.org/2013/10/switching-to-qt/|language=en-US|access-date=2021-02-23|archive-date=2013-10-19|archive-url=https://web.archive.org/web/20131019164809/https://blog.wireshark.org/2013/10/switching-to-qt/|dead-url=no}}</ref>)
== Lihat pula ==
* [[Daftar toolkit widget|Daftar toolkit gawit]]
* [http://en.wiki-indonesia.club/wiki/Portal:Free_software Portal perangkat lunak bebas] {{Webarchive|url=https://web.archive.org/web/20230625000052/https://en.wiki-indonesia.club/wiki/Portal:Free_software |date=2023-06-25 }}
* [http://en.wikibooks.org/wiki/X_Window_Programming/GTK+ Buku wiki tentang GTK
== Referensi ==
Baris 105 ⟶ 154:
== Pranala luar ==
* [http://www.gtk.org/ Situs web GTK
* [http://expander.gtk.org/ Planet GTK
* [http://www.gtk-apps.org/ Daftar aplikasi GTK
[[Kategori:GTK| ]]▼
[[Kategori:Projek GNU]]
▲[[Kategori:GTK]]
[[Kategori:Perangkat lunak projek GNU]]
[[Kategori:Toolkit widget]]▼
[[Kategori:Antarmuka pemrograman aplikasi]]
[[Kategori:Pustaka dan toolkit pengembangan bebas]]
[[Kategori:Pustaka berbasis-X]]
[[Kategori:Perangkat lunak bebas yang diprogram dengan C]]
[[Kategori:
[[Kategori:Perangkat lunak lintas platform]]
|