Index: sources/gui/qml/dialogs/headerbar/HeaderbarSettings.qml =================================================================== diff -u -r56c2adbc6e724c09d5ca9d61cb0a1581d46daf02 -rbea36be2766046e63c4e82539a630b5cee7ce1c6 --- sources/gui/qml/dialogs/headerbar/HeaderbarSettings.qml (.../HeaderbarSettings.qml) (revision 56c2adbc6e724c09d5ca9d61cb0a1581d46daf02) +++ sources/gui/qml/dialogs/headerbar/HeaderbarSettings.qml (.../HeaderbarSettings.qml) (revision bea36be2766046e63c4e82539a630b5cee7ce1c6) @@ -1,144 +1,60 @@ -import QtQuick 2.12 + import "qrc:/components" +import "qrc:/compounds" import "qrc:/globals" + +import QtQuick 2.12 +//import QtQuick.Controls 2.15 + HeaderBarPopup { id: _root - readonly property int sliderWidth : 430 - readonly property color sliderBkgndColor : Colors.dialogShadowColor - readonly property color valueColor : Colors.dialogValueColor - padding : Variables.defaultMargin + padding : Variables.defaultMargin * 2 QtObject { id: _private - readonly property var textFont : Qt.font ({ pixelSize: Fonts.fontPixelDialogText, weight: Font.Medium }) - readonly property var valueFont : Qt.font ({ pixelSize: 28, weight: Font.DemiBold }) - readonly property int columnWidth : sliderWidth + padding * 2 - readonly property int columnSpacing : Variables.defaultMargin * 2 - readonly property int itemHeight : 30 + readonly property int sliderWidth : 430 + readonly property int columnWidth : sliderWidth + padding * 2 } contentItem: Column { id : _dialogColumn anchors.centerIn : parent width : _private.columnWidth - spacing : Variables.defaultMargin + spacing : Variables.defaultMargin * 2 - Column { id: _brightness - width : _private.columnWidth - spacing : _private.columnSpacing + SettingsSlider { id: _brightness + width : _private.columnWidth + value : vDevice.brightnesss ?? 0 + valueText : vDevice.brightnesss ?? Variables.emptyEntry + iconImage : "qrc:/images/iBrightness" - Item { id: _brightnessTextItem - height : _private.itemHeight - width : parent.width + onValueChanged : vDevice.brightness = slider.value + } - Text { id: _brightnessText - anchors.left : parent.left - anchors.verticalCenter : parent.verticalCenter - text : ("%1: ").arg(qsTr("Brightness")) - color : Colors.dialogText - font : _private.textFont - } + SettingsSlider { id: _volume + width : _private.columnWidth + value : vAdjustmentAlarmVolume.hdAlarmVolume ?? 0 + valueText : vAdjustmentAlarmVolume.hdAlarmVolume ?? Variables.emptyEntry + iconImage : "qrc:/images/iVolume" - Text { id: _brightnessValue - anchors.left : _brightnessText.right - anchors.bottom : _brightnessText.bottom - text : ("%1").arg(vDevice.brightnesss) - color : _root.valueColor - font : _private.valueFont - } - } - - Slider { id : _brightnessSlider - anchors.horizontalCenter: parent.horizontalCenter - width : _root.sliderWidth - height : 10 - showMinMaxText : false - step : 1 // no zero - minimum : 1 - maximum : 5 - ticks : true - unit : "" - bgColor : _root.sliderBkgndColor - diameter : 26 - hasBorder : false - handleBorderColor : Colors.highlightProgressBar - - onReleased : vDevice.brightness = _brightnessSlider.value - - Connections { target: vDevice - // in case the value is rejected it will be set to the previous value - // also the init value shall be set when navigate to the screen - function onBrightnessChanged ( vValue ) { _brightnessSlider.reset(vValue) } - - // TODO do something with rejection message - function onStatusChanged ( vValue ) { print("**** Brightness Status: " + vValue) } - } - } + onValueChanged : vAdjustmentAlarmVolume.doAdjustment( slider.value ) } + } - Line { id: _divider - anchors.horizontalCenter: parent.horizontalCenter - length : parent.width - color : _root.sliderBkgndColor - } - - Column { id: _volume - width : _private.columnWidth - spacing : _private.columnSpacing - - Item { id: _volumeTextItem - height : _private.itemHeight - width : parent.width - - Text { id: _volumeText - anchors.left : parent.left - anchors.verticalCenter : parent.verticalCenter - text : ("%1: ").arg(qsTr("Alarm Volume")) - color : Colors.dialogText - font : _private.textFont - } - - Text { id: _volumeValue - anchors.left : _volumeText.right - anchors.bottom : _volumeText.bottom - text : vAdjustmentAlarmVolume.hdAlarmVolume - color : _root.valueColor - font : _private.valueFont - } + Connections { target: vAdjustmentAlarmVolume + function onAdjustmentTriggered ( vValue ) { + if ( vAdjustmentAlarmVolume.adjustment_Accepted ) { + vSettings .alarmVolume = vAdjustmentAlarmVolume.hdAlarmVolume } - - Slider { id : _volumeSlider - anchors.horizontalCenter: parent.horizontalCenter - width : _root.sliderWidth - height : 10 - showMinMaxText : false - step : 1 // no zero - minimum : 1 - maximum : 5 - ticks : true - unit : "" - bgColor : _root.sliderBkgndColor - diameter : 26 - hasBorder : false - handleBorderColor : Colors.highlightProgressBar - - onReleased : vAdjustmentAlarmVolume.doAdjustment( _volumeSlider.value ) - - Connections { target: vAdjustmentAlarmVolume - function onAdjustmentTriggered ( vValue ) { - if ( vAdjustmentAlarmVolume.adjustment_Accepted ) { - vSettings .alarmVolume = vAdjustmentAlarmVolume.hdAlarmVolume - } - else { - // TODO do something with rejection message - print("**** Volume Rejected Reason: " + vAdjustmentAlarmVolume.adjustment_ReasonText) - } - - // regardless of the rejection or acceptance the value will be sent from C++ to be adjusted. - _volumeSlider.reset ( vAdjustmentAlarmVolume.hdAlarmVolume ) - } - } + else { + // TODO do something with rejection message + print("**** Volume Rejected Reason: " + vAdjustmentAlarmVolume.adjustment_ReasonText) } } } + + Connections { target: vDevice + // TODO do something with rejection message + function onStatusChanged ( vValue ) { print("**** Brightness Status: " + vValue) } + } }