2007-08-15 11:28:01 -03:00
|
|
|
.. _other-gui-packages:
|
|
|
|
|
|
|
|
Other Graphical User Interface Packages
|
|
|
|
=======================================
|
|
|
|
|
2008-05-20 04:13:37 -03:00
|
|
|
There are an number of extension widget sets to :mod:`Tkinter`.
|
2007-08-15 11:28:01 -03:00
|
|
|
|
|
|
|
.. seealso::
|
|
|
|
|
|
|
|
`Python megawidgets <http://pmw.sourceforge.net/>`_
|
|
|
|
is a toolkit for building high-level compound widgets in Python using the
|
2008-05-20 04:13:37 -03:00
|
|
|
:mod:`Tkinter` module. It consists of a set of base classes and a library of
|
2007-08-15 11:28:01 -03:00
|
|
|
flexible and extensible megawidgets built on this foundation. These megawidgets
|
|
|
|
include notebooks, comboboxes, selection widgets, paned widgets, scrolled
|
|
|
|
widgets, dialog windows, etc. Also, with the Pmw.Blt interface to BLT, the
|
|
|
|
busy, graph, stripchart, tabset and vector commands are be available.
|
|
|
|
|
|
|
|
The initial ideas for Pmw were taken from the Tk ``itcl`` extensions ``[incr
|
|
|
|
Tk]`` by Michael McLennan and ``[incr Widgets]`` by Mark Ulferts. Several of the
|
|
|
|
megawidgets are direct translations from the itcl to Python. It offers most of
|
|
|
|
the range of widgets that ``[incr Widgets]`` does, and is almost as complete as
|
|
|
|
Tix, lacking however Tix's fast :class:`HList` widget for drawing trees.
|
|
|
|
|
|
|
|
`Tkinter3000 Widget Construction Kit (WCK) <http://tkinter.effbot.org/>`_
|
|
|
|
is a library that allows you to write new Tkinter widgets in pure Python. The
|
|
|
|
WCK framework gives you full control over widget creation, configuration, screen
|
|
|
|
appearance, and event handling. WCK widgets can be very fast and light-weight,
|
|
|
|
since they can operate directly on Python data structures, without having to
|
|
|
|
transfer data through the Tk/Tcl layer.
|
|
|
|
|
|
|
|
|
|
|
|
The major cross-platform (Windows, Mac OS X, Unix-like) GUI toolkits that are
|
|
|
|
also available for Python:
|
|
|
|
|
|
|
|
.. seealso::
|
|
|
|
|
|
|
|
`PyGTK <http://www.pygtk.org/>`_
|
|
|
|
is a set of bindings for the `GTK <http://www.gtk.org/>`_ widget set. It
|
2008-03-14 21:20:19 -03:00
|
|
|
provides an object oriented interface that is slightly higher level than
|
|
|
|
the C one. It comes with many more widgets than Tkinter provides, and has
|
|
|
|
good Python-specific reference documentation. There are also bindings to
|
|
|
|
`GNOME <http://www.gnome.org>`_. One well known PyGTK application is
|
|
|
|
`PythonCAD <http://www.pythoncad.org/>`_. An online `tutorial
|
|
|
|
<http://www.pygtk.org/pygtk2tutorial/index.html>`_ is available.
|
2007-08-15 11:28:01 -03:00
|
|
|
|
Merged revisions 75363,75365,75376,75392,75394,75403,75418,75484,75572,75580,75590,75592,75594-75596,75600,75602-75603,75605-75607,75610-75613,75616-75617,75623,75627,75647 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r75363 | georg.brandl | 2009-10-11 20:31:23 +0200 (So, 11 Okt 2009) | 1 line
Add the Python FAQ lists to the documentation. Copied from sandbox/faq. Many thanks to AMK for the preparation work.
........
r75365 | georg.brandl | 2009-10-11 22:16:16 +0200 (So, 11 Okt 2009) | 1 line
Fix broken links found by "make linkcheck". scipy.org seems to be done right now, so I could not verify links going there.
........
r75376 | benjamin.peterson | 2009-10-12 03:26:07 +0200 (Mo, 12 Okt 2009) | 1 line
platform we don't care about
........
r75392 | andrew.kuchling | 2009-10-13 18:11:49 +0200 (Di, 13 Okt 2009) | 1 line
Various link, textual, and markup fixes
........
r75394 | georg.brandl | 2009-10-13 20:10:59 +0200 (Di, 13 Okt 2009) | 1 line
Fix markup.
........
r75403 | georg.brandl | 2009-10-14 17:57:46 +0200 (Mi, 14 Okt 2009) | 1 line
#7126: os.environ changes *do* take effect in subprocesses started with os.system().
........
r75418 | georg.brandl | 2009-10-14 20:48:32 +0200 (Mi, 14 Okt 2009) | 1 line
#7116: str.join() takes an iterable.
........
r75484 | georg.brandl | 2009-10-18 09:58:12 +0200 (So, 18 Okt 2009) | 1 line
Fix missing word.
........
r75572 | benjamin.peterson | 2009-10-20 23:55:17 +0200 (Di, 20 Okt 2009) | 1 line
clarify buffer arg #7178
........
r75580 | georg.brandl | 2009-10-21 09:15:59 +0200 (Mi, 21 Okt 2009) | 1 line
#7170: fix explanation about non-weakrefable builtin types.
........
r75590 | benjamin.peterson | 2009-10-22 04:36:47 +0200 (Do, 22 Okt 2009) | 1 line
rewrite to be nice to other implementations
........
r75592 | georg.brandl | 2009-10-22 09:05:48 +0200 (Do, 22 Okt 2009) | 1 line
Fix punctuation.
........
r75594 | georg.brandl | 2009-10-22 09:56:02 +0200 (Do, 22 Okt 2009) | 1 line
Fix markup.
........
r75595 | georg.brandl | 2009-10-22 09:56:56 +0200 (Do, 22 Okt 2009) | 1 line
Fix duplicate target.
........
r75596 | georg.brandl | 2009-10-22 10:05:04 +0200 (Do, 22 Okt 2009) | 1 line
Add a new directive marking up implementation details and start using it.
........
r75600 | georg.brandl | 2009-10-22 13:01:46 +0200 (Do, 22 Okt 2009) | 1 line
Make it more robust.
........
r75602 | georg.brandl | 2009-10-22 13:28:06 +0200 (Do, 22 Okt 2009) | 1 line
Document new directive.
........
r75603 | georg.brandl | 2009-10-22 13:28:23 +0200 (Do, 22 Okt 2009) | 1 line
Allow short form with text as argument.
........
r75605 | georg.brandl | 2009-10-22 13:48:10 +0200 (Do, 22 Okt 2009) | 1 line
Use "impl-detail" directive where applicable.
........
r75606 | georg.brandl | 2009-10-22 17:00:06 +0200 (Do, 22 Okt 2009) | 1 line
#6324: membership test tries iteration via __iter__.
........
r75607 | georg.brandl | 2009-10-22 17:04:09 +0200 (Do, 22 Okt 2009) | 1 line
#7088: document new functions in signal as Unix-only.
........
r75610 | georg.brandl | 2009-10-22 17:27:24 +0200 (Do, 22 Okt 2009) | 1 line
Reorder __slots__ fine print and add a clarification.
........
r75611 | georg.brandl | 2009-10-22 17:42:32 +0200 (Do, 22 Okt 2009) | 1 line
#7035: improve docs of the various <method>_errors() functions, and give them docstrings.
........
r75612 | georg.brandl | 2009-10-22 17:52:15 +0200 (Do, 22 Okt 2009) | 1 line
#7156: document curses as Unix-only.
........
r75613 | georg.brandl | 2009-10-22 17:54:35 +0200 (Do, 22 Okt 2009) | 1 line
#6977: getopt does not support optional option arguments.
........
r75616 | georg.brandl | 2009-10-22 18:17:05 +0200 (Do, 22 Okt 2009) | 1 line
Add proper references.
........
r75617 | georg.brandl | 2009-10-22 18:20:55 +0200 (Do, 22 Okt 2009) | 1 line
Make printout margin important.
........
r75623 | georg.brandl | 2009-10-23 10:14:44 +0200 (Fr, 23 Okt 2009) | 1 line
#7188: fix optionxform() docs.
........
r75627 | fred.drake | 2009-10-23 15:04:51 +0200 (Fr, 23 Okt 2009) | 2 lines
add further note about what's passed to optionxform
........
r75647 | georg.brandl | 2009-10-24 12:04:19 +0200 (Sa, 24 Okt 2009) | 1 line
Fix markup.
........
2009-10-27 12:08:27 -03:00
|
|
|
`PyQt <http://www.riverbankcomputing.co.uk/software/pyqt/>`_
|
2007-08-15 11:28:01 -03:00
|
|
|
PyQt is a :program:`sip`\ -wrapped binding to the Qt toolkit. Qt is an
|
|
|
|
extensive C++ GUI application development framework that is
|
|
|
|
available for Unix, Windows and Mac OS X. :program:`sip` is a tool
|
|
|
|
for generating bindings for C++ libraries as Python classes, and
|
|
|
|
is specifically designed for Python. The *PyQt3* bindings have a
|
|
|
|
book, `GUI Programming with Python: QT Edition
|
|
|
|
<http://www.commandprompt.com/community/pyqt/>`_ by Boudewijn
|
|
|
|
Rempt. The *PyQt4* bindings also have a book, `Rapid GUI Programming
|
|
|
|
with Python and Qt <http://www.qtrac.eu/pyqtbook.html>`_, by Mark
|
|
|
|
Summerfield.
|
|
|
|
|
|
|
|
`wxPython <http://www.wxpython.org>`_
|
|
|
|
wxPython is a cross-platform GUI toolkit for Python that is built around
|
|
|
|
the popular `wxWidgets <http://www.wxwidgets.org/>`_ (formerly wxWindows)
|
2007-12-16 12:00:36 -04:00
|
|
|
C++ toolkit. It provides a native look and feel for applications on
|
2007-08-15 11:28:01 -03:00
|
|
|
Windows, Mac OS X, and Unix systems by using each platform's native
|
2007-12-16 12:00:36 -04:00
|
|
|
widgets where ever possible, (GTK+ on Unix-like systems). In addition to
|
2007-08-15 11:28:01 -03:00
|
|
|
an extensive set of widgets, wxPython provides classes for online
|
|
|
|
documentation and context sensitive help, printing, HTML viewing,
|
|
|
|
low-level device context drawing, drag and drop, system clipboard access,
|
|
|
|
an XML-based resource format and more, including an ever growing library
|
2007-12-16 12:00:36 -04:00
|
|
|
of user-contributed modules. wxPython has a book, `wxPython in Action
|
2007-08-15 11:28:01 -03:00
|
|
|
<http://www.amazon.com/exec/obidos/ASIN/1932394621>`_, by Noel Rappin and
|
|
|
|
Robin Dunn.
|
|
|
|
|
2008-05-11 11:56:04 -03:00
|
|
|
PyGTK, PyQt, and wxPython, all have a modern look and feel and more
|
Merged revisions 68133-68134,68141-68142,68145-68146,68148-68149,68159-68162,68166,68171-68174,68179,68195-68196,68210,68214-68215,68217-68222 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk
........
r68133 | antoine.pitrou | 2009-01-01 16:38:03 +0100 (Thu, 01 Jan 2009) | 1 line
fill in actual issue number in tests
........
r68134 | hirokazu.yamamoto | 2009-01-01 16:45:39 +0100 (Thu, 01 Jan 2009) | 2 lines
Issue #4797: IOError.filename was not set when _fileio.FileIO failed to open
file with `str' filename on Windows.
........
r68141 | benjamin.peterson | 2009-01-01 17:43:12 +0100 (Thu, 01 Jan 2009) | 1 line
fix highlighting
........
r68142 | benjamin.peterson | 2009-01-01 18:29:49 +0100 (Thu, 01 Jan 2009) | 2 lines
welcome to 2009, Python!
........
r68145 | amaury.forgeotdarc | 2009-01-02 01:03:54 +0100 (Fri, 02 Jan 2009) | 5 lines
#4801 _collections module fails to build on cygwin.
_PyObject_GC_TRACK is the macro version of PyObject_GC_Track,
and according to documentation it should not be used for extension modules.
........
r68146 | ronald.oussoren | 2009-01-02 11:44:46 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4472: "configure --enable-shared doesn't work on OSX"
........
r68148 | ronald.oussoren | 2009-01-02 11:48:31 +0100 (Fri, 02 Jan 2009) | 2 lines
Forgot to add a NEWS item in my previous checkin
........
r68149 | ronald.oussoren | 2009-01-02 11:50:48 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue4780
........
r68159 | ronald.oussoren | 2009-01-02 15:48:17 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue 1627952
........
r68160 | ronald.oussoren | 2009-01-02 15:52:09 +0100 (Fri, 02 Jan 2009) | 2 lines
Fix for issue r1737832
........
r68161 | ronald.oussoren | 2009-01-02 16:00:05 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 1149804
........
r68162 | ronald.oussoren | 2009-01-02 16:06:00 +0100 (Fri, 02 Jan 2009) | 3 lines
Fix for issue 4472 is incompatible with Cygwin, this patch
should fix that.
........
r68166 | benjamin.peterson | 2009-01-02 19:26:23 +0100 (Fri, 02 Jan 2009) | 1 line
document PyMemberDef
........
r68171 | georg.brandl | 2009-01-02 21:25:14 +0100 (Fri, 02 Jan 2009) | 3 lines
#4811: fix markup glitches (mostly remains of the conversion),
found by Gabriel Genellina.
........
r68172 | martin.v.loewis | 2009-01-02 21:32:55 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4075: Use OutputDebugStringW in Py_FatalError.
........
r68173 | martin.v.loewis | 2009-01-02 21:40:14 +0100 (Fri, 02 Jan 2009) | 2 lines
Issue #4051: Prevent conflict of UNICODE macros in cPickle.
........
r68174 | benjamin.peterson | 2009-01-02 21:47:27 +0100 (Fri, 02 Jan 2009) | 1 line
fix compilation on non-Windows platforms
........
r68179 | raymond.hettinger | 2009-01-02 22:26:45 +0100 (Fri, 02 Jan 2009) | 1 line
Issue #4615. Document how to use itertools for de-duping.
........
r68195 | georg.brandl | 2009-01-03 14:45:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove useless string literal.
........
r68196 | georg.brandl | 2009-01-03 15:29:53 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix indentation.
........
r68210 | georg.brandl | 2009-01-03 20:10:12 +0100 (Sat, 03 Jan 2009) | 2 lines
Set eol-style correctly for mp_distributing.py.
........
r68214 | georg.brandl | 2009-01-03 20:44:48 +0100 (Sat, 03 Jan 2009) | 2 lines
Make indentation consistent.
........
r68215 | georg.brandl | 2009-01-03 21:15:14 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix role name.
........
r68217 | georg.brandl | 2009-01-03 21:30:15 +0100 (Sat, 03 Jan 2009) | 2 lines
Add rstlint, a little tool to find subtle markup problems and inconsistencies in the Doc sources.
........
r68218 | georg.brandl | 2009-01-03 21:38:59 +0100 (Sat, 03 Jan 2009) | 2 lines
Recognize usage of the default role.
........
r68219 | georg.brandl | 2009-01-03 21:47:01 +0100 (Sat, 03 Jan 2009) | 2 lines
Fix uses of the default role.
........
r68220 | georg.brandl | 2009-01-03 21:55:06 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove trailing whitespace.
........
r68221 | georg.brandl | 2009-01-03 22:04:55 +0100 (Sat, 03 Jan 2009) | 2 lines
Remove tabs from the documentation.
........
r68222 | georg.brandl | 2009-01-03 22:11:58 +0100 (Sat, 03 Jan 2009) | 2 lines
Disable the line length checker by default.
........
2009-01-03 17:55:17 -04:00
|
|
|
widgets than Tkinter. In addition, there are many other GUI toolkits for
|
2008-05-11 11:56:04 -03:00
|
|
|
Python, both cross-platform, and platform-specific. See the `GUI Programming
|
2007-08-15 11:28:01 -03:00
|
|
|
<http://wiki.python.org/moin/GuiProgramming>`_ page in the Python Wiki for a
|
|
|
|
much more complete list, and also for links to documents where the
|
|
|
|
different GUI toolkits are compared.
|
|
|
|
|