From b2b29efeb4d56564ba937343ae23f984a4cf9417 Mon Sep 17 00:00:00 2001 From: Chengyu Liu Date: Fri, 28 Apr 2023 11:32:12 +0900 Subject: [PATCH 1/3] MAINT: fix type error of comparing int and KeyboardModifier --- enable/qt/base_window.py | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/enable/qt/base_window.py b/enable/qt/base_window.py index 0e9e02ad..8c778514 100644 --- a/enable/qt/base_window.py +++ b/enable/qt/base_window.py @@ -439,9 +439,9 @@ def _create_key_event(self, event_type, event): character=key, x=x, y=self._flip_y(y), - alt_down=bool(modifiers & QtCore.Qt.AltModifier), - shift_down=bool(modifiers & QtCore.Qt.ShiftModifier), - control_down=bool(modifiers & QtCore.Qt.ControlModifier), + alt_down=bool(modifiers & QtCore.Qt.KeyboardModifier.AltModifier), + shift_down=bool(modifiers & QtCore.Qt.KeyboardModifier.ShiftModifier), + control_down=bool(modifiers & QtCore.Qt.KeyboardModifier.ControlModifier), event=event, window=self, ) @@ -465,8 +465,8 @@ def _create_mouse_event(self, event): pos = self.control.mapFromGlobal(QtGui.QCursor.pos()) x = pos.x() y = pos.y() - modifiers = 0 - buttons = 0 + modifiers = QtCore.Qt.KeyboardModifier.NoModifier + buttons = QtCore.Qt.NoButton self.control.handler.last_mouse_pos = (x, y) @@ -499,9 +499,9 @@ def _create_mouse_event(self, event): mouse_wheel=mouse_wheel, mouse_wheel_axis=mouse_wheel_axis, mouse_wheel_delta=mouse_wheel_delta, - alt_down=bool(modifiers & QtCore.Qt.AltModifier), - shift_down=bool(modifiers & QtCore.Qt.ShiftModifier), - control_down=bool(modifiers & QtCore.Qt.ControlModifier), + alt_down=bool(modifiers & QtCore.Qt.KeyboardModifier.AltModifier), + shift_down=bool(modifiers & QtCore.Qt.KeyboardModifier.ShiftModifier), + control_down=bool(modifiers & QtCore.Qt.KeyboardModifier.ControlModifier), left_down=bool(buttons & QtCore.Qt.LeftButton), middle_down=bool(buttons & QtCore.Qt.MiddleButton), right_down=bool(buttons & QtCore.Qt.RightButton), From 0ba334c609fd6db613dc1f2f58568f9f5adb7e64 Mon Sep 17 00:00:00 2001 From: Chengyu Liu Date: Mon, 1 May 2023 14:16:25 +0900 Subject: [PATCH 2/3] MAINT: add detail explanation of the AttributeError happening --- enable/qt/base_window.py | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/enable/qt/base_window.py b/enable/qt/base_window.py index 8c778514..8b9e3a95 100644 --- a/enable/qt/base_window.py +++ b/enable/qt/base_window.py @@ -461,6 +461,11 @@ def _create_mouse_event(self, event): y = event.position().y() modifiers = event.modifiers() buttons = event.buttons() + # The AttributeError is usually trigged when the mouse pointer + # leaves the ui window since the event of leaving the window + # is a "QEvent", which doesn't contain x and y positions like + # QMouseEvent (for mouse movement) or QEnterEvent (for mouse + # entering the window) from QGui. except AttributeError: pos = self.control.mapFromGlobal(QtGui.QCursor.pos()) x = pos.x() From e0de44e79036a113c1584acc8d024b94eb52aef2 Mon Sep 17 00:00:00 2001 From: Chengyu Liu Date: Mon, 8 May 2023 19:12:09 +0900 Subject: [PATCH 3/3] MAINT: 1 add mousebutton to the qt button calls 2 remove comments about QGUI coordinates --- enable/qt/base_window.py | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/enable/qt/base_window.py b/enable/qt/base_window.py index 8b9e3a95..8a29ae39 100644 --- a/enable/qt/base_window.py +++ b/enable/qt/base_window.py @@ -463,15 +463,13 @@ def _create_mouse_event(self, event): buttons = event.buttons() # The AttributeError is usually trigged when the mouse pointer # leaves the ui window since the event of leaving the window - # is a "QEvent", which doesn't contain x and y positions like - # QMouseEvent (for mouse movement) or QEnterEvent (for mouse - # entering the window) from QGui. + # is a "QEvent", which doesn't contain x and y positions. except AttributeError: pos = self.control.mapFromGlobal(QtGui.QCursor.pos()) x = pos.x() y = pos.y() modifiers = QtCore.Qt.KeyboardModifier.NoModifier - buttons = QtCore.Qt.NoButton + buttons = QtCore.Qt.MouseButton.NoButton self.control.handler.last_mouse_pos = (x, y) @@ -507,9 +505,9 @@ def _create_mouse_event(self, event): alt_down=bool(modifiers & QtCore.Qt.KeyboardModifier.AltModifier), shift_down=bool(modifiers & QtCore.Qt.KeyboardModifier.ShiftModifier), control_down=bool(modifiers & QtCore.Qt.KeyboardModifier.ControlModifier), - left_down=bool(buttons & QtCore.Qt.LeftButton), - middle_down=bool(buttons & QtCore.Qt.MiddleButton), - right_down=bool(buttons & QtCore.Qt.RightButton), + left_down=bool(buttons & QtCore.Qt.MouseButton.LeftButton), + middle_down=bool(buttons & QtCore.Qt.MouseButton.MiddleButton), + right_down=bool(buttons & QtCore.Qt.MouseButton.RightButton), window=self, )