Список языковых привязок для GTK - List of language bindings for GTK
Как показано в таблице ниже, GTK имеет ряд привязки для разных языков[1] которые реализуют некоторые или все его функции.
- GObject (GOB) изначально был написан как центральный компонент GTK, но передан в GLib.
- GObject Introspection это промежуточный уровень между библиотеками C (с использованием GObject) и языковыми привязками, например PyGObject использует это, в то время как PyGTK не.[2]
- Официальный ГНОМ Привязки следуют графику выпуска GNOME, который гарантирует стабильность API и выпуски на основе времени.
- Дизайнер интерфейсов Glade
Язык | Имя | Поддерживается? | Лицензия | Примечания | |||
---|---|---|---|---|---|---|---|
2.24 | 3.12 | GIR | Официальный | ||||
Ада | GtkAda | Частичное | Частичное | да | Нет | GPL-3 | Поддерживается до 3.14.[3][4] |
C | GTK | да | да | Нет данных | да | LGPL-2.1 | Родной, привязка не требуется. |
C ++ | gtkmm | да | да | Нет | да | LGPL-2.1 | |
C # и другие Языки интерфейса командной строки | Gtk # | Частичное | Нет | Нет | да | LGPL-2.1 | Поддержка GTK 2 доступна до 2.12. [5] |
GtkSharp | Нет | да | Нет | Нет | LGPL-2.1 | Поддержка GTK 3 доступна до версии 3.22. | |
Кристалл | хрустальный объект | ? | ? | да | Нет | Apache-2.0 | |
D | GtkD | да | да | да | Нет | LGPL-3 за исключением[6] | Поддерживается с 2.12 |
Erlang | gtknode | Частичное | Нет | Нет | Нет | Массачусетский технологический институт[7] | Нет, частично поддерживается до 2.16 |
Фортран | gtk-fortran | Частичное | Частичное | Нет | Нет | GPL-3 | Частично поддерживается с версии 2.24. Поддержка GTK 4 в разработке. |
FreeBASIC | FreeBASIC Привязки GTK + | да | Частичное | Нет | Нет | LGPL-3 за исключением | Поддерживается до 3.4 и начиная с 2.8, интегрирован в основной дистрибутив. |
Гамбас | Компонент gambas gb.gtk | Частичное | Нет | Нет | Нет | GPL-2 | Поддержка GTK + 3 находится в разработке |
Джинн | Джинн | да | да | да | да | LGPL-2.1 | язык, написанный для системы GObject |
Идти | go-gir-generator | ? | ? | да | Нет | GPL-3 | |
gotk3 | Нет | Частичное | Нет | Нет | ISC[8] | ||
Хитрость | лукавый гном | Частичное | Нет | Нет | Нет | GPL-2 | поддерживается до 2.12, частично поддерживается в 2.14 |
Haskell | Gtk2Hs | да | Частичное | Нет | Нет | LGPL-2.1 | Gtk2Hs - это набор привязок Haskell ко многим библиотекам, включенным в платформу GTK + / GNOME. |
haskell-gi | Нет | да | да | Нет | LGPL-2.1 | Создание привязок Haskell для библиотек с поддержкой GObject Introspection | |
J | Дополнение J GTK | Частичное | Нет | Нет | Нет | GPL-3 | |
Ява и другие Языки JVM | java-gnome | да | да | Нет | да | GPL-2 за исключением | Недоступно в Microsoft Windows |
Юля | Gtk.jl | да | да | Нет | Нет | Массачусетский технологический институт | Включает поддержку Glib |
JavaScript | Gjs | да | да | да | да | Массачусетский технологический институт | GNOME вики, основанный на Mozilla ПаукОбезьяна |
Семя | да | да | да | да | LGPL-2.1 | GNOME вики, на основе WebKit's JavaScriptCore | |
Lua | LGI | Частичное | да | да | Нет | Массачусетский технологический институт[9] | Динамическая привязка Lua к библиотекам GObject с помощью GObject-Introspection. |
лгоб | Нет | да | да | Нет | LGPL-3 | lgob предоставляет привязки библиотек на основе GObject для Lua 5.1. | |
Ним | Gintro | Нет | да | да | Нет | Массачусетский технологический институт | Привязки GTK3 / GTK4 высокого уровня на основе GObject-Introspection для языка Nim |
OCaml | LablGtk | Частичное | Нет | Нет | Нет | LGPL-2.1 за исключением | Нет, поддерживается до 2.16 |
ooRexx | RexxGTK | Частичное | Нет | Нет | Нет | CPL | Да, 2.0 или новее |
Цель-C | CoreGTK | Нет | Частичное | Нет | Нет | LGPL-2.1 | |
ОбГТК | Частичное | Нет | Нет | Нет | LGPL-2.1 | ||
Objective-C GTK | Частичное | Нет | Нет | Нет | LGPL-2.1 | ||
Паскаль | Free Pascal пакет gtk | да | да | Нет | Нет | LGPL-3 за исключением | Поддерживается до 2.24, интегрировано в основной дистрибутив. Привязки Gtk + 3.0 разрабатываются в проекте Lazarus-ccr.[10] |
Perl | Gtk2-Perl | да | да | да | да | LGPL-2.1 | |
PHP | PHP-GTK | Частичное | Частичное[11] | Нет | Нет | LGPL-2.1 | PHP до 5.2, GTK - это GTK2 |
Пролог | PLGI | Частичное | да | да | Нет | LGPL-2.1 | Привязка динамического Пролога к библиотекам GObject с помощью GObject-Introspection. |
Python | pgi | Частичное | Частичное | да | Нет | LGPL-2.1 | Привязки GObject Introspection для PyPy. |
pygir-ctypes | Частичное | Частичное | да | Нет | BSD | Чистая оболочка репозитория GObject Introspection Repository (GIR) Python с использованием ctypes. | |
PyGObject | да | да | да | да | LGPL-2.1 | с 2.22[12] | |
PyGTK | да | Нет | Нет | да | LGPL-2.1 | статические привязки, используйте PyGObject | |
р | RGtk2 | Частичное | Нет | Нет | Нет | GPL-2 | RGtk2.pdf |
Рубин | GirFFI-Gtk | Частичное | Частичное | да | Нет | LGPL-2.1 | Привязки на основе GirFFI для Gtk +. Поддерживает Gtk + 2 и Gtk + 3. |
Рубин-GNOME2 | Частичное | да | Нет | Нет | Лицензия MIT | Частично, поддерживается до 2.12, частично поддерживается с 2.14[13] | |
Ржавчина | gtk-rs | Нет | да | да | Нет | Массачусетский технологический институт[14] | |
ги-ржавчина | Нет | да | да | Нет | LGPL-2.1 | ||
Болтовня | GNU Smalltalk Привязки GTK + | да | Нет | Нет | Нет | GPL-2 | |
Smalltalk YX Плагин GTK + | да | Нет | Нет | Нет | Массачусетский технологический институт | ||
SqueakGtk | Частичное | Нет | Нет | Нет | Массачусетский технологический институт | ||
Tcl | Gnocl | да | Нет | Нет | Нет | BSD | |
Вала | Вала | да | да | да | да | LGPL-2.1 | язык, написанный для системы GObject |
Wrapl | Модуль Wrapl GTK + | Частичное | Нет | Нет | Нет | GPL-3 | Нет, но почти до 2,22 |
Смотрите также
- Список языковых привязок для Qt 4
- Список языковых привязок для Qt 5
- Список языковых привязок для wxWidgets
Рекомендации
- ^ "Языковые привязки". В GTK Проект. Архивировано из оригинал на 2011-07-13. Получено 2013-05-18.
- ^ "Самоанализ GObject".
- ^ http://docs.adacore.com/gtkada-docs/gtkada_ug/_build/html/intro.html
- ^ https://docs.adacore.com/gtkada-docs/gtkada_ug/_build/html/object_orient.html
- ^ https://www.mono-project.com/docs/gui/gtksharp/
- ^ «Лицензия GtkD LGPL-3 с дополнительными исключениями».
- ^ "лицензия gtknode".
- ^ "лицензия gotk3".
- ^ «Лицензия LGI».
- ^ http://wiki.freepascal.org/Gtk%2B3
- ^ Александр Перейра Бюлер (22.06.2015). «Внимание: создана ветка dev-php-gtk3». Общий список рассылки PHP-GTK.
- ^ "История PyGObject". Получено 2013-08-29.
- ^ Команда проекта Ruby-GNOME2. "gtk3 / Rubygems". Получено 2013-05-07.
- ^ «Лицензия ГТК-РС».