aboutsummaryrefslogtreecommitdiffstats
path: root/examples/quick/demos/calqlatr/calqlatr.qml
diff options
context:
space:
mode:
Diffstat (limited to 'examples/quick/demos/calqlatr/calqlatr.qml')
-rw-r--r--examples/quick/demos/calqlatr/calqlatr.qml52
1 files changed, 49 insertions, 3 deletions
diff --git a/examples/quick/demos/calqlatr/calqlatr.qml b/examples/quick/demos/calqlatr/calqlatr.qml
index 5f0ebe85a8..8bda2c521e 100644
--- a/examples/quick/demos/calqlatr/calqlatr.qml
+++ b/examples/quick/demos/calqlatr/calqlatr.qml
@@ -53,13 +53,22 @@ Rectangle {
onWidthChanged: controller.reload()
onHeightChanged: controller.reload()
- function operatorPressed(operator) { CalcEngine.operatorPressed(operator) }
- function digitPressed(digit) { CalcEngine.digitPressed(digit) }
+ function operatorPressed(operator) {
+ CalcEngine.operatorPressed(operator)
+ numPad.buttonPressed()
+ }
+ function digitPressed(digit) {
+ CalcEngine.digitPressed(digit)
+ numPad.buttonPressed()
+ }
+ function isButtonDisabled(op) {
+ return CalcEngine.disabled(op)
+ }
Item {
id: pad
width: 180
- NumberPad { y: 10; anchors.horizontalCenter: parent.horizontalCenter }
+ NumberPad { id: numPad; y: 10; anchors.horizontalCenter: parent.horizontalCenter }
}
AnimationController {
@@ -75,6 +84,43 @@ Rectangle {
}
}
+ Keys.onPressed: {
+ if (event.key == Qt.Key_0)
+ digitPressed("0")
+ else if (event.key == Qt.Key_1)
+ digitPressed("1")
+ else if (event.key == Qt.Key_2)
+ digitPressed("2")
+ else if (event.key == Qt.Key_3)
+ digitPressed("3")
+ else if (event.key == Qt.Key_4)
+ digitPressed("4")
+ else if (event.key == Qt.Key_5)
+ digitPressed("5")
+ else if (event.key == Qt.Key_6)
+ digitPressed("6")
+ else if (event.key == Qt.Key_7)
+ digitPressed("7")
+ else if (event.key == Qt.Key_8)
+ digitPressed("8")
+ else if (event.key == Qt.Key_9)
+ digitPressed("9")
+ else if (event.key == Qt.Key_Plus)
+ operatorPressed("+")
+ else if (event.key == Qt.Key_Minus)
+ operatorPressed("−")
+ else if (event.key == Qt.Key_Asterisk)
+ operatorPressed("×")
+ else if (event.key == Qt.Key_Slash)
+ operatorPressed("÷")
+ else if (event.key == Qt.Key_Enter || event.key == Qt.Key_Return)
+ operatorPressed("=")
+ else if (event.key == Qt.Key_Comma || event.key == Qt.Key_Period)
+ digitPressed(".")
+ else if (event.key == Qt.Key_Backspace)
+ operatorPressed("backspace")
+ }
+
Display {
id: display
x: -16