GTK (trước đây là GIMP Toolkit) là một bộ công cụ widget đa nền tảng cho việc xây dựng các giao diện người dùng đồ họa.[2] Nó được phát hành theo giấy phép GNU LGPL, cho phép các phần mềm tự do -nguồn mởđộc quyền được sử dụng nó. Nó là một trong số những bộ công cụ phổ biến nhất cho Wayland và X11, cùng với Qt.[3]

GTK
Thiết kế bởiSpencer Kimball, Peter Mattis, eXperimental Computing Facility (XCF)
Phát triển bởiThe GNOME Project
Phát hành lần đầu14 tháng 4 năm 1998; 26 năm trước (1998-04-14)
Kho mã nguồn
Viết bằngC[1]
Hệ điều hànhLinux, Unix-like, OS X, Windows
Ngôn ngữ có sẵnĐa ngôn ngữ
Thể loạiWidget toolkit
Giấy phépLGPL phiên bản 2.1
Websitewww.gtk.org
Trạng tháiĐang hoạt động

Kiến trúc phần mềm

sửa
 
Simplified software architecture of GTK. Pango, GDK, ATK, GIO, Cairo and GLib
 
GDK contains back-ends to X11, Wayland, Broadway (HTTP), Quartz and GDI and relies on Cairo for the rendering. Its new SceneGraph is work-in-progress.

Thư viện GTK+ chứa một tập các thành tố điều khiển đồ họa thành tố điều khiển đồ họa (widgets), phiên bản 3.13.3 có chứa 203 widgets đang dùng và 37 widgets ngừng hỗ trợ.[cần dẫn nguồn] GTK là một bộ công cụ widget hướng đối tượng viết bằng C; Nó dùng GObject, thành phần của thư viện GLib, cho định hướng đối tượng. Trong khi GTK là nhắm mục tiêu chủ yếu vào hệ thống X11 và Wayland, nó cũng hoạt động trên các nề tảng khác, bao gồmMicrosoft Windows (giao tiếp với  Windows API), và macOS (giao tiếp với Quartz). Ngoài ra còn có một HTML5 back-end được gọi là Broadway[cần định hướng].

Sử dụng

sửa
 
GTK hỗ trợ Wayland, co-requisites applications to be adapted to Wayland as well
 
Ảnh chụp giao diện GIMP 2.4. GTK có nhiệm vụ quản lý các thành phần giao diện của chương trình, bao gồm các menu, các nút, và các lĩnh vực đầu vào.

Ứng dụng

sửa

Một số ứng dụng đáng chú ý sử dụng hoặc từng sử dụng GTK + như là một bộ công cụ widget bao gồm:

  • GNOME Core Applications – một phần của GNOME, viết bằng GTK.

Môi trường desktop

sửa

Một số môi trường desktop sử dụng GTK + như bộ công cụ widget.

  • GNOME, dựa trên GTK, nghĩa là các ứng dụng của GNOME dùng GTK+
  • Unity, Môi trường desktop mặc định của Ubuntu
  • Consort, GNOME 3.4 Fallback Mode – phân nhánh từ  SolusOS
  • Budgie, viết lại từ đầu bản kế nhiệm SolusOS, Solus
  • Cinnamon, một phân nhánh của GNOME 3 và dùng GTK+ 3
  • MATE, một phân nhánh của GNOME 2, sử dụng GTK 3
  • Xfce, hiện tại dụtrweenn GTK+ 2 nhưng có kế hoạch chuyển sang GTK 3
  • LXDE (Lightweight X11 Desktop Environment) dựa trên GTK 2
  • Pantheon dùng GTK 3 độc quyền, phát triển bởi elementary OS
  • Sugar là một môi trường desktop định hướng giáo dục trẻ em, trong đó sử dụng GTK, và PyGTK
  • ROX Desktop, một desktop nhẹ, với các tính năng từ giao diện của hệ điều hành RISC OS
  • GPE, GPE Palmtop Environment
  • Access Linux Platform (bản kế thừa nền tảng Palm OS PDA)
  • KDE, mặc dù dựa trên Qt, nó tích hợp với GTK dựa trên các chương trình và chủ đề từ phiên bản 4.2

Các ứng dụng GTK+ có thể chạy trên các môi trường desktop và trình quản lý của sổ dựa trên X11ngay cả khi chúng không được viết bằng GTK+, cung cấp các thư viện cần được cài đặt; bao gồm cả macOS nếu  X11.app được cài đặt. GTK cũng có thể chạy dưới Microsoft Windows, nơi nó được sử dụng bởi một số ứng dụng phổ biến như PidginGIMP.wxWidgets, một bộ công cụ GUI đa nền tảng, dùng GTK+ cho các bản phân phối Linux.[4] Các hỗ trợ khác bao gồm DirectFB (dùng trên Debian installer, là ví dụ) và ncurses.[5]

Xem thêm

sửa

Chú thích

sửa
  1. ^ “The GTK+ Open Source Project on Ohloh”. Ohloh.net. Bản gốc lưu trữ ngày 8 tháng 12 năm 2013. Truy cập ngày 17 tháng 2 năm 2014.
  2. ^ The GTK+ Team. “GTK+ Features”. Bản gốc lưu trữ ngày 1 tháng 5 năm 2017. Truy cập ngày 8 tháng 9 năm 2014.
  3. ^ “Developing X applications”.
  4. ^ “GTK+”.
  5. ^ “GTK+ TTY Port”. Slashdot. Truy cập ngày 31 tháng 8 năm 2010.

Liên kết ngoài

sửa