From 335c4cb07e19b71b9b9a814fe5781e5fd950dea5 Mon Sep 17 00:00:00 2001 From: Lukas Waslowski Date: Sat, 2 Nov 2024 00:47:29 +0100 Subject: [PATCH] Use QKeyEvent::text() for handling Key_0..9 Co-authored-by: ronso0 --- src/widget/wstarrating.cpp | 51 +++++++++++--------------------------- 1 file changed, 14 insertions(+), 37 deletions(-) diff --git a/src/widget/wstarrating.cpp b/src/widget/wstarrating.cpp index d75ef82642d..8bdce242918 100644 --- a/src/widget/wstarrating.cpp +++ b/src/widget/wstarrating.cpp @@ -96,44 +96,21 @@ void WStarRating::keyPressEvent(QKeyEvent* event) { QKeyEvent* ke = static_cast(event); int newRating = m_visualStarRating.starCount(); switch (ke->key()) { - case Qt::Key_0: { - newRating = 0; - break; - } - case Qt::Key_1: { - newRating = 1; - break; - } - case Qt::Key_2: { - newRating = 2; - break; - } - case Qt::Key_3: { - newRating = 3; - break; - } - case Qt::Key_4: { - newRating = 4; - break; - } - case Qt::Key_5: { - newRating = 5; - break; - } - case Qt::Key_6: { - newRating = 6; - break; - } - case Qt::Key_7: { - newRating = 7; - break; - } - case Qt::Key_8: { - newRating = 8; - break; - } + case Qt::Key_0: + case Qt::Key_1: + case Qt::Key_2: + case Qt::Key_3: + case Qt::Key_4: + case Qt::Key_5: + case Qt::Key_6: + case Qt::Key_7: + case Qt::Key_8: case Qt::Key_9: { - newRating = 9; + bool ok = false; + int keyInt = ke->text().toInt(&ok); + if (ok) { + newRating = keyInt; + } break; } case Qt::Key_Right: