| PyGTK | |
|---|---|
![]() Screenshot | |
| Original author | James Henstridge[1] |
| Developer | PyGTK Core development team[2] |
| Final release | |
| Written in | Python,C |
| Operating system | Cross-platform |
| Platform | Cross-platform |
| Type | Widget toolkit |
| License | LGPL |
| Website | pygobject |
| Repository | |
PyGTK is a set ofPythonwrappers for theGTKgraphical user interfacelibrary. PyGTK isfree software and licensed under theLGPL. It is analogous toPyQt/PySide andwxPython, the Python wrappers forQt andwxWidgets, respectively. Its original author isGNOME developer James Henstridge. There are six people in the core development team, with various other people who have submitted patches and bug reports. PyGTK has been selected as the environment of choice for applications running onOne Laptop Per Child systems.
PyGTK was phased out with the transition to GTK version 3 and be replaced with PyGObject,[4][5] which usesGObject Introspection to generate bindings for Python and other languages on the fly. This is expected to eliminate the delay between GTK updates and correspondinglanguage binding updates, as well as reduce maintenance burden on the developers.[6]
The Python code below will produce a 200x200 pixel window with the words "Hello World" inside.
importgtkdefcreate_window():window=gtk.Window()window.set_default_size(200,200)window.connect("destroy",gtk.main_quit)label=gtk.Label("Hello World")window.add(label)label.show()window.show()create_window()gtk.main()
PyGTK has been used in a number of notable applications, some examples:
| PyGObject | |
|---|---|
| Stable release | |
| Written in | Python,C |
| Type | Widget toolkit |
| License | LGPL |
| Website | {{URL|example.com|optional display text}} |
| Repository | gitlab |
PyGObject provides a wrapper for use in Python programs when accessing GObject libraries.GObject is an object system used byGTK,GLib,GIO,GStreamer and other libraries.
Like the GObject library itself, PyGObject is licensed under theGNU LGPL, so it is suitable for use in both free software and proprietary applications. It is already in use in many applications ranging from small single-purpose scripts to large full-featured applications.
PyGObject can dynamically access any GObject libraries that useGObject Introspection. It replaces the need for separate modules such as PyGTK, GIO and python-gnome to build a full GNOME 3.0 application. Once new functionality is added to GObject library it is instantly available as a Python API without the need for intermediate Python glue.
PyGObject has replaced PyGTK, but it has taken a considerable amount of time for many programs to be ported. Most of the software listed here has an older version which used PyGTK.