Index: sources/gui/qml/pages/settings/SettingsStack.qml =================================================================== diff -u -r69b3aa965cd8187c66114a9753c162cc526d9678 -r9c7a790376d07de7ddaa67e39d47102d68693c87 --- sources/gui/qml/pages/settings/SettingsStack.qml (.../SettingsStack.qml) (revision 69b3aa965cd8187c66114a9753c162cc526d9678) +++ sources/gui/qml/pages/settings/SettingsStack.qml (.../SettingsStack.qml) (revision 9c7a790376d07de7ddaa67e39d47102d68693c87) @@ -15,7 +15,6 @@ // Qt import QtQuick 2.12 -import QtQuick.Controls 2.12 // Switch // Project import Gui.Actions 0.1 @@ -36,7 +35,7 @@ StackItem { id : _root objectName: "_SettingsStack" - stackView.initialItem : _settingsHome + stackView.initialItem : _GuiView.manufactSetup ? _servicePassword : _settingsHome property bool serviceMode : false @@ -46,13 +45,14 @@ WiFi , Bluetooth , DGSettings , - Services , + ServicePassword , SetDateTime , ExportLogs , RoInput , Language , Calibration , DeviceRegistration , + DeviceConfiguration , SWUpdate , FactoryReset } @@ -62,13 +62,14 @@ qsTr("Wi-Fi" ), // WiFi qsTr("Bluetooth Cuff" ), // Bluetooth qsTr("DG Cleaning" ), // DGSettings - qsTr("Service" ), // Service + qsTr("Service" ), // servicePassword qsTr("Set Date And Time" ), // SetDateTime qsTr("Export Logs" ), // ExportLogs qsTr("Water Input Mode" ), // RoInput qsTr("Set Language" ), // Language qsTr("Calibration " ), // Calibration qsTr("Device Registration" ), // DeviceRegistration + qsTr("Device Configuration" ), // Manufacturing Setup qsTr("Software Update" ), // SWUpdate qsTr("Factory Reset" ), // FactoryReset ] @@ -78,35 +79,37 @@ true , // WiFi true , // Bluetooth true , // DGSettings - true , // Services + true , // ServicePassword true , // SetDateTime true , // ExportLogs true , // RoInput false , // Language false , // Calibration true , // DeviceRegistration + _GuiView.manufactSetup , // Manufacturing Setup false , // SWUpdate - false , // FactoryReset + serviceMode , // FactoryReset ] property var itemsVisible : [ true , // Information true , // VolumeBrightness true , // WiFi true , // Bluetooth - true , // DGSettings - ! serviceMode , // Services + ! _GuiView.manufactSetup , // DGSettings + ! serviceMode , // ServicePassword serviceMode , // SetDateTime - true , // ExportLogs - true , // RoInput + ! _GuiView.manufactSetup , // ExportLogs + ! _GuiView.manufactSetup , // RoInput false /* serviceMode phase 1 */ , // Language false /* serviceMode phase 1 */ , // Calibration - true /* serviceMode */ , // DeviceRegistration // FIXME: On the normal setting menu for now for development. + _GuiView.manufactSetup , // DeviceRegistration + serviceMode && _GuiView.manufactSetup, // Manufacturing Setup false /* serviceMode phase 1 */ , // SWUpdate - false /* serviceMode phase 1 */ , // FactoryReset + serviceMode /* serviceMode phase 1 */ , // FactoryReset ] SettingsHome { id : _settingsHome - title : serviceMode ? qsTr("Service") : qsTr("Device Settings") + title : _GuiView.manufactSetup ? qsTr("Manufacturing Setup") : serviceMode ? qsTr("Service") : qsTr("Device Settings") backVisible : false confirmVisible : serviceMode confirmText.text: qsTr("SHUTDOWN") @@ -139,7 +142,7 @@ push( _settingsDGSettings ) break - case SettingsStack.Services: + case SettingsStack.ServicePassword: push(_servicePassword) _servicePassword.setFocus() break @@ -162,219 +165,39 @@ push( _settingsDeviceRegistration ) break + case SettingsStack.DeviceConfiguration: + push( _settingsDeviceConfiguration ) + break + default: console.debug("Unknown Index", vIndex) break } } } - SettingsBase { id: _settingsInformation - itemIndex : SettingsStack.Information - confirmVisible : false - onVisibleChanged: { - if ( visible ) { - vAdjustmentVersions .doAdjustment() - vAdjustmentServiceDates .doAdjustment() - } - } + SettingsManufacturingSetup { id: _settingsDeviceConfiguration } + SettingsInformation { id: _settingsInformation } + SettingsVolumeBrightness { id: _settingsVolumeBrightness } + SettingsDateTime { id: _settingsDateTime } + SettingsWiFi { id: _settingsWiFi } + SettingsBluetoothCuff { id: _settingsBluetooth } + SettingsDG { id: _settingsDGSettings } + SettingsExportLogs { id: _settingsExportLogs } + SettingsROInput { id: _settingsRoInput } + SettingsDeviceRegistration { id: _settingsDeviceRegistration } + SettingsServicePassword { id: _servicePassword } - TouchGrid { - anchors.centerIn: parent - colCount : 2 - colSpacing : 50 - rowCount : 8 - rowSpacing : 0 - itemHeight : 50 - itemWidth : 550 - touchable : false - itemsHasLine: [ - 0, // title C1 - 1,1,1,1,1,1,1, - 0, // title C2 - 1,1,1,1, - ] - itemsValueLeftMargin: 300 - itemsValue : [ - "" , - Qt .application.version, - vAdjustmentVersions .hdVerDevice , - vAdjustmentVersions .hdVerFPGA , - vAdjustmentVersions .hdSerial , - vAdjustmentVersions .dgVerDevice , - vAdjustmentVersions .dgVerFPGA , - vAdjustmentVersions .dgSerial , - "", - vAdjustmentServiceDates .hdLastServiceDate , - vAdjustmentServiceDates .hdNextServiceDate , - vAdjustmentServiceDates .dgLastServiceDate , - vAdjustmentServiceDates .dgNextServiceDate , - ] - itemsText : [ - qsTr("Versions" ), // col1 title - qsTr("UI Version" ), - qsTr("HD Version" ), - qsTr("HD FPGA Version" ), - qsTr("HD Serial Number" ), - qsTr("DG Version" ), - qsTr("DG FPGA Version" ), - qsTr("DG Serial Number" ), - - qsTr("Service" ), // col2 title - qsTr("HD Last Service Date" ), - qsTr("HD Next Service Date" ), - qsTr("DG Last Service Date" ), - qsTr("DG Next Service Date" ), - - ] - } + function gotoServiceMode( vservice ) { + if ( ! _servicePassword.isPassword_Accepted ) return + serviceMode = vservice + if ( vservice ) + _mainMenu.hidden = true + else + if ( _settingsHome.visible ) + _mainMenu.hidden = false } - SettingsVolumeBrightness { id: _settingsVolumeBrightness - itemIndex : SettingsStack.VolumeBrightness - } - - SettingsDateTime { id: _settingsDateTime - itemIndex : SettingsStack.SetDateTime - } - - SettingsWiFi { id: _settingsWiFi - itemIndex : SettingsStack.WiFi - } - - SettingsBluetoothCuff { id: _settingsBluetooth - } - - SettingsDG { id: _settingsDGSettings - itemIndex : SettingsStack.DGSettings - } - - SettingsExportLogs { id: _settingsExportLogs - itemIndex : SettingsStack.ExportLogs - } - - SettingsBase { id: _settingsRoInput - confirmVisible : false - itemIndex : SettingsStack.RoInput - - - Row { id: _settingsRoInputRow - anchors.centerIn: parent - - Text { id : _settingsRoInputLabel - text : qsTr("Pure Water Mode") - width : 300 - height : _settingsRoInputSwitch.height - color : Colors.white - font.pixelSize: Fonts.fontPixelButton - verticalAlignment : Text.AlignVCenter - horizontalAlignment : Text.AlignLeft - } - - Switch { id: _settingsRoInputSwitch - property bool active: true - - checked : vDuetRoWaterDG.status - - width : 85 - height : 85 - - indicator: Rectangle { - implicitWidth : Variables.sliderCircleDiameter * 1.7 - implicitHeight : Variables.sliderCircleDiameter - ( Variables.progressbarHandlerBorderWidth * 2 ) - radius : implicitHeight - anchors.centerIn: parent - color : _settingsRoInputSwitch.checked ? Colors.backgroundButtonSelect : Colors.createTreatmentInactive - border.color : _settingsRoInputSwitch.checked ? Colors.borderButton : Colors.createTreatmentInactive - Rectangle { - property real diameter : Variables.sliderCircleDiameter - x: _settingsRoInputSwitch.checked ? parent.width - width : 0 - anchors.verticalCenter: parent.verticalCenter - width : diameter - height : diameter - radius : diameter - color : _settingsRoInputSwitch.active ? Colors.highlightProgressBar : Colors.createTreatmentInactive - border { - width: Variables.progressbarHandlerBorderWidth - color: Colors.textMain - } - } - } - - contentItem: Text { - width : parent.width - height : parent.height - text : _settingsRoInputSwitch.checked ? qsTr("ON") : qsTr("OFF") - font.pixelSize: Fonts.fontPixelButton - color : _settingsRoInputSwitch.active ? Colors.textMain : Colors.textDisableButton - verticalAlignment : Text.AlignTop - horizontalAlignment : Text.AlignHCenter - } - } - } - - Connections { target: _settingsRoInputSwitch - function onClicked() { - vDuetRoWaterDG.doAdjustment ( _settingsRoInputSwitch.checked ) - } - } - Connections { target: vDuetRoWaterDG - function onAdjustmentTriggered(vValue) { - if ( vDuetRoWaterDG.adjustment_Accepted ) { - _settingsRoInput.notificationText = "" - } - else { - _settingsRoInput.notificationText = vDuetRoWaterDG.notification // adjustment_ReasonText - } - vSettings.roWaterMode = vDuetRoWaterDG.status - } - } - } - - SettingsDeviceRegistration { id: _settingsDeviceRegistration } - - UserConfirmation { id: _servicePassword - property bool isPassword_Accepted : false - property bool isDefaultPasswordSet : (vSettings.servicePass != "") - - itemIndex : SettingsStack.Services - title : isDefaultPasswordSet ? qsTr("Service Password") : qsTr("Set Service Password") - isPassword: true - showPasswordReEntryField: !isDefaultPasswordSet - onBackClicked : { - clearPassword() - if(!isDefaultPasswordSet){ - clearPasswordReEntry() - } - _settingsHome.notificationText = "" - } - onConfirmClicked: { - isPassword_Accepted = false - let password = _servicePassword.password - if ( !isDefaultPasswordSet ) { - let passwordReEntry = _servicePassword.passwordReEntry - if ( password != passwordReEntry ) { _servicePassword.notificationText = qsTr("Mismatched Password Entry"); return } - if (!vSettings.isPasswordValid(password)) { _servicePassword.notificationText = qsTr("Malformed Password Entry" ); return } - - vSettings.updatePassword(password) - _servicePassword.isPassword_Accepted = true - _servicePassword.notificationText = "" - clearPasswordReEntry() - } else { - if (!vSettings.isPasswordMatch(password)) { _servicePassword.notificationText = qsTr("Incorrect service password"); return } - - _servicePassword.isPassword_Accepted = true - _servicePassword.notificationText = "" - vAdjustmentServiceMode.doAdjustment() - if ( vSettings.noCANBus ) { // if NoCANBus is set don't wait for HD and go to service mode. - gotoServiceMode(true) - } - } - clearPassword() - pop() // pop back to settings screen and wait for the HD-OpMode change to Service_Mode to update the settings screen. - } - } - Connections { target: vAdjustmentServiceMode function onAdjustmentTriggered ( vValue ) { if ( vAdjustmentServiceMode.adjustment_Accepted ) { @@ -386,25 +209,14 @@ } } - function gotoServiceMode( vservice ) { - if ( ! _servicePassword.isPassword_Accepted ) return - serviceMode = vservice - if ( vservice ) - _mainMenu.hidden = true - else - if ( _settingsHome.visible ) - _mainMenu.hidden = false - } - - Connections { target: vHDOperationMode function onServiceChanged ( vValue ) { gotoServiceMode( vValue )} function onStandbyWaitDisinfectChanged ( vValue ) { page( _settingsHome , vValue )} } onVisibleChanged: { if (visible) { - _mainMenu.hidden = serviceMode + _mainMenu.hidden = serviceMode || _GuiView.manufactSetup } else { stackView.initialItem = null