From fedd27e1faa65d38a1a5b11f750b5ae2fb5c4006 Mon Sep 17 00:00:00 2001 From: Albert Astals Cid Date: Wed, 3 Apr 2013 11:07:18 +0200 Subject: Make keyClick/Press/Release work with a char Change-Id: Id821bddd993d4da4458464713a69edfea4aaecaa Reviewed-by: Oswald Buddenhagen Reviewed-by: Alan Alpert --- src/qmltest/quicktestevent.cpp | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) (limited to 'src/qmltest/quicktestevent.cpp') diff --git a/src/qmltest/quicktestevent.cpp b/src/qmltest/quicktestevent.cpp index 16ba80083f..1f72bc65c1 100644 --- a/src/qmltest/quicktestevent.cpp +++ b/src/qmltest/quicktestevent.cpp @@ -83,6 +83,36 @@ bool QuickTestEvent::keyClick(int key, int modifiers, int delay) return true; } +bool QuickTestEvent::keyPressChar(const QString &character, int modifiers, int delay) +{ + QTEST_ASSERT(character.length() == 1); + QWindow *window = eventWindow(); + if (!window) + return false; + QTest::keyPress(window, character[0].toLatin1(), Qt::KeyboardModifiers(modifiers), delay); + return true; +} + +bool QuickTestEvent::keyReleaseChar(const QString &character, int modifiers, int delay) +{ + QTEST_ASSERT(character.length() == 1); + QWindow *window = eventWindow(); + if (!window) + return false; + QTest::keyRelease(window, character[0].toLatin1(), Qt::KeyboardModifiers(modifiers), delay); + return true; +} + +bool QuickTestEvent::keyClickChar(const QString &character, int modifiers, int delay) +{ + QTEST_ASSERT(character.length() == 1); + QWindow *window = eventWindow(); + if (!window) + return false; + QTest::keyClick(window, character[0].toLatin1(), Qt::KeyboardModifiers(modifiers), delay); + return true; +} + namespace QTest { extern int Q_TESTLIB_EXPORT defaultMouseDelay(); }; -- cgit v1.2.3