Index: sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml =================================================================== diff -u -re3cc544dd969bec78bf057cbe636e372cdfb8502 -ra8c7ca4936378f104565408a48127e9a8a90495f --- sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml (.../PreTreatmentStack.qml) (revision e3cc544dd969bec78bf057cbe636e372cdfb8502) +++ sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml (.../PreTreatmentStack.qml) (revision a8c7ca4936378f104565408a48127e9a8a90495f) @@ -28,18 +28,42 @@ * \brief the pre treatment stack screen */ StackItem { id: _root - stackView.initialItem : _pretreatmentInstallation - enum StackStep { + stackView.initialItem : vSettings.userMode ? _pretreatmentInstallationAdv : _pretreatmentConcentrates + enum Step { // All pretreatment steps + Concentrates , Installation , SelfTests , Saline , Prime , + WaterSample , CreateRx , UF , Connect } - property var stepNames: [ + enum StandardSteps { // standard pre treatment steps + Concentrates , + Installation , + SelfTests , + Saline , + Prime , + WaterSample , + CreateRx , + UF , + Connect + } + + enum AdvancedSteps { // advanced pre treatment steps + Installation , + SelfTests , + Saline , + Prime , + CreateRx , + UF , + Connect + } + + property var stepNamesAdvanced: [ qsTr("Installation" ), qsTr("Self-Tests" ), qsTr("Saline" ), @@ -49,9 +73,23 @@ qsTr("Connect" ), ] - property int stepLineLength : 100 - property int stackStepIndex : 0 + property var stepNamesStandard: [ + qsTr("Concentrates" ), + qsTr("Installation" ), + qsTr("Self-Tests" ), + qsTr("Saline" ), + qsTr("Prime" ), + qsTr("Water Sample" ), + qsTr("Rx" ), + qsTr("UF" ), + qsTr("Connect" ), + ] + property var stepNames : vSettings.userMode ? stepNamesAdvanced : stepNamesStandard + property int stepLineLength : 100 + property int stackStepIndex : 0 + readonly property bool isCreateRx : mappedStep() === PreTreatmentStack.Step.CreateRx + onVisibleChanged: { if (visible) { _mainMenu.hidden = true @@ -67,63 +105,81 @@ function clear(vValue) { if ( ! vValue ) return; _pretreatmentCreate.clear(vValue) } function confirmClicked() { - switch ( _root.stackStepIndex ) { - case PreTreatmentStack.Installation: + switch ( mappedStep() ) { + case PreTreatmentStack.Step.Concentrates: + page ( _pretreatmentInstallation ) + break + case PreTreatmentStack.Step.Installation: vPreTreatmentAdjustmentDisposablesConfirm.doConfirm() break - case PreTreatmentStack.SelfTests: - break - case PreTreatmentStack.Saline: - break - case PreTreatmentStack.Prime: - break - case PreTreatmentStack.CreateRx: + case PreTreatmentStack.Step.CreateRx: _pretreatmentCreate.confirmButtonClicked() break - case PreTreatmentStack.UF: - break - case PreTreatmentStack.Connect: - break default: break } } function backClicked() { - switch ( _root.stackStepIndex ) { - case PreTreatmentStack.Installation: + switch ( mappedStep() ) { + case PreTreatmentStack.Step.Concentrates: vPreTreatmentAdjustmentInitTreatment.doCancel() // request standby break - case PreTreatmentStack.SelfTests: + case PreTreatmentStack.Step.Installation: + if ( vSettings.userMode ) { vPreTreatmentAdjustmentInitTreatment.doCancel() } + else { page ( _pretreatmentConcentrates ) } break - case PreTreatmentStack.Saline: + case PreTreatmentStack.Step.CreateRx: + if ( vSettings.userMode ) { page ( _pretreatmentInstallationAdv ) } + else { page ( _pretreatmentInstallation ) } break - case PreTreatmentStack.Prime: - break - case PreTreatmentStack.CreateRx: - page ( _pretreatmentInstallation ) // TODO FIX ME IN PRE TREATMENT - break - case PreTreatmentStack.UF: - break - case PreTreatmentStack.Connect: - break default: break } } function confirmButtonText() { - switch ( _root.stackStepIndex ) { - case PreTreatmentStack.Installation: + switch ( mappedStep() ) { + case PreTreatmentStack.Step.Concentrates: + return qsTr("Next") + case PreTreatmentStack.Step.Installation: return qsTr("Auto-Load") - case PreTreatmentStack.CreateRx: - return vTreatmentCreate.parametersValidated ? qsTr("CONFIRM") : - qsTr("VALIDATE"); + case PreTreatmentStack.Step.CreateRx: + return vTreatmentCreate.parametersValidated + ? qsTr("CONFIRM") + : qsTr("VALIDATE") default: return qsTr("CONFIRM") } } + // method to map stackstep to internal normalized step + function mappedStep() { + if ( vSettings.userMode ) { + // Advanced + switch ( _root.stackStepIndex ) { + case PreTreatmentStack.AdvancedSteps.Installation: + return PreTreatmentStack.Step.Installation + case PreTreatmentStack.AdvancedSteps.CreateRx: + return PreTreatmentStack.Step.CreateRx + default: + return -1 + } + } else { + // Standard + switch ( _root.stackStepIndex ) { + case PreTreatmentStack.StandardSteps.Concentrates: + return PreTreatmentStack.Step.Concentrates + case PreTreatmentStack.StandardSteps.Installation: + return PreTreatmentStack.Step.Installation + case PreTreatmentStack.StandardSteps.CreateRx: + return PreTreatmentStack.Step.CreateRx + default: + return -1 + } + } + } + StepNavigationTitleBar { id: _titleBar stepIndex : _root.stackStepIndex anchors { @@ -135,8 +191,8 @@ } confirmText.text: confirmButtonText() confirmVisible : true - confirmEnabled : _root.stackStepIndex === PreTreatmentStack.CreateRx ? _pretreatmentCreate.confirmReady() : true - backVisible : _root.stackStepIndex === PreTreatmentStack.CreateRx ? ! vTreatmentCreate.parametersValidated : true + confirmEnabled : _root.isCreateRx ? _pretreatmentCreate.confirmReady() : true + backVisible : _root.isCreateRx ? ! vTreatmentCreate.parametersValidated : true width : _root.width stepNames : _root.stepNames onBackClicked : _root.backClicked() @@ -148,20 +204,35 @@ // PreTreatmentConsumablesStack{ id: _preTreatmentConsumablesStack ;objectName: "_preTreatmentConsumablesStack" } // PreTreatmentPrimeStack { id: _pretreatmentPrimeStack ;objectName: "_pretreatmentPrimeStack" } // PreTreatmentConnectionStack { id: _pretreatmentConnectionStack ;objectName: "_pretreatmentConnectionStack " } + PreTreatmentBase { id: _pretreatmentConcentrates + instructionBased : true + onVisibleChanged : if (visible) { _root.stackStepIndex = PreTreatmentStack.StandardSteps.Concentrates; updateModel() } + } + PreTreatmentBase { id: _pretreatmentInstallation instructionBased : true - onVisibleChanged : if (visible) { stackStepIndex = PreTreatmentStack.Installation } + onVisibleChanged : if (visible) { _root.stackStepIndex = PreTreatmentStack.StandardSteps.Installation; updateModel() } } - PreTreatmentCreate { id: _pretreatmentCreate } + PreTreatmentBase { id: _pretreatmentInstallationAdv + instructionBased : true + onVisibleChanged : if (visible) { _root.stackStepIndex = PreTreatmentStack.AdvancedSteps.Installation; updateModel() } + } + PreTreatmentCreate { id: _pretreatmentCreate + onVisibleChanged : if (visible) { vSettings.userMode ? _root.stackStepIndex = PreTreatmentStack.AdvancedSteps.CreateRx : + _root.stackStepIndex = PreTreatmentStack.StandardSteps.CreateRx } + } + Connections { target: vPreTreatmentAdjustmentDisposablesConfirm function onAdjustmentTriggered ( vValue ) { if ( vPreTreatmentAdjustmentDisposablesConfirm.adjustment_Accepted ) { - _pretreatmentInstallation.informationText = "" + if ( vSettings.userMode ) { _pretreatmentInstallationAdv.informationText = "" } + else { _pretreatmentInstallation.informationText = "" } page ( _pretreatmentCreate ) // TODO fix in pre treatment.. Skip to create for now } else { - _pretreatmentInstallation.informationText = vPreTreatmentAdjustmentDisposablesConfirm.text() + if ( vSettings.userMode ) { _pretreatmentInstallationAdv.informationText = vPreTreatmentAdjustmentDisposablesConfirm.text() } + else { _pretreatmentInstallation.informationText = vPreTreatmentAdjustmentDisposablesConfirm.text() } } } }