PyGTK


















































PyGTK
Original author(s) James Henstridge[1]
Developer(s) PyGTK Core development team[2]
Stable release
2.24.0[3]
/ 1 April 2011; 7 years ago (2011-04-01)

Repository
  • git.gnome.org/pygtk
Edit this at Wikidata
Written in
Python, C
Operating system Cross-platform
Platform Cross-platform
Type Widget toolkit
License LGPL
Website 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 GNOME 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 on 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]




Contents






  • 1 Syntax


    • 1.1 Notable applications that use PyGTK




  • 2 PyGObject


    • 2.1 Notable applications that use PyGObject




  • 3 See also


  • 4 References


  • 5 External links





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:




  • Anaconda installer

  • BitTorrent

  • Deluge

  • Emesene

  • Exaile

  • Flumotion

  • Gajim

  • gDesklets


  • Gedit (for optional Python subsystem and plugins)


  • GIMP (for optional Python scripts)

  • GNOME Sudoku

  • GRAMPS


  • Gwibber (microblogging client)

  • Jokosher

  • puddletag

  • PyMusique

  • Pybliographer

  • Tryton


  • ROX Desktop (includes ROX-Filer)

  • SoundConverter


  • Ubiquity (Ubuntu installer)

  • Ubuntu Software Center

  • Wing IDE

  • Comix

  • MComix




PyGObject




































PyGObject
Stable release 3.24.4[7](January 21, 2019; 2 months ago (2019-01-21)) [±]
Preview release 3.94 / 3.23.0
(June 28, 2018; 8 months ago (2018-06-28)
June 21, 2018; 8 months ago (2018-06-21))
[±]

Repository git.gnome.org/browse/pygobject/tree/NEWS
Written in
Python, C
Type Widget toolkit
License LGPL
Website wiki.gnome.org/Projects/PyGObject

PyGObject provides a 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.



Notable applications that use PyGObject


PyGObject 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.




  • Ex Falso

  • Gramps

  • Meld

  • OpenShot

  • Pitivi

  • PyChess

  • Quod Libet




See also





  • PyQt (Python wrapper for the Qt toolkit)


  • PySide (Alternative Python wrapper for the Qt toolkit)


  • wxPython (Python wrapper for the wx widgets collection)



References





  1. ^ "Software I have written > PyGTK - Python bindings for GTK". James Henstridge's Homepage..mw-parser-output cite.citation{font-style:inherit}.mw-parser-output .citation q{quotes:"""""""'""'"}.mw-parser-output .citation .cs1-lock-free a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/6/65/Lock-green.svg/9px-Lock-green.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .citation .cs1-lock-limited a,.mw-parser-output .citation .cs1-lock-registration a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/d/d6/Lock-gray-alt-2.svg/9px-Lock-gray-alt-2.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .citation .cs1-lock-subscription a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/a/aa/Lock-red-alt-2.svg/9px-Lock-red-alt-2.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration{color:#555}.mw-parser-output .cs1-subscription span,.mw-parser-output .cs1-registration span{border-bottom:1px dotted;cursor:help}.mw-parser-output .cs1-ws-icon a{background:url("//upload.wikimedia.org/wikipedia/commons/thumb/4/4c/Wikisource-logo.svg/12px-Wikisource-logo.svg.png")no-repeat;background-position:right .1em center}.mw-parser-output code.cs1-code{color:inherit;background:inherit;border:inherit;padding:inherit}.mw-parser-output .cs1-hidden-error{display:none;font-size:100%}.mw-parser-output .cs1-visible-error{font-size:100%}.mw-parser-output .cs1-maint{display:none;color:#33aa33;margin-left:0.3em}.mw-parser-output .cs1-subscription,.mw-parser-output .cs1-registration,.mw-parser-output .cs1-format{font-size:95%}.mw-parser-output .cs1-kern-left,.mw-parser-output .cs1-kern-wl-left{padding-left:0.2em}.mw-parser-output .cs1-kern-right,.mw-parser-output .cs1-kern-wl-right{padding-right:0.2em}


  2. ^ "The people behind PyGTK".


  3. ^ "PyGTK 2.24 release announcement".


  4. ^ "PyGObject". wiki.gnome.org.


  5. ^ "Black Duck Open Hub: PyGObject".


  6. ^ "GObject Introspection". Archived from the original on 2012-07-11.


  7. ^ https://github.com/GNOME/gtk/releases/tag/3.24.4




External links



  • PyGTK Homepage

  • PyGTK FAQ

  • PyGTK Tutorial

  • PyGTK Notebook A Journey Through Python Gnome Technologies by Peter Gill

  • PyGTK at Python wiki

  • PyGObject Homepage

  • PyGObject tutorial








這個網誌中的熱門文章

12.7 cm/40 Type 89 naval gun

Shark

Wiciokrzew