Peralatan gawit
Peralatan gawit (bahasa inggris: widget toolkit), pustaka gawit, peralatan GUI, atau pustaka UX adalah sebuah pustaka atau koleksi dari perpustakaan yang mengandung sekumpulan elemen kontrol grafis digunakan untuk membangun antarmuka grafis pengguna (graphical user interface/GUI) suatu program.
Kebanyakan peralatan gawit biasanya memasukkan mesin rendering buatan sendiri sebagai tambahan. Mesin ini dapat dikhususkan untuk sistem operasi atau sistem penjendelaan tertentu atau memiliki back-end untuk antarmuka dengan banyak yang lain dan juga dengan API rendering seperti OpenGL, OpenVG, atau EGL.
Gambaran
Beberapa toolkit mungkin dapat digunakan dari berbagai bahasa pemrograman dengan memperkerjakan pengikat bahasa. Pembangun antarmuka grafis pengguna seperti Glade Interface Designer memfasilitasi pembuatan GUI dalam bentuk WYSIWYG dengan memperkerjakan sebuah bahasa markah antarmuka pengguna seperti dalam kasus ini GtkBuilder.
Kebanyakan perlatan gawit menggunakan event-driven programming sebagai model untuk interaksi.. Ketika suatu peristiwa dideteksi, contohnya ketika pengguna mengklik suatu tombol, sinyal tersebut akan diteruskan ke aplikasi di mana ia ditangani. Desain dari peralatan tersebut telah dikritik karena mempromosikan model aksi-peristiwa yang terlalu disederhanakan, membuat programer untuk rawan membuat kesalahan, sukar untuk memperluas and kode aplikasi yang terlalu kompleks.[1] Finite state machines dan hierarchical state machines telah diusulkan sebagai model tingkat tinggi untuk mewakili perubahan keadaan interaktif untuk program reaktif.
Sistem penjendelaan
Sebuah jendela (window) dapat dinyatakan menjadi sebuah elemen kontrol grafis. Dalam beberapa sistem penjendelaan, jendela ditambahkan secara langsung ke scene graph (kanvas) oleh pengatur jendela, dan bisa ditumpuk dan dilapisi di atas satu sama lain melalu berbagai cara. Masing-masing jendela dikaitkan dengan berbagai aplikasi yang mengontrol gawit yang ditambahkan ke kanvasnya, yang bisa di dilihat dan dimodifikasi oleh aplikasi terkait.
Lihat pula
Referensi
- ^ Samek, Miro (April 2003). "Who Moved My State?". C/C++ Users Journal, The Embedded Angle column.