Movatterモバイル変換


[0]ホーム

URL:


Jump to content
WikipediaThe Free Encyclopedia
Search

List of language bindings for GTK

From Wikipedia, the free encyclopedia

As shown in the table below,GTK has a range ofbindings for variousprogramming languages[1] that implement some or all of its feature set. GTK 2 is unsupported now, so some languages below lack current GTK support.

LanguageNameSupported?LicenseNotes
2.243.124.0GIROfficial
AdaGtkAdaPartialPartial?YesNoGPL-3Supported up to 3.14.[3][4]
CGTKYesYesYesN/aYesLGPL-2.1Native, no binding needed.
C++gtkmmYesYesYesNoYesLGPL-2.1
C# and otherCLI languagesGtk#PartialNo?NoYesLGPL-2.1Support for GTK 2 is available up to 2.12.[5]
GtkSharpNoYesNoNoNoLGPL-2.1Support for GTK 3 is available up to 3.22.
Gir.Core??PartialPartialNoMIT
Crystalcrystal-gobjectNoYesPartialYesNoBSD
gtk4.crNoNoYesYesNoMIT
DGtkDYesYes?YesNoLGPL-3 with exceptions[6]Supported since 2.12
ErlanggtknodePartialNo?NoNoMIT[7]No, partly supported up to 2.16
Fortrangtk-fortranPartialPartialPartialNoNoGPL-3Supported since 2.24. Supports GTK 3 and GTK 4.
FreeBASICFreeBASIC GTK bindingsYesPartial?NoNoLGPL-3 with exceptionSupported up to 3.4 and since 2.8, integrated into the core distribution.
GambasGambas gb.gtk componentYesPartial?NoNoGPL-2Secondary to the primaryQt components
GenieGenieYesYesYesYesYesLGPL-2.1language written for GObject system
Gogo-gir-generator???YesNoGPL-3
gotk3NoPartial?NoNoISC[8]
Guileguile-gnomePartialNo?NoNoGPL-2supported up to 2.12, partly supported on 2.14
HaskellGtk2HsYesPartial?NoNoLGPL-2.1Gtk2Hs is a set of Haskell bindings to many of the libraries included in the GTK/GNOME platform.
haskell-giNoYesYesYesNoLGPL-2.1Generate Haskell bindings for GObject Introspection capable libraries
JJ GTK addonPartialNo?NoNoGPL-3
Java and otherJVM languagesjava-gnomeYesYesNoNoYesGPL-2 with exceptionUnavailable on Microsoft Windows
JuliaGtk4.jlYesYesYesNoNoMITIncludes Glib support
JavaScriptGjsYesYesYesYesYesMITGNOME wiki, based on Mozilla'sSpiderMonkey
Node-GtkNoYesPartialYesNoMITDynamic Node.js binding to GObject libraries using GObject-Introspection.
SeedYesYes?YesYesLGPL-2.1GNOME wiki, based on WebKit'sJavaScriptCore
Kotlin/Nativegtk-ktNoPartialPartialPartialNoAGPL-3.0Partial due to being In development, Usable to an extent.
gtk-knNoNoNoPartialNoLGPL-3Partial due to being In development, Usable to an extent.
LuaLGIPartialYesYesYesNoMIT[9]Dynamic Lua binding to GObject libraries using GObject-Introspection.
lgobNoYes?YesNoLGPL-3lgob provides bindings of GObject-based libraries for Lua 5.1.
NimgintroNoYesYesYesNoMITHigh level GObject-Introspection based GTK3/GTK4 bindings for Nim language
OCamlLablGtkPartialPartial?NoNoLGPL-2.1 with exceptionNo, supported up to 2.16
ooRexxRexxGTKPartialNo?NoNoCPLYes, 2.0 or later
Objective-CCoreGTKNoPartial?NoNoLGPL-2.1
ObGTKPartialNo?NoNoLGPL-2.1
Objective-C GTKPartialNo?NoNoLGPL-2.1
PascalFree Pascalgtk packageYesYes?NoNoLGPL-3 with exceptionSupported up to 2.24, integrated into the core distribution. Gtk 3.0 bindings are being developed in the Lazarus-ccr project.[10]
PerlGtk2-PerlYesYesNoYesYesLGPL-2.1
PHPPHP-GTKPartialPartial[11]?NoNoLGPL-2.1PHP until 5.2, GTK is GTK2
PrologPLGIPartialYes?YesNoLGPL-2.1Dynamic Prolog binding to GObject libraries using GObject-Introspection.
PythonpgiPartialPartial?YesNoLGPL-2.1GObject Introspection Bindings for PyPy.
pygir-ctypesPartialPartial?YesNoBSDPure Python GObject Introspection Repository (GIR) wrapper using ctypes.
PyGObjectYesYesYesYesYesLGPL-2.1since 2.22[12]
PyGTKYesNoNoNoYesLGPL-2.1static bindings, use PyGObject
RRGtk2PartialNo?NoNoGPL-2RGtk2.pdfArchived 2016-03-09 at theWayback Machine
Racketgir???YesNoMIT[13]
RubyGirFFI-GtkPartialPartial?YesNoLGPL-2.1GirFFI-based bindings for GTK. Supports both GTK+ 2 and GTK+ 3.
Ruby-GNOME2Archived 2008-08-21 at theWayback MachinePartialYesYesNoNoMIT LicensePartial, supported up to 2.12, partly supported since 2.14[14]
Rustgtk-rsNoYesYesYesNoMIT[15]
gi-rustNoYes?YesNoLGPL-2.1
SmalltalkGNU SmalltalkGTK+ bindingsYesNo?NoNoGPL-2
Smalltalk YX GTK pluginYesNo?NoNoMIT
SqueakGtkPartialNo?NoNoMIT
Standard MLGiraffe LibraryNoYes?YesNoLGPL-2.1
TclGnoclYesNo?NoNoBSD
ValaValaYesYesYesYesYesLGPL-2.1language written for GObject system
WraplWrapl GTK+ modulePartialNo?NoNoGPL-3No, but almost full up to 2.22

Gtk#

[edit]
Gtk#
DeveloperXamarin
Initial releaseMarch 12, 2004; 21 years ago (2004-03-12)
Stable release
2.12.41[16] / September 22, 2016; 9 years ago (2016-09-22)
Preview release
2.99.3 (for GTK3)[16] / June 6, 2014; 11 years ago (2014-06-06)
Written inC#,XML,Perl,C
Operating systemWindows,macOS,Linux
TypeWidget toolkit
LicenseGNU Lesser General Public License
Websitemono-project.com/GtkSharp
Repositorygithub.com/mono/gtk-sharp

Gtk# is a set of.NET Framework bindings for the GTKgraphical user interface (GUI)toolkit and assortedGNOMElibraries. The library facilitates building graphical GNOME applications usingMono or any other compliantCommon Language Runtime (CLR). Gtk# is an event-driven system like any other modern windowing library where everywidget allows associating handler methods, which get called when certain events occur.[citation needed]

Applications built using Gtk# will run on many platforms includingLinux,Windows andmacOS. The Mono packages for Windows include GTK, Gtk# and a native theme to make applications look like native Windows applications. Starting with Mono 1.9, running Gtk# applications on macOS no longer requires running anX11 server.[17]

Glade Interface Designer can be used with the Glade# bindings to easily design GUI applications. A GUI designer namedStetic is integrated with theMonoDevelopintegrated development environment (IDE).

In addition to support the standard GTK/GNOME stack of development tools, thegtk-dotnet.dll assembly provides a bridge to consume functionality available on the .NET stack. At this point this includes the functionality to use System.Drawing to draw on a widget.[citation needed]

As of September 2020[update], Gtk# support for Gtk3 remains in the preview phase and forked projects, such as GtkSharp, have been founded to provide full Gtk3 support for C# and other CLI languages. The lack of a released version of Gtk# with support for Gtk3 was cited as a reason to remove theBanshee media player in Ubuntu 12.04.[18]

See also

[edit]

References

[edit]
  1. ^"Language Bindings". TheGTK Project. Archived fromthe original on 2011-07-13. Retrieved2013-05-18.
  2. ^"GObject Introspection".
  3. ^"1. Introduction: What is GtkAda ? — GtkAda 22.0w documentation".
  4. ^"10. Object-oriented features — GtkAda 22.0w documentation".
  5. ^"GtkSharp | Mono".
  6. ^"GtkD License LGPL-3 with additional exceptions".GitHub. 19 November 2021.
  7. ^"gtknode license".GitHub. 11 March 2021.
  8. ^"gotk3 license".GitHub. 17 August 2021.
  9. ^"LGI license".GitHub. 20 November 2021.
  10. ^"Gtk+3 - Lazarus wiki".wiki.freepascal.org. Retrieved2025-09-19.
  11. ^Alexandre Pereira Bühler (2015-06-22)."Attention: created branch dev-php-gtk3". PHP-GTK General Mailing List.
  12. ^"PyGObject History". Retrieved2013-08-29.
  13. ^"1. Main interface".GitHub. 6 February 2022.
  14. ^Ruby-GNOME2 Project Team."gtk3 / Rubygems". Retrieved2013-05-07.{{cite web}}: CS1 maint: numeric names: authors list (link)
  15. ^"GTK-rs license".GitHub. 17 November 2021.
  16. ^ab"Gtk# is a Mono/.NET binding to the cross platform Gtk+ GUI toolkit and the foundation of most GUI apps built with Mono: mono/gtk-sharp". November 16, 2019.Archived from the original on March 11, 2016. RetrievedSeptember 1, 2016 – via GitHub.
  17. ^"Download Gtk#". The GTK+ Project. Archived fromthe original on December 14, 2013. RetrievedDecember 23, 2014.
  18. ^"'Bansheegeddon' may see Banshee, Mono dropped from Ubuntu default".ITWorld. Archived fromthe original on July 10, 2015. RetrievedAugust 31, 2015.
Platform
GTK
freedesktop.org
(shared)
Development
GUI designer,RAD
IDEs
GNOME
Cinnamon
Xfce
LXDE
Graphical shells
3rd-party
applications
Office
Education
Graphics
Internet
Audio
Video
Utilities
Retrieved from "https://en.wikipedia.org/w/index.php?title=List_of_language_bindings_for_GTK&oldid=1333192094"
Category:
Hidden categories:

[8]ページ先頭

©2009-2026 Movatter.jp