Movatterモバイル変換


[0]ホーム

URL:


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

Sign up
Appearance settings

Commit635aafc

Browse files
committed
Bump minimum QT5 version to 5.12
1 parenta861b8a commit635aafc

File tree

7 files changed

+48
-188
lines changed

7 files changed

+48
-188
lines changed
Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,4 @@
1+
Support for Qt<5.12 has been dropped
2+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3+
... as there are no wheels or conda packages that support both Qt 5.11 (or
4+
older) and Python 3.9 (or newer).

‎lib/matplotlib/backends/backend_qt.py‎

Lines changed: 24 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -14,14 +14,14 @@
1414
from .importqt_compat
1515
from .qt_compatimport (
1616
QtCore,QtGui,QtWidgets,__version__,QT_API,
17-
_enum,_to_int,_isdeleted,_maybe_allow_interrupt
17+
_to_int,_isdeleted,_maybe_allow_interrupt
1818
)
1919

2020

2121
# SPECIAL_KEYS are Qt::Key that do *not* return their Unicode name
2222
# instead they have manually specified names.
2323
SPECIAL_KEYS= {
24-
_to_int(getattr(_enum("QtCore.Qt.Key"),k)):vfork,vin [
24+
_to_int(getattr(QtCore.Qt.Key,k)):vfork,vin [
2525
("Key_Escape","escape"),
2626
("Key_Tab","tab"),
2727
("Key_Backspace","backspace"),
@@ -66,8 +66,8 @@
6666
# Elements are (Qt::KeyboardModifiers, Qt::Key) tuples.
6767
# Order determines the modifier order (ctrl+alt+...) reported by Matplotlib.
6868
_MODIFIER_KEYS= [
69-
(_to_int(getattr(_enum("QtCore.Qt.KeyboardModifier"),mod)),
70-
_to_int(getattr(_enum("QtCore.Qt.Key"),key)))
69+
(_to_int(getattr(QtCore.Qt.KeyboardModifier,mod)),
70+
_to_int(getattr(QtCore.Qt.Key,key)))
7171
formod,keyin [
7272
("ControlModifier","Key_Control"),
7373
("AltModifier","Key_Alt"),
@@ -76,7 +76,7 @@
7676
]
7777
]
7878
cursord= {
79-
k:getattr(_enum("QtCore.Qt.CursorShape"),v)fork,vin [
79+
k:getattr(QtCore.Qt.CursorShape,v)fork,vin [
8080
(cursors.MOVE,"SizeAllCursor"),
8181
(cursors.HAND,"PointingHandCursor"),
8282
(cursors.POINTER,"ArrowCursor"),
@@ -142,7 +142,6 @@ def _create_qApp():
142142
app.setWindowIcon(icon)
143143
app.lastWindowClosed.connect(app.quit)
144144
cbook._setup_new_guiapp()
145-
146145
ifqt_version==5:
147146
app.setAttribute(QtCore.Qt.AA_UseHighDpiPixmaps)
148147

@@ -184,7 +183,7 @@ class FigureCanvasQT(FigureCanvasBase, QtWidgets.QWidget):
184183
manager_class=_api.classproperty(lambdacls:FigureManagerQT)
185184

186185
buttond= {
187-
getattr(_enum("QtCore.Qt.MouseButton"),k):vfork,vin [
186+
getattr(QtCore.Qt.MouseButton,k):vfork,vin [
188187
("LeftButton",MouseButton.LEFT),
189188
("RightButton",MouseButton.RIGHT),
190189
("MiddleButton",MouseButton.MIDDLE),
@@ -202,8 +201,7 @@ def __init__(self, figure=None):
202201
self._draw_rect_callback=lambdapainter:None
203202
self._in_resize_event=False
204203

205-
self.setAttribute(
206-
_enum("QtCore.Qt.WidgetAttribute").WA_OpaquePaintEvent)
204+
self.setAttribute(QtCore.Qt.WidgetAttribute.WA_OpaquePaintEvent)
207205
self.setMouseTracking(True)
208206
self.resize(*self.get_width_height())
209207

@@ -554,7 +552,7 @@ def __init__(self, canvas, num):
554552
# StrongFocus accepts both tab and click to focus and will enable the
555553
# canvas to process event without clicking.
556554
# https://doc.qt.io/qt-5/qt.html#FocusPolicy-enum
557-
self.canvas.setFocusPolicy(_enum("QtCore.Qt.FocusPolicy").StrongFocus)
555+
self.canvas.setFocusPolicy(QtCore.Qt.FocusPolicy.StrongFocus)
558556
self.canvas.setFocus()
559557

560558
self.window.raise_()
@@ -634,9 +632,8 @@ def __init__(self, canvas, parent=None, coordinates=True):
634632
"""coordinates: should we show the coordinates on the right?"""
635633
QtWidgets.QToolBar.__init__(self,parent)
636634
self.setAllowedAreas(QtCore.Qt.ToolBarArea(
637-
_to_int(_enum("QtCore.Qt.ToolBarArea").TopToolBarArea)|
638-
_to_int(_enum("QtCore.Qt.ToolBarArea").BottomToolBarArea)))
639-
635+
_to_int(QtCore.Qt.ToolBarArea.TopToolBarArea)|
636+
_to_int(QtCore.Qt.ToolBarArea.BottomToolBarArea)))
640637
self.coordinates=coordinates
641638
self._actions= {}# mapping of toolitem method names to QActions.
642639
self._subplot_dialog=None
@@ -659,11 +656,12 @@ def __init__(self, canvas, parent=None, coordinates=True):
659656
ifself.coordinates:
660657
self.locLabel=QtWidgets.QLabel("",self)
661658
self.locLabel.setAlignment(QtCore.Qt.AlignmentFlag(
662-
_to_int(_enum("QtCore.Qt.AlignmentFlag").AlignRight)|
663-
_to_int(_enum("QtCore.Qt.AlignmentFlag").AlignVCenter)))
659+
_to_int(QtCore.Qt.AlignmentFlag.AlignRight)|
660+
_to_int(QtCore.Qt.AlignmentFlag.AlignVCenter)))
661+
664662
self.locLabel.setSizePolicy(QtWidgets.QSizePolicy(
665-
_enum("QtWidgets.QSizePolicy.Policy").Expanding,
666-
_enum("QtWidgets.QSizePolicy.Policy").Ignored,
663+
QtWidgets.QSizePolicy.Policy.Expanding,
664+
QtWidgets.QSizePolicy.Policy.Ignored,
667665
))
668666
labelAction=self.addWidget(self.locLabel)
669667
labelAction.setVisible(True)
@@ -689,7 +687,7 @@ def _icon(self, name):
689687
icon_color=self.palette().color(self.foregroundRole())
690688
mask=pm.createMaskFromColor(
691689
QtGui.QColor('black'),
692-
_enum("QtCore.Qt.MaskMode").MaskOutColor)
690+
QtCore.Qt.MaskMode.MaskOutColor)
693691
pm.fill(icon_color)
694692
pm.setMask(mask)
695693
returnQtGui.QIcon(pm)
@@ -793,8 +791,8 @@ def save_figure(self, *args):
793791
exceptExceptionase:
794792
QtWidgets.QMessageBox.critical(
795793
self,"Error saving file",str(e),
796-
_enum("QtWidgets.QMessageBox.StandardButton").Ok,
797-
_enum("QtWidgets.QMessageBox.StandardButton").NoButton)
794+
QtWidgets.QMessageBox.StandardButton.Ok,
795+
QtWidgets.QMessageBox.StandardButton.NoButton)
798796

799797
defset_history_buttons(self):
800798
can_backward=self._nav_stack._pos>0
@@ -908,15 +906,15 @@ def __init__(self, toolmanager, parent=None):
908906
ToolContainerBase.__init__(self,toolmanager)
909907
QtWidgets.QToolBar.__init__(self,parent)
910908
self.setAllowedAreas(QtCore.Qt.ToolBarArea(
911-
_to_int(_enum("QtCore.Qt.ToolBarArea").TopToolBarArea)|
912-
_to_int(_enum("QtCore.Qt.ToolBarArea").BottomToolBarArea)))
909+
_to_int(QtCore.Qt.ToolBarArea.TopToolBarArea)|
910+
_to_int(QtCore.Qt.ToolBarArea.BottomToolBarArea)))
913911
message_label=QtWidgets.QLabel("")
914912
message_label.setAlignment(QtCore.Qt.AlignmentFlag(
915-
_to_int(_enum("QtCore.Qt.AlignmentFlag").AlignRight)|
916-
_to_int(_enum("QtCore.Qt.AlignmentFlag").AlignVCenter)))
913+
_to_int(QtCore.Qt.AlignmentFlag.AlignRight)|
914+
_to_int(QtCore.Qt.AlignmentFlag.AlignVCenter)))
917915
message_label.setSizePolicy(QtWidgets.QSizePolicy(
918-
_enum("QtWidgets.QSizePolicy.Policy").Expanding,
919-
_enum("QtWidgets.QSizePolicy.Policy").Ignored,
916+
QtWidgets.QSizePolicy.Policy.Expanding,
917+
QtWidgets.QSizePolicy.Policy.Ignored,
920918
))
921919
self._message_action=self.addWidget(message_label)
922920
self._toolitems= {}

‎lib/matplotlib/backends/backend_qtagg.py‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@
66

77
frommatplotlib.transformsimportBbox
88

9-
from .qt_compatimportQT_API,_enum
9+
from .qt_compatimportQT_API,QtCore,QtGui
1010
from .backend_aggimportFigureCanvasAgg
11-
from .backend_qtimportQtCore,QtGui,_BackendQT,FigureCanvasQT
11+
from .backend_qtimport_BackendQT,FigureCanvasQT
1212
from .backend_qtimport (# noqa: F401 # pylint: disable=W0611
1313
FigureManagerQT,NavigationToolbar2QT)
1414

@@ -57,7 +57,7 @@ def paintEvent(self, event):
5757

5858
painter.eraseRect(rect)# clear the widget canvas
5959
qimage=QtGui.QImage(ptr,buf.shape[1],buf.shape[0],
60-
_enum("QtGui.QImage.Format").Format_RGBA8888)
60+
QtGui.QImage.Format.Format_RGBA8888)
6161
qimage.setDevicePixelRatio(self.device_pixel_ratio)
6262
# set origin using original QT coordinates
6363
origin=QtCore.QPoint(rect.left(),rect.top())

‎lib/matplotlib/backends/backend_qtcairo.py‎

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
importctypes
22

33
from .backend_cairoimportcairo,FigureCanvasCairo
4-
from .backend_qtimportQtCore,QtGui,_BackendQT,FigureCanvasQT
5-
from .qt_compatimportQT_API,_enum
4+
from .backend_qtimport_BackendQT,FigureCanvasQT
5+
from .qt_compatimportQT_API,QtCore,QtGui
66

77

88
classFigureCanvasQTCairo(FigureCanvasCairo,FigureCanvasQT):
@@ -28,7 +28,7 @@ def paintEvent(self, event):
2828
ptr=buf
2929
qimage=QtGui.QImage(
3030
ptr,width,height,
31-
_enum("QtGui.QImage.Format").Format_ARGB32_Premultiplied)
31+
QtGui.QImage.Format.Format_ARGB32_Premultiplied)
3232
# Adjust the buf reference count to work around a memory leak bug in
3333
# QImage under PySide.
3434
ifQT_API=="PySide2"andQtCore.__version_info__< (5,12):

‎lib/matplotlib/backends/qt_compat.py‎

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,6 @@
99
- otherwise, use whatever the rcParams indicate.
1010
"""
1111

12-
importfunctools
1312
importoperator
1413
importos
1514
importplatform
@@ -140,11 +139,11 @@ def _isdeleted(obj):
140139
_version_info=tuple(QtCore.QLibraryInfo.version().segments())
141140

142141

143-
if_version_info< (5,10):
142+
if_version_info< (5,12):
144143
raiseImportError(
145144
f"The Qt version imported is "
146145
f"{QtCore.QLibraryInfo.version().toString()} but Matplotlib requires "
147-
f"Qt>=5.10")
146+
f"Qt>=5.12")
148147

149148

150149
# Fixes issues with Big Sur
@@ -155,17 +154,6 @@ def _isdeleted(obj):
155154
os.environ.setdefault("QT_MAC_WANTS_LAYER","1")
156155

157156

158-
# PyQt6 enum compat helpers.
159-
160-
161-
@functools.cache
162-
def_enum(name):
163-
# foo.bar.Enum.Entry (PyQt6) <=> foo.bar.Entry (non-PyQt6).
164-
returnoperator.attrgetter(
165-
nameifQT_API=='PyQt6'elsename.rpartition(".")[0]
166-
)(sys.modules[QtCore.__package__])
167-
168-
169157
# Backports.
170158

171159

@@ -208,7 +196,7 @@ def _maybe_allow_interrupt(qapp):
208196
wsock.setblocking(False)
209197
old_wakeup_fd=signal.set_wakeup_fd(wsock.fileno())
210198
sn=QtCore.QSocketNotifier(
211-
rsock.fileno(),_enum('QtCore.QSocketNotifier.Type').Read
199+
rsock.fileno(),QtCore.QSocketNotifier.Type.Read
212200
)
213201

214202
# We do not actually care about this value other than running some

‎lib/matplotlib/backends/qt_editor/_formlayout.py‎

Lines changed: 7 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -49,8 +49,7 @@
4949
fromnumbersimportIntegral,Real
5050

5151
frommatplotlibimport_api,colorsasmcolors
52-
frommatplotlib.backends.qt_compatimport (
53-
QtGui,QtWidgets,QtCore,_enum,_to_int)
52+
frommatplotlib.backends.qt_compatimport_to_int,QtGui,QtWidgets,QtCore
5453

5554
_log=logging.getLogger(__name__)
5655

@@ -73,7 +72,7 @@ def __init__(self, parent=None):
7372
defchoose_color(self):
7473
color=QtWidgets.QColorDialog.getColor(
7574
self._color,self.parentWidget(),"",
76-
_enum("QtWidgets.QColorDialog.ColorDialogOption").ShowAlphaChannel)
75+
QtWidgets.QColorDialog.ColorDialogOption.ShowAlphaChannel)
7776
ifcolor.isValid():
7877
self.set_color(color)
7978

@@ -206,7 +205,7 @@ def get_font(self):
206205
defis_edit_valid(edit):
207206
text=edit.text()
208207
state=edit.validator().validate(text,0)[0]
209-
returnstate==_enum("QtGui.QDoubleValidator.State").Acceptable
208+
returnstate==QtGui.QDoubleValidator.State.Acceptable
210209

211210

212211
classFormWidget(QtWidgets.QWidget):
@@ -444,15 +443,13 @@ def __init__(self, data, title="", comment="",
444443
# Button box
445444
self.bbox=bbox=QtWidgets.QDialogButtonBox(
446445
QtWidgets.QDialogButtonBox.StandardButton(
447-
_to_int(
448-
_enum("QtWidgets.QDialogButtonBox.StandardButton").Ok)|
449-
_to_int(
450-
_enum("QtWidgets.QDialogButtonBox.StandardButton").Cancel)
446+
_to_int(QtWidgets.QDialogButtonBox.StandardButton.Ok)|
447+
_to_int(QtWidgets.QDialogButtonBox.StandardButton.Cancel)
451448
))
452449
self.formwidget.update_buttons.connect(self.update_buttons)
453450
ifself.apply_callbackisnotNone:
454451
apply_btn=bbox.addButton(
455-
_enum("QtWidgets.QDialogButtonBox.StandardButton").Apply)
452+
QtWidgets.QDialogButtonBox.StandardButton.Apply)
456453
apply_btn.clicked.connect(self.apply)
457454

458455
bbox.accepted.connect(self.accept)
@@ -477,7 +474,7 @@ def update_buttons(self):
477474
valid=False
478475
forbtn_typein ["Ok","Apply"]:
479476
btn=self.bbox.button(
480-
getattr(_enum("QtWidgets.QDialogButtonBox.StandardButton"),
477+
getattr(QtWidgets.QDialogButtonBox.StandardButton,
481478
btn_type))
482479
ifbtnisnotNone:
483480
btn.setEnabled(valid)

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp