Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings

Commit c0bae18

Browse filesBrowse files
committed
Rewrite and greatly simplify qt_compat.py.
The selection logic is now described in the module's docstring. The only changes is that the QT_ENV_MAJOR_VERSION global, which would sometimes be defined (depending on the state of the import cache, the QT_API environment variable, and the requested backend) is never defined anymore.
1 parent 901477c commit c0bae18
Copy full SHA for c0bae18

File tree

Expand file treeCollapse file tree

8 files changed

+164
-320
lines changed
Filter options
Expand file treeCollapse file tree

8 files changed

+164
-320
lines changed

‎INSTALL.rst

Copy file name to clipboardExpand all lines: INSTALL.rst
+3-2Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,9 @@ interface toolkits. See :ref:`what-is-a-backend` for more details on the
150150
optional Matplotlib backends and the capabilities they provide.
151151

152152
* :term:`tk` (>= 8.3, != 8.6.0 or 8.6.1): for the TkAgg backend;
153-
* `PyQt4 <https://pypi.python.org/pypi/PyQt4>`_ (>= 4.4) or
154-
`PySide <https://pypi.python.org/pypi/PySide>`_: for the Qt4Agg backend;
153+
* `PyQt4 <https://pypi.python.org/pypi/PyQt4>`_ (>= 4.6) or
154+
`PySide <https://pypi.python.org/pypi/PySide>`_ (>= 1.0.3): for the Qt4Agg
155+
backend;
155156
* `PyQt5 <https://pypi.python.org/pypi/PyQt5>`_: for the Qt5Agg backend;
156157
* :term:`wxpython` (>= 4): for the WX or WXAgg backend;
157158
* `cairocffi <https://cairocffi.readthedocs.io/en/latest/>`_ (>=0.8) or

‎doc/api/backend_qt4agg_api.rst

Copy file name to clipboardExpand all lines: doc/api/backend_qt4agg_api.rst
+6-4Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
:mod:`matplotlib.backends.backend_qt4agg`
33
=========================================
44

5-
.. automodule:: matplotlib.backends.backend_qt4agg
6-
:members:
7-
:undoc-members:
8-
:show-inheritance:
5+
**NOTE** Not included, to avoid adding a dependency to building the docs.
6+
7+
.. .. automodule:: matplotlib.backends.backend_qt4agg
8+
.. :members:
9+
.. :undoc-members:
10+
.. :show-inheritance:

‎doc/api/backend_qt4cairo_api.rst

Copy file name to clipboardExpand all lines: doc/api/backend_qt4cairo_api.rst
+6-4Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
:mod:`matplotlib.backends.backend_qt4cairo`
33
===========================================
44

5-
.. automodule:: matplotlib.backends.backend_qt4cairo
6-
:members:
7-
:undoc-members:
8-
:show-inheritance:
5+
**NOTE** Not included, to avoid adding a dependency to building the docs.
6+
7+
.. .. automodule:: matplotlib.backends.backend_qt4cairo
8+
.. :members:
9+
.. :undoc-members:
10+
.. :show-inheritance:

‎doc/api/backend_qt5agg_api.rst

Copy file name to clipboardExpand all lines: doc/api/backend_qt5agg_api.rst
+6-4Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
:mod:`matplotlib.backends.backend_qt5agg`
33
=========================================
44

5-
.. automodule:: matplotlib.backends.backend_qt5agg
6-
:members:
7-
:undoc-members:
8-
:show-inheritance:
5+
**NOTE** Not included, to avoid adding a dependency to building the docs.
6+
7+
.. .. automodule:: matplotlib.backends.backend_qt5agg
8+
.. :members:
9+
.. :undoc-members:
10+
.. :show-inheritance:

‎doc/api/backend_qt5cairo_api.rst

Copy file name to clipboardExpand all lines: doc/api/backend_qt5cairo_api.rst
+6-4Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22
:mod:`matplotlib.backends.backend_qt5cairo`
33
===========================================
44

5-
.. automodule:: matplotlib.backends.backend_qt5cairo
6-
:members:
7-
:undoc-members:
8-
:show-inheritance:
5+
**NOTE** Not included, to avoid adding a dependency to building the docs.
6+
7+
.. .. automodule:: matplotlib.backends.backend_qt5cairo
8+
.. :members:
9+
.. :undoc-members:
10+
.. :show-inheritance:

‎doc/sphinxext/mock_gui_toolkits.py

Copy file name to clipboardExpand all lines: doc/sphinxext/mock_gui_toolkits.py
-104Lines changed: 0 additions & 104 deletions
Original file line numberDiff line numberDiff line change
@@ -6,108 +6,6 @@ class MyCairoCffi(MagicMock):
66
__name__ = "cairocffi"
77

88

9-
class MyPyQt4(MagicMock):
10-
class QtGui(object):
11-
# PyQt4.QtGui public classes.
12-
# Generated with
13-
# textwrap.fill([name for name in dir(PyQt4.QtGui)
14-
# if isinstance(getattr(PyQt4.QtGui, name), type)])
15-
_QtGui_public_classes = """\
16-
Display QAbstractButton QAbstractGraphicsShapeItem
17-
QAbstractItemDelegate QAbstractItemView QAbstractPrintDialog
18-
QAbstractProxyModel QAbstractScrollArea QAbstractSlider
19-
QAbstractSpinBox QAbstractTextDocumentLayout QAction QActionEvent
20-
QActionGroup QApplication QBitmap QBoxLayout QBrush QButtonGroup
21-
QCalendarWidget QCheckBox QClipboard QCloseEvent QColor QColorDialog
22-
QColumnView QComboBox QCommandLinkButton QCommonStyle QCompleter
23-
QConicalGradient QContextMenuEvent QCursor QDataWidgetMapper QDateEdit
24-
QDateTimeEdit QDesktopServices QDesktopWidget QDial QDialog
25-
QDialogButtonBox QDirModel QDockWidget QDoubleSpinBox QDoubleValidator
26-
QDrag QDragEnterEvent QDragLeaveEvent QDragMoveEvent QDropEvent
27-
QErrorMessage QFileDialog QFileIconProvider QFileOpenEvent
28-
QFileSystemModel QFocusEvent QFocusFrame QFont QFontComboBox
29-
QFontDatabase QFontDialog QFontInfo QFontMetrics QFontMetricsF
30-
QFormLayout QFrame QGesture QGestureEvent QGestureRecognizer QGlyphRun
31-
QGradient QGraphicsAnchor QGraphicsAnchorLayout QGraphicsBlurEffect
32-
QGraphicsColorizeEffect QGraphicsDropShadowEffect QGraphicsEffect
33-
QGraphicsEllipseItem QGraphicsGridLayout QGraphicsItem
34-
QGraphicsItemAnimation QGraphicsItemGroup QGraphicsLayout
35-
QGraphicsLayoutItem QGraphicsLineItem QGraphicsLinearLayout
36-
QGraphicsObject QGraphicsOpacityEffect QGraphicsPathItem
37-
QGraphicsPixmapItem QGraphicsPolygonItem QGraphicsProxyWidget
38-
QGraphicsRectItem QGraphicsRotation QGraphicsScale QGraphicsScene
39-
QGraphicsSceneContextMenuEvent QGraphicsSceneDragDropEvent
40-
QGraphicsSceneEvent QGraphicsSceneHelpEvent QGraphicsSceneHoverEvent
41-
QGraphicsSceneMouseEvent QGraphicsSceneMoveEvent
42-
QGraphicsSceneResizeEvent QGraphicsSceneWheelEvent
43-
QGraphicsSimpleTextItem QGraphicsTextItem QGraphicsTransform
44-
QGraphicsView QGraphicsWidget QGridLayout QGroupBox QHBoxLayout
45-
QHeaderView QHelpEvent QHideEvent QHoverEvent QIcon QIconDragEvent
46-
QIconEngine QIconEngineV2 QIdentityProxyModel QImage QImageIOHandler
47-
QImageReader QImageWriter QInputContext QInputContextFactory
48-
QInputDialog QInputEvent QInputMethodEvent QIntValidator QItemDelegate
49-
QItemEditorCreatorBase QItemEditorFactory QItemSelection
50-
QItemSelectionModel QItemSelectionRange QKeyEvent QKeyEventTransition
51-
QKeySequence QLCDNumber QLabel QLayout QLayoutItem QLineEdit
52-
QLinearGradient QListView QListWidget QListWidgetItem QMainWindow
53-
QMatrix QMatrix2x2 QMatrix2x3 QMatrix2x4 QMatrix3x2 QMatrix3x3
54-
QMatrix3x4 QMatrix4x2 QMatrix4x3 QMatrix4x4 QMdiArea QMdiSubWindow
55-
QMenu QMenuBar QMessageBox QMimeSource QMouseEvent
56-
QMouseEventTransition QMoveEvent QMovie QPageSetupDialog QPaintDevice
57-
QPaintEngine QPaintEngineState QPaintEvent QPainter QPainterPath
58-
QPainterPathStroker QPalette QPanGesture QPen QPicture QPictureIO
59-
QPinchGesture QPixmap QPixmapCache QPlainTextDocumentLayout
60-
QPlainTextEdit QPolygon QPolygonF QPrintDialog QPrintEngine
61-
QPrintPreviewDialog QPrintPreviewWidget QPrinter QPrinterInfo
62-
QProgressBar QProgressDialog QProxyModel QPushButton QPyTextObject
63-
QQuaternion QRadialGradient QRadioButton QRawFont QRegExpValidator
64-
QRegion QResizeEvent QRubberBand QScrollArea QScrollBar
65-
QSessionManager QShortcut QShortcutEvent QShowEvent QSizeGrip
66-
QSizePolicy QSlider QSortFilterProxyModel QSound QSpacerItem QSpinBox
67-
QSplashScreen QSplitter QSplitterHandle QStackedLayout QStackedWidget
68-
QStandardItem QStandardItemModel QStaticText QStatusBar
69-
QStatusTipEvent QStringListModel QStyle QStyleFactory QStyleHintReturn
70-
QStyleHintReturnMask QStyleHintReturnVariant QStyleOption
71-
QStyleOptionButton QStyleOptionComboBox QStyleOptionComplex
72-
QStyleOptionDockWidget QStyleOptionDockWidgetV2 QStyleOptionFocusRect
73-
QStyleOptionFrame QStyleOptionFrameV2 QStyleOptionFrameV3
74-
QStyleOptionGraphicsItem QStyleOptionGroupBox QStyleOptionHeader
75-
QStyleOptionMenuItem QStyleOptionProgressBar QStyleOptionProgressBarV2
76-
QStyleOptionRubberBand QStyleOptionSizeGrip QStyleOptionSlider
77-
QStyleOptionSpinBox QStyleOptionTab QStyleOptionTabBarBase
78-
QStyleOptionTabBarBaseV2 QStyleOptionTabV2 QStyleOptionTabV3
79-
QStyleOptionTabWidgetFrame QStyleOptionTabWidgetFrameV2
80-
QStyleOptionTitleBar QStyleOptionToolBar QStyleOptionToolBox
81-
QStyleOptionToolBoxV2 QStyleOptionToolButton QStyleOptionViewItem
82-
QStyleOptionViewItemV2 QStyleOptionViewItemV3 QStyleOptionViewItemV4
83-
QStylePainter QStyledItemDelegate QSwipeGesture QSyntaxHighlighter
84-
QSystemTrayIcon QTabBar QTabWidget QTableView QTableWidget
85-
QTableWidgetItem QTableWidgetSelectionRange QTabletEvent
86-
QTapAndHoldGesture QTapGesture QTextBlock QTextBlockFormat
87-
QTextBlockGroup QTextBlockUserData QTextBrowser QTextCharFormat
88-
QTextCursor QTextDocument QTextDocumentFragment QTextDocumentWriter
89-
QTextEdit QTextFormat QTextFragment QTextFrame QTextFrameFormat
90-
QTextImageFormat QTextInlineObject QTextItem QTextLayout QTextLength
91-
QTextLine QTextList QTextListFormat QTextObject QTextObjectInterface
92-
QTextOption QTextTable QTextTableCell QTextTableCellFormat
93-
QTextTableFormat QTimeEdit QToolBar QToolBox QToolButton QToolTip
94-
QTouchEvent QTransform QTreeView QTreeWidget QTreeWidgetItem
95-
QTreeWidgetItemIterator QUndoCommand QUndoGroup QUndoStack QUndoView
96-
QVBoxLayout QValidator QVector2D QVector3D QVector4D QWhatsThis
97-
QWhatsThisClickedEvent QWheelEvent QWidget QWidgetAction QWidgetItem
98-
QWindowStateChangeEvent QWizard QWizardPage QWorkspace
99-
QX11EmbedContainer QX11EmbedWidget QX11Info
100-
"""
101-
for _name in _QtGui_public_classes.split():
102-
locals()[_name] = type(_name, (), {})
103-
del _name
104-
105-
106-
class MySip(MagicMock):
107-
def getapi(*args):
108-
return 1
109-
110-
1119
class MyWX(MagicMock):
11210
class Panel(object):
11311
pass
@@ -125,8 +23,6 @@ class StatusBar(object):
12523
def setup(app):
12624
sys.modules.update(
12725
cairocffi=MyCairoCffi(),
128-
PyQt4=MyPyQt4(),
129-
sip=MySip(),
13026
wx=MyWX(),
13127
)
13228
return {'parallel_read_safe': True, 'parallel_write_safe': True}

0 commit comments

Comments
0 (0)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.