[Python-checkins] bpo-44903: Removed othergui.rst and list of GUI frameworks (GH-27762)
webhook-mailer at python.org
Tue Aug 17 05:01:07 EDT 2021
author: Gautam Chaudhuri <gautam.chaudhuri.1803 at gmail.com>
committer: ambv <lukasz at langa.pl>
bpo-44903: Removed othergui.rst and list of GUI frameworks (GH-27762)
diff --git a/Doc/faq/gui.rst b/Doc/faq/gui.rst
index a322fa231669bc..145283d072d40c 100644
@@ -14,17 +14,8 @@ Graphic User Interface FAQ
General GUI Questions
-What platform-independent GUI toolkits exist for Python?
-Depending on what platform(s) you are aiming at, there are several. Some
-of them haven't been ported to Python 3 yet. At least `Tkinter`_ and `Qt`_
-are known to be Python 3-compatible.
-.. XXX check links
+What GUI toolkits exist for Python?
Standard builds of Python include an object-oriented interface to the Tcl/Tk
widget set, called :ref:`tkinter <Tkinter>`. This is probably the easiest to
@@ -34,83 +25,12 @@ For more info about Tk, including pointers to the source, see the
`Tcl/Tk home page <https://www.tcl.tk>`_. Tcl/Tk is fully portable to the
Mac OS X, Windows, and Unix platforms.
-wxWidgets (https://www.wxwidgets.org) is a free, portable GUI class
-library written in C++ that provides a native look and feel on a
-number of platforms, with Windows, Mac OS X, GTK, X11, all listed as
-current stable targets. Language bindings are available for a number
-of languages including Python, Perl, Ruby, etc.
-`wxPython <https://www.wxpython.org>`_ is the Python binding for
-wxwidgets. While it often lags slightly behind the official wxWidgets
-releases, it also offers a number of features via pure Python
-extensions that are not available in other language bindings. There
-is an active wxPython user and developer community.
-Both wxWidgets and wxPython are free, open source, software with
-permissive licences that allow their use in commercial products as
-well as in freeware or shareware.
-There are bindings available for the Qt toolkit (using either `PyQt
-<https://riverbankcomputing.com/software/pyqt/intro>`_ or `PySide
-<https://wiki.qt.io/PySide>`_) and for KDE (`PyKDE4 <https://techbase.kde.org/Languages/Python/Using_PyKDE_4>`__).
-PyQt is currently more mature than PySide, but you must buy a PyQt license from
-`Riverbank Computing <https://www.riverbankcomputing.com/commercial/license-faq>`_
-if you want to write proprietary applications. PySide is free for all applications.
-Qt 4.5 upwards is licensed under the LGPL license; also, commercial licenses
-are available from `The Qt Company <https://www.qt.io/licensing/>`_.
-The `GObject introspection bindings <https://wiki.gnome.org/Projects/PyGObject>`_
-for Python allow you to write GTK+ 3 applications. There is also a
-`Python GTK+ 3 Tutorial <https://python-gtk-3-tutorial.readthedocs.io>`_.
-The older PyGtk bindings for the `Gtk+ 2 toolkit <https://www.gtk.org>`_ have
-been implemented by James Henstridge; see <http://www.pygtk.org>.
-`Kivy <https://kivy.org/>`_ is a cross-platform GUI library supporting both
-desktop operating systems (Windows, macOS, Linux) and mobile devices (Android,
-iOS). It is written in Python and Cython, and can use a range of windowing
-Kivy is free and open source software distributed under the MIT license.
-Python bindings for `the FLTK toolkit <http://www.fltk.org>`_, a simple yet
-powerful and mature cross-platform windowing system, are available from `the
-PyFLTK project <https://pyfltk.sourceforge.io/>`_.
-For OpenGL bindings, see `PyOpenGL <http://pyopengl.sourceforge.net>`_.
-What platform-specific GUI toolkits exist for Python?
-By installing the `PyObjc Objective-C bridge
-<https://pypi.org/project/pyobjc/>`_, Python programs can use Mac OS X's
-:ref:`Pythonwin <windows-faq>` by Mark Hammond includes an interface to the
-Microsoft Foundation Classes and a Python programming environment
-that's written mostly in Python using the MFC classes.
+Depending on what platform(s) you are aiming at, there are also several
+alternatives. A `list of cross-platform
+frameworks can be found on the python wiki.
diff --git a/Doc/library/othergui.rst b/Doc/library/othergui.rst
deleted file mode 100644
@@ -1,57 +0,0 @@
-Other Graphical User Interface Packages
-Major cross-platform (Windows, macOS, Unix-like) GUI toolkits are
-available for Python:
- `PyGObject <https://wiki.gnome.org/Projects/PyGObject>`_
- PyGObject provides introspection bindings for C libraries using
- `GObject <https://developer.gnome.org/gobject/stable/>`_. One of
- these libraries is the `GTK+ 3 <https://www.gtk.org/>`_ widget set.
- GTK+ comes with many more widgets than Tkinter provides. An online
- `Python GTK+ 3 Tutorial <https://python-gtk-3-tutorial.readthedocs.io/>`_
- is available.
- `PyGTK <http://www.pygtk.org/>`_
- PyGTK provides bindings for an older version
- of the library, GTK+ 2. It provides an object oriented interface that
- is slightly higher level than the C one. There are also bindings to
- `GNOME <https://www.gnome.org/>`_. An online `tutorial
- <http://www.pygtk.org/pygtk2tutorial/index.html>`_ is available.
- `PyQt <https://riverbankcomputing.com/software/pyqt/intro>`_
- 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 macOS. :program:`sip` is a tool
- for generating bindings for C++ libraries as Python classes, and
- is specifically designed for Python.
- `PySide2 <https://doc.qt.io/qtforpython/>`_
- Also known as the Qt for Python project, PySide2 is a newer binding to the
- Qt toolkit. It is provided by The Qt Company and aims to provide a
- complete port of PySide to Qt 5. Compared to PyQt, its licensing scheme is
- friendlier to non-open source applications.
- `wxPython <https://www.wxpython.org>`_
- wxPython is a cross-platform GUI toolkit for Python that is built around
- the popular `wxWidgets <https://www.wxwidgets.org/>`_ (formerly wxWindows)
- C++ toolkit. It provides a native look and feel for applications on
- Windows, macOS, and Unix systems by using each platform's native
- widgets where ever possible, (GTK+ on Unix-like systems). In addition to
- 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
- of user-contributed modules.
-PyGTK, PyQt, PySide2, and wxPython, all have a modern look and feel and more
-widgets than Tkinter. In addition, there are many other GUI toolkits for
-Python, both cross-platform, and platform-specific. See the `GUI Programming
-<https://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.
diff --git a/Doc/library/tk.rst b/Doc/library/tk.rst
index 691c9df5e8f803..0cb8fda4e32ebb 100644
@@ -26,8 +26,8 @@ bundled with Python. Although its standard documentation is weak, good
material is available, which includes: references, tutorials, a book and
others. :mod:`tkinter` is also famous for having an outdated look and feel,
which has been vastly improved in Tk 8.5. Nevertheless, there are many other
-GUI libraries that you could be interested in. For more information about
-alternatives, see the :ref:`other-gui-packages` section.
+GUI libraries that you could be interested in. The Python wiki lists several
+alternative `GUI frameworks and tools <https://wiki.python.org/moin/GuiProgramming>`_.
@@ -41,7 +41,6 @@ alternatives, see the :ref:`other-gui-packages` section.
.. Other sections I have in mind are
diff --git a/Misc/NEWS.d/next/Documentation/2021-08-13-19-08-03.bpo-44903.aJuvQF.rst b/Misc/NEWS.d/next/Documentation/2021-08-13-19-08-03.bpo-44903.aJuvQF.rst
new file mode 100644
@@ -0,0 +1,3 @@
+Removed the othergui.rst file, any references to it, and the list of GUI
+frameworks in the FAQ. In their place I've added links to the Python Wiki
+`page on GUI frameworks <https://wiki.python.org/moin/GuiProgramming>`.
More information about the Python-checkins