From b5f0c4d940ea38a99b91406056f408e5e324934c Mon Sep 17 00:00:00 2001 From: vladest Date: Mon, 25 Sep 2017 16:46:36 +0200 Subject: [PATCH] Added settings controls sounds --- interface/resources/qml/controls-uit/Button.qml | 11 +++++++++++ interface/resources/qml/controls-uit/GlyphButton.qml | 11 +++++++++++ .../qml/dialogs/preferences/ButtonPreference.qml | 12 +++++++++++- .../qml/dialogs/preferences/CheckBoxPreference.qml | 11 +++++++++++ interface/src/Application.cpp | 2 ++ 5 files changed, 46 insertions(+), 1 deletion(-) diff --git a/interface/resources/qml/controls-uit/Button.qml b/interface/resources/qml/controls-uit/Button.qml index 59f8a63238..20174b13c2 100644 --- a/interface/resources/qml/controls-uit/Button.qml +++ b/interface/resources/qml/controls-uit/Button.qml @@ -11,6 +11,7 @@ import QtQuick 2.5 import QtQuick.Controls 1.4 as Original import QtQuick.Controls.Styles 1.4 +import TabletScriptingInterface 1.0 import "../styles-uit" @@ -23,6 +24,16 @@ Original.Button { HifiConstants { id: hifi } + onHoveredChanged: { + if (hovered) { + tabletInterface.playSound(TabletEnums.ButtonHover) + } + } + + onClicked: { + tabletInterface.playSound(TabletEnums.ButtonClick) + } + style: ButtonStyle { background: Rectangle { diff --git a/interface/resources/qml/controls-uit/GlyphButton.qml b/interface/resources/qml/controls-uit/GlyphButton.qml index ac353b5a52..24ef4afdff 100644 --- a/interface/resources/qml/controls-uit/GlyphButton.qml +++ b/interface/resources/qml/controls-uit/GlyphButton.qml @@ -12,6 +12,7 @@ import QtQuick 2.5 import QtQuick.Controls 1.4 as Original import QtQuick.Controls.Styles 1.4 +import TabletScriptingInterface 1.0 import "../styles-uit" @@ -24,6 +25,16 @@ Original.Button { width: 120 height: 28 + onHoveredChanged: { + if (hovered) { + tabletInterface.playSound(TabletEnums.ButtonHover) + } + } + + onClicked: { + tabletInterface.playSound(TabletEnums.ButtonClick) + } + style: ButtonStyle { background: Rectangle { diff --git a/interface/resources/qml/dialogs/preferences/ButtonPreference.qml b/interface/resources/qml/dialogs/preferences/ButtonPreference.qml index 06332bd1be..bb959f1bee 100644 --- a/interface/resources/qml/dialogs/preferences/ButtonPreference.qml +++ b/interface/resources/qml/dialogs/preferences/ButtonPreference.qml @@ -9,6 +9,7 @@ // import QtQuick 2.5 +import TabletScriptingInterface 1.0 import "../../controls-uit" @@ -22,7 +23,16 @@ Preference { Button { id: button - onClicked: preference.trigger() + onHoveredChanged: { + if (hovered) { + tabletInterface.playSound(TabletEnums.ButtonHover) + } + } + + onClicked: { + preference.trigger() + tabletInterface.playSound(TabletEnums.ButtonClick) + } width: 180 anchors.bottom: parent.bottom } diff --git a/interface/resources/qml/dialogs/preferences/CheckBoxPreference.qml b/interface/resources/qml/dialogs/preferences/CheckBoxPreference.qml index f8f992735c..7c336d7829 100644 --- a/interface/resources/qml/dialogs/preferences/CheckBoxPreference.qml +++ b/interface/resources/qml/dialogs/preferences/CheckBoxPreference.qml @@ -9,6 +9,7 @@ // import QtQuick 2.5 +import TabletScriptingInterface 1.0 import "../../controls-uit" @@ -38,6 +39,16 @@ Preference { CheckBox { id: checkBox + onHoveredChanged: { + if (hovered) { + tabletInterface.playSound(TabletEnums.ButtonHover) + } + } + + onClicked: { + tabletInterface.playSound(TabletEnums.ButtonClick) + } + anchors { top: spacer.bottom left: parent.left diff --git a/interface/src/Application.cpp b/interface/src/Application.cpp index ce615a4739..b9289be47c 100644 --- a/interface/src/Application.cpp +++ b/interface/src/Application.cpp @@ -2310,6 +2310,8 @@ void Application::initializeUi() { surfaceContext->setContextProperty("Account", AccountScriptingInterface::getInstance()); surfaceContext->setContextProperty("Tablet", DependencyManager::get().data()); + // Tablet inteference with Tablet.qml. Need to avoid this in QML space + surfaceContext->setContextProperty("tabletInterface", DependencyManager::get().data()); surfaceContext->setContextProperty("DialogsManager", _dialogsManagerScriptingInterface); surfaceContext->setContextProperty("GlobalServices", GlobalServicesScriptingInterface::getInstance()); surfaceContext->setContextProperty("FaceTracker", DependencyManager::get().data());