/Doc/library/othergui.rst

http://unladen-swallow.googlecode.com/ · ReStructuredText · 78 lines · 64 code · 14 blank · 0 comment · 0 complexity · ac17ae092e2c387968272aeb42049a2e MD5 · raw file

  1. .. _other-gui-packages:
  2. Other Graphical User Interface Packages
  3. =======================================
  4. There are an number of extension widget sets to :mod:`Tkinter`.
  5. .. seealso::
  6. `Python megawidgets <http://pmw.sourceforge.net/>`_
  7. is a toolkit for building high-level compound widgets in Python using the
  8. :mod:`Tkinter` module. It consists of a set of base classes and a library of
  9. flexible and extensible megawidgets built on this foundation. These megawidgets
  10. include notebooks, comboboxes, selection widgets, paned widgets, scrolled
  11. widgets, dialog windows, etc. Also, with the Pmw.Blt interface to BLT, the
  12. busy, graph, stripchart, tabset and vector commands are be available.
  13. The initial ideas for Pmw were taken from the Tk ``itcl`` extensions ``[incr
  14. Tk]`` by Michael McLennan and ``[incr Widgets]`` by Mark Ulferts. Several of the
  15. megawidgets are direct translations from the itcl to Python. It offers most of
  16. the range of widgets that ``[incr Widgets]`` does, and is almost as complete as
  17. Tix, lacking however Tix's fast :class:`HList` widget for drawing trees.
  18. `Tkinter3000 Widget Construction Kit (WCK) <http://tkinter.effbot.org/>`_
  19. is a library that allows you to write new Tkinter widgets in pure Python. The
  20. WCK framework gives you full control over widget creation, configuration, screen
  21. appearance, and event handling. WCK widgets can be very fast and light-weight,
  22. since they can operate directly on Python data structures, without having to
  23. transfer data through the Tk/Tcl layer.
  24. The major cross-platform (Windows, Mac OS X, Unix-like) GUI toolkits that are
  25. also available for Python:
  26. .. seealso::
  27. `PyGTK <http://www.pygtk.org/>`_
  28. is a set of bindings for the `GTK <http://www.gtk.org/>`_ widget set. It
  29. provides an object oriented interface that is slightly higher level than
  30. the C one. It comes with many more widgets than Tkinter provides, and has
  31. good Python-specific reference documentation. There are also bindings to
  32. `GNOME <http://www.gnome.org>`_. One well known PyGTK application is
  33. `PythonCAD <http://www.pythoncad.org/>`_. An online `tutorial
  34. <http://www.pygtk.org/pygtk2tutorial/index.html>`_ is available.
  35. `PyQt <http://www.riverbankcomputing.co.uk/pyqt/index.php>`_
  36. PyQt is a :program:`sip`\ -wrapped binding to the Qt toolkit. Qt is an
  37. extensive C++ GUI application development framework that is
  38. available for Unix, Windows and Mac OS X. :program:`sip` is a tool
  39. for generating bindings for C++ libraries as Python classes, and
  40. is specifically designed for Python. The *PyQt3* bindings have a
  41. book, `GUI Programming with Python: QT Edition
  42. <http://www.commandprompt.com/community/pyqt/>`_ by Boudewijn
  43. Rempt. The *PyQt4* bindings also have a book, `Rapid GUI Programming
  44. with Python and Qt <http://www.qtrac.eu/pyqtbook.html>`_, by Mark
  45. Summerfield.
  46. `wxPython <http://www.wxpython.org>`_
  47. wxPython is a cross-platform GUI toolkit for Python that is built around
  48. the popular `wxWidgets <http://www.wxwidgets.org/>`_ (formerly wxWindows)
  49. C++ toolkit. It provides a native look and feel for applications on
  50. Windows, Mac OS X, and Unix systems by using each platform's native
  51. widgets where ever possible, (GTK+ on Unix-like systems). In addition to
  52. an extensive set of widgets, wxPython provides classes for online
  53. documentation and context sensitive help, printing, HTML viewing,
  54. low-level device context drawing, drag and drop, system clipboard access,
  55. an XML-based resource format and more, including an ever growing library
  56. of user-contributed modules. wxPython has a book, `wxPython in Action
  57. <http://www.amazon.com/exec/obidos/ASIN/1932394621>`_, by Noel Rappin and
  58. Robin Dunn.
  59. PyGTK, PyQt, and wxPython, all have a modern look and feel and more
  60. widgets than Tkinter. In addition, there are many other GUI toolkits for
  61. Python, both cross-platform, and platform-specific. See the `GUI Programming
  62. <http://wiki.python.org/moin/GuiProgramming>`_ page in the Python Wiki for a
  63. much more complete list, and also for links to documents where the
  64. different GUI toolkits are compared.