diff options
Diffstat (limited to 'src/components/qt_hmi/qml_model_qt5/popups/VRPopUp.qml')
-rw-r--r-- | src/components/qt_hmi/qml_model_qt5/popups/VRPopUp.qml | 66 |
1 files changed, 64 insertions, 2 deletions
diff --git a/src/components/qt_hmi/qml_model_qt5/popups/VRPopUp.qml b/src/components/qt_hmi/qml_model_qt5/popups/VRPopUp.qml index 2acf4f0651..ed33e5ca8d 100644 --- a/src/components/qt_hmi/qml_model_qt5/popups/VRPopUp.qml +++ b/src/components/qt_hmi/qml_model_qt5/popups/VRPopUp.qml @@ -57,22 +57,47 @@ PopUp { anchors.right: parent.right source: "../res/controlButtons/vrImage.png" } + OvalButton{ + id:helpButton + anchors.rightMargin: Constants.popupMargin + anchors.leftMargin: Constants.popupMargin + anchors.top: voice.bottom + anchors.left: parent.left + anchors.right: parent.right + text: "Help" + onClicked:{ + if (interactionPopup.performInteractionIsActiveNow) + ttsPopUp.activate(ttsPopUp.helpPromptstr) + if (dataContainer.activeVR) { + vrPopUp.complete(); + vrHelpPopup.hide() + } + } + } ScrollableListView { anchors.bottomMargin: Constants.popupMargin anchors.rightMargin: Constants.popupMargin anchors.leftMargin: Constants.popupMargin - anchors.top: voice.bottom + anchors.top: helpButton.bottom anchors.right: parent.right anchors.bottom: parent.bottom anchors.left: parent.left - model: dataContainer.vrCommands + model: if (interactionPopup.grammarID) { + dataContainer.choicesVrCommands + } + else { + dataContainer.vrCommands + } delegate: OvalButton { width: parent.width text: command + visible: visibleButtons(grammarID,type) onClicked: { + if (interactionPopup.performInteractionIsActiveNow && type === Common.VRCommandType.Choice) + interactionPopup.complete(Common.Result.SUCCESS, {"choiceID": cmdID}) sdlVR.onCommand(cmdID, appID === 0 ? undefined : appID); if (dataContainer.activeVR) { vrPopUp.complete(); @@ -93,4 +118,41 @@ PopUp { sdlVR.stopped(); hide(); } + + function sortModelforPerformInteraction() { + var n, + i, + j; + for (n = 0; n < dataContainer.choicesVrCommands.count; n++) { + for (i = n + 1; i < dataContainer.choicesVrCommands.count; i++) { + if (dataContainer.choicesVrCommands.get(n).type === Common.VRCommandType.Command && + dataContainer.choicesVrCommands.get(i).type === Common.VRCommandType.Choice) { + dataContainer.choicesVrCommands.move(i, n, 1); + n = 0; + } + } + } + for (j = interactionPopup.grammarID.length; j > 0; j--) { + for (n = 0; n < dataContainer.choicesVrCommands.count && + dataContainer.choicesVrCommands.get(n).type === Common.VRCommandType.Choice; n++) { + for (i = n + 1; i < dataContainer.choicesVrCommands.count && + dataContainer.choicesVrCommands.get(i).type === Common.VRCommandType.Choice; i++) { + if (dataContainer.choicesVrCommands.get(n).grammarID !== interactionPopup.grammarID[j-1] + && dataContainer.choicesVrCommands.get(i).grammarID === interactionPopup.grammarID[j-1]) { + dataContainer.choicesVrCommands.move(i, n, 1); + n = 0; + } + } + } + } + } + + function visibleButtons(grammarID, type) { + if (interactionPopup.grammarID) { + return interactionPopup.grammarID.indexOf(grammarID) !== -1 + } + else { + return type === Common.VRCommandType.Command + } + } } |