aboutsummaryrefslogtreecommitdiffstats
path: root/sources/pyside6/tests/QtWidgets
diff options
context:
space:
mode:
authorCristian Maureira-Fredes <cristian.maureira-fredes@qt.io>2019-01-11 10:13:14 +0100
committerFriedemann Kleint <Friedemann.Kleint@qt.io>2021-06-18 15:28:28 +0200
commita45ee7a68e3fbcf99eb31e8a395779cc0a9f3540 (patch)
treedf3bde78213e01af6037a54e7ac553b61e302f18 /sources/pyside6/tests/QtWidgets
parentfd3dbb4678526535bb3e50d39dd69d590304890b (diff)
PySide6: Add QKey support for the setShortcut method
When this method is used in Qt/C++, the argument gets internally cast to a QKeyCombination if it is a QKey, but in Python land this is not automatically covered. A workaround was for the users to manually cast the QKey, but this adds an extra step to achieve the same. This patch adds a new method to QAction and QAbstractButton to use setShortcut with a QKey as an argument. Pick-to: 6.1 Change-Id: I9e9ebe16a65cb5aeb26a367faecbbbd414d80e03 Fixes: PYSIDE-907 Reviewed-by: Christian Tismer <tismer@stackless.com> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org>
Diffstat (limited to 'sources/pyside6/tests/QtWidgets')
-rw-r--r--sources/pyside6/tests/QtWidgets/add_action_test.py4
-rw-r--r--sources/pyside6/tests/QtWidgets/qpushbutton_test.py3
2 files changed, 5 insertions, 2 deletions
diff --git a/sources/pyside6/tests/QtWidgets/add_action_test.py b/sources/pyside6/tests/QtWidgets/add_action_test.py
index 1260f4e17..5342b9d55 100644
--- a/sources/pyside6/tests/QtWidgets/add_action_test.py
+++ b/sources/pyside6/tests/QtWidgets/add_action_test.py
@@ -37,7 +37,7 @@ sys.path.append(os.fspath(Path(__file__).resolve().parents[1]))
from init_paths import init_test_paths
init_test_paths(False)
-from PySide6.QtCore import SLOT
+from PySide6.QtCore import Qt, SLOT
from PySide6.QtGui import QAction
from PySide6.QtWidgets import QMenuBar, QPushButton
@@ -62,6 +62,7 @@ class AddActionTest(UsesQApplication):
menubar = QMenuBar()
action = menubar.addAction("Accounts", self._callback)
action.activate(QAction.Trigger)
+ action.setShortcut(Qt.Key_A)
self.assertTrue(self.called)
def testWithCppSlot(self):
@@ -71,6 +72,7 @@ class AddActionTest(UsesQApplication):
widget.setCheckable(True)
widget.setChecked(False)
action = menubar.addAction("Accounts", widget, SLOT("toggle()"))
+ action.setShortcut(Qt.Key_A)
action.activate(QAction.Trigger)
self.assertTrue(widget.isChecked())
diff --git a/sources/pyside6/tests/QtWidgets/qpushbutton_test.py b/sources/pyside6/tests/QtWidgets/qpushbutton_test.py
index 3b23e1b9c..859202bb4 100644
--- a/sources/pyside6/tests/QtWidgets/qpushbutton_test.py
+++ b/sources/pyside6/tests/QtWidgets/qpushbutton_test.py
@@ -37,7 +37,7 @@ init_test_paths(False)
from helper.usesqapplication import UsesQApplication
from PySide6.QtWidgets import QPushButton, QMenu, QWidget
-from PySide6.QtCore import QTimer
+from PySide6.QtCore import QTimer, Qt
class MyWidget(QWidget):
@@ -67,6 +67,7 @@ class QPushButtonTest(UsesQApplication):
def testBoolinSignal(self):
b = QPushButton()
b.setCheckable(True)
+ b.setShortcut(Qt.Key_A)
self._clicked = False
b.toggled[bool].connect(self.buttonCb)
b.toggle()