From b841e3094d02f8260cbc59ec798ff153080b40c4 Mon Sep 17 00:00:00 2001 From: Seth Alves Date: Mon, 12 Sep 2016 16:23:05 -0700 Subject: [PATCH] qml keyboard for file dialog --- .../resources/qml/dialogs/FileDialog.qml | 40 ++++++++++++++++++- 1 file changed, 38 insertions(+), 2 deletions(-) diff --git a/interface/resources/qml/dialogs/FileDialog.qml b/interface/resources/qml/dialogs/FileDialog.qml index ff8be580db..86804099e0 100644 --- a/interface/resources/qml/dialogs/FileDialog.qml +++ b/interface/resources/qml/dialogs/FileDialog.qml @@ -19,6 +19,7 @@ import ".." import "../controls-uit" import "../styles-uit" import "../windows" +import "../controls" as Controls import "fileDialog" @@ -27,7 +28,7 @@ ModalWindow { id: root resizable: true implicitWidth: 480 - implicitHeight: 360 + implicitHeight: 360 + (fileDialogItem.keyboardRaised ? 200 + (2 * hifi.dimensions.contentSpacing.y) : 0) minSize: Qt.vector2d(360, 240) draggable: true @@ -100,11 +101,16 @@ ModalWindow { } Item { + id: fileDialogItem clip: true width: pane.width height: pane.height anchors.margins: 0 + property bool keyboardRaised: false + property bool punctuationMode: false + + MouseArea { // Clear selection when click on internal unused area. anchors.fill: parent @@ -619,7 +625,7 @@ ModalWindow { left: parent.left right: selectionType.visible ? selectionType.left: parent.right rightMargin: selectionType.visible ? hifi.dimensions.contentSpacing.x : 0 - bottom: buttonRow.top + bottom: keyboard1.top bottomMargin: hifi.dimensions.contentSpacing.y } readOnly: !root.saveDialog @@ -640,6 +646,36 @@ ModalWindow { KeyNavigation.right: openButton } + + // virtual keyboard, letters + Controls.Keyboard { + id: keyboard1 + // y: parent.keyboardRaised ? parent.height : 0 + height: parent.keyboardRaised ? 200 : 0 + visible: parent.keyboardRaised && !parent.punctuationMode + enabled: parent.keyboardRaised && !parent.punctuationMode + anchors.right: parent.right + anchors.rightMargin: 0 + anchors.left: parent.left + anchors.leftMargin: 0 + anchors.bottom: buttonRow.top + anchors.bottomMargin: 2 * hifi.dimensions.contentSpacing.y + } + + Controls.KeyboardPunctuation { + id: keyboard2 + // y: parent.keyboardRaised ? parent.height : 0 + height: parent.keyboardRaised ? 200 : 0 + visible: parent.keyboardRaised && parent.punctuationMode + enabled: parent.keyboardRaised && parent.punctuationMode + anchors.right: parent.right + anchors.rightMargin: 0 + anchors.left: parent.left + anchors.leftMargin: 0 + anchors.bottom: buttonRow.top + anchors.bottomMargin: 2 * hifi.dimensions.contentSpacing.y + } + Row { id: buttonRow anchors {