PyGTK

PyGTK
Original author(s) James Henstridge[1]
Developer(s) PyGTK Core development team[2]
Stable release 2.24.0[3] / 1 April 2011 (2011-04-01)
Written in Python, C
Operating system Cross-platform
Platform Cross-platform
Type Widget toolkit
License LGPL
Website www.pygtk.org

PyGTK is a set of Python wrappers for the GTK+ graphical user interface library. PyGTK is free software and licensed under the LGPL. It is analogous to PyQt/PySide and wxPython, the Python wrappers for Qt and wxWidgets, respectively. Its original author is the prominent GNOME developer James Henstridge. Today 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 on the One Laptop Per Child systems.

PyGTK will be phased out with the transition to GTK+ version 3 and be replaced with PyGObject,[4][5] which uses GObject Introspection to generate bindings for Python and other languages on the fly. This is expected to eliminate the delay between GTK updates and corresponding language binding updates, as well as reduce maintenance burden on the developers.[6]

Syntax

The python code below will produce a 200x200 pixel window with the words "Hello World" inside.

import gtk

def create_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()

Notable applications that use PyGTK

PyGTK has been used in a number of notable applications, some examples:

PyGObject

PyGObject
Stable release 3.18.7 (January 28, 2016 (2016-01-28)) [±]
Preview release 3.20 (Not Released Yet[7]) [±]
Written in Python, C
Operating system Cross-platform
Platform Cross-platform
Type Widget toolkit
License LGPL
Website GNOME/PyGObject
git…PyGObject

PyGObject provides a convenient wrapper for use in Python programs when accessing GObject libraries. GObject is an object system used by GTK+, GLib, GObject, GIO, GStreamer and other libraries.

Like the GObject library itself, PyGObject is licensed under the GNU 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 accesses any GObject libraries that use GObject 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.

A good introduction to PyGObject is not found in the GNOME wiki but here:


Notable applications that use PyGObject

PyGObject obsoleted and replaced PyGTK. Maybe also due to the lacking documentation, it took a considerable amount of time until programs were ported. Most of the software listed here, has some older version, which uses PyGTK.

See also

References

External links

This article is issued from Wikipedia - version of the Wednesday, December 16, 2015. The text is available under the Creative Commons Attribution/Share Alike but additional terms may apply for the media files.