summaryrefslogtreecommitdiffstats
path: root/imports/agl-demo-controls/Symbols.qml
diff options
context:
space:
mode:
Diffstat (limited to 'imports/agl-demo-controls/Symbols.qml')
-rw-r--r--imports/agl-demo-controls/Symbols.qml138
1 files changed, 138 insertions, 0 deletions
diff --git a/imports/agl-demo-controls/Symbols.qml b/imports/agl-demo-controls/Symbols.qml
new file mode 100644
index 0000000..a47ccea
--- /dev/null
+++ b/imports/agl-demo-controls/Symbols.qml
@@ -0,0 +1,138 @@
+/*
+ * Copyright (C) 2016 The Qt Company Ltd.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import QtQuick 2.6
+import QtQuick.Window 2.0
+import QtQuick.Layouts 1.1
+
+AbstractKeyboard {
+ id: root
+
+ ColumnLayout {
+ anchors.fill: parent
+ anchors.margins: root.height / 10
+ RowLayout {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Repeater {
+ model: ['1', '2', '3', '4', '5', '6', '7', '8', '9', '0']
+ delegate: Key {
+ text: model.modelData
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ }
+ }
+ }
+ RowLayout {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Item {
+ Layout.preferredWidth: 1
+ Layout.fillWidth: true
+ }
+
+ Repeater {
+ model: ['@', '#', '%', '&', '*', '-', '+', '(', ')']
+ delegate: Key {
+ text: model.modelData
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ }
+ }
+ Item {
+ Layout.preferredWidth: 1
+ Layout.fillWidth: true
+ }
+ }
+ RowLayout {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Key {
+ id: shift
+ image: './images/Keyboard_Shift.svg'
+ checkable: true
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ }
+ Repeater {
+ model: ['!', '"', '<', '>', '\'', ':', ';', '/']
+ delegate: Key {
+ text: model.modelData
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ capital: shift.checked
+ }
+ }
+ Key {
+ image: './images/Keyboard_Back.svg'
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ onClicked: {
+ if (!clearSelctedText()) {
+ var input = keyboard.target
+ if (input.cursorPosition > 0)
+ keyboard.target.remove(input.cursorPosition - 1, input.cursorPosition)
+ }
+ }
+ }
+ }
+ RowLayout {
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ Key {
+ text: 'ABC'
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ onClicked: root.toggleMode()
+ }
+ Key {
+ text: '.'
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ }
+ Key {
+ text: ' '
+ image: './images/Keyboard_Space.svg'
+ Layout.preferredWidth: 12
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ }
+ Key {
+ text: '!?'
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ onClicked: root.toggleMode()
+ }
+ Key {
+ image: './images/Keyboard_Arrow.svg'
+ Layout.preferredWidth: 2
+ Layout.fillWidth: true
+ Layout.fillHeight: true
+ onClicked: {
+ root.hide()
+ }
+ }
+ }
+ }
+}