Index: sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml =================================================================== diff -u -r7e07088a0fe4423b8caa5f81fd0e890ba5a50334 -r2a95352ee49fcdd88cef2fb81711d9c72a5bc763 --- sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml (.../PreTreatmentStack.qml) (revision 7e07088a0fe4423b8caa5f81fd0e890ba5a50334) +++ sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml (.../PreTreatmentStack.qml) (revision 2a95352ee49fcdd88cef2fb81711d9c72a5bc763) @@ -38,16 +38,20 @@ Prime , WaterSample , CreateRx , - UF , + DialysateUF , Connect } - property var stepNames : [] - property var stepKeys : [] + property var stepNames : [] // step name parallel list + property var stepKeys : [] // step enum parallel list property int stepLineLength : 100 property int stackStepIndex : 0 readonly property bool isCreateRx : stepKeys[_root.stackStepIndex] === PreTreatmentStack.Step.CreateRx + readonly property bool isDialysteUf : stepKeys[_root.stackStepIndex] === PreTreatmentStack.Step.DialysateUF + // testing defeature... update later + property bool enableWaterSample : true + onVisibleChanged: { if (visible) { rebuildMap() @@ -62,14 +66,11 @@ } // dynamically rebuild map πŸ—ΊοΈ when entering pretreatment. - // { step enum : step name } -- decided to use 2 parallel list for better indexing + // { step key (enum) : step name (string) } -- decided to use 2 parallel list for better indexing function rebuildMap() { let keys = [] // parallel key list of step enum let values = [] // parallel step name string list - // testing defeature... fix later - let enableWaterSample = true - if ( ! vSettings.advancedMode ) { keys.push(PreTreatmentStack.Step.Concentrates) values.push(qsTr("Concentrates")) @@ -88,15 +89,15 @@ values.push(qsTr("Prime")) // TODO update to defeature later.. testing for science πŸ§ͺπŸ”¬ - if (enableWaterSample) { + if (_root.enableWaterSample) { keys.push(PreTreatmentStack.Step.WaterSample) values.push(qsTr("Water Sample")) } keys.push(PreTreatmentStack.Step.CreateRx) values.push(qsTr("Rx")) - keys.push(PreTreatmentStack.Step.UF) + keys.push(PreTreatmentStack.Step.DialysateUF) values.push(qsTr("UF")) keys.push(PreTreatmentStack.Step.Connect) @@ -119,9 +120,29 @@ case PreTreatmentStack.Step.Installation: vPreTreatmentAdjustmentDisposablesConfirm.doConfirm() break + case PreTreatmentStack.Step.SelfTests: + page ( _pretreatmentSaline ) + break + case PreTreatmentStack.Step.Saline: + page ( _pretreatmentPrime ) + break + case PreTreatmentStack.Step.Prime: + if ( enableWaterSample ) { page ( _pretreatmentWaterSample ) } + else { page ( _pretreatmentCreate ) } + break + case PreTreatmentStack.Step.WaterSample: + page ( _pretreatmentCreate ) + break case PreTreatmentStack.Step.CreateRx: _pretreatmentCreate.confirmButtonClicked() + page ( _pretreatmentDialysateUf ) break + case PreTreatmentStack.Step.DialysateUF: + page ( _pretreatmentConnect ) + break + case PreTreatmentStack.Step.Connect: + // TODO Some FW request to enter Treatment mode + break default: break } @@ -137,9 +158,28 @@ if ( vSettings.advancedMode ) { vPreTreatmentAdjustmentInitTreatment.doCancel() } else { page ( _pretreatmentConcentrates ) } break + case PreTreatmentStack.Step.SelfTests: + page ( _pretreatmentInstallation ) + break + case PreTreatmentStack.Step.Saline: + page ( _pretreatmentSelfTests ) + break + case PreTreatmentStack.Step.Prime: + page ( _pretreatmentSaline ) + break + case PreTreatmentStack.Step.WaterSample: + page ( _pretreatmentPrime ) + break case PreTreatmentStack.Step.CreateRx: - page ( _pretreatmentInstallation ) + if ( enableWaterSample ) { page ( _pretreatmentWaterSample ) } + else { page ( _pretreatmentPrime ) } break + case PreTreatmentStack.Step.DialysateUF: + // πŸ™…β€β™‚οΈ No going back + break + case PreTreatmentStack.Step.Connect: + page ( _pretreatmentDialysateUf ) + break default: break } @@ -157,10 +197,11 @@ ? qsTr("CONFIRM") : qsTr("VALIDATE") default: - return qsTr("CONFIRM") + return qsTr("Next") } } + // Header StepNavigationTitleBar { id: _titleBar stepIndex : _root.stackStepIndex anchors { @@ -173,13 +214,14 @@ confirmText.text: confirmButtonText() confirmVisible : true confirmEnabled : _root.isCreateRx ? _pretreatmentCreate.confirmReady() : true - backVisible : _root.isCreateRx ? ! vTreatmentCreate.parametersValidated : true + backVisible : _root.isCreateRx ? ! vTreatmentCreate.parametersValidated : ! _root.isDialysteUf width : _root.width stepNames : _root.stepNames onBackClicked : _root.backClicked() onConfirmClicked: _root.confirmClicked() } + // Pages PreTreatmentBase { id: _pretreatmentConcentrates instructionBased : true onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Concentrates); updateModel() } @@ -190,16 +232,40 @@ onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Installation); updateModel() } } + PreTreatmentBase { id: _pretreatmentSelfTests + onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.SelfTests); } + } + + PreTreatmentBase { id: _pretreatmentSaline + onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Saline); } + } + + PreTreatmentBase { id: _pretreatmentPrime + onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Prime); } + } + + PreTreatmentBase { id: _pretreatmentWaterSample + onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.WaterSample); } + } + PreTreatmentCreate { id: _pretreatmentCreate onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.CreateRx) } } + PreTreatmentBase { id: _pretreatmentDialysateUf + onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.DialysateUF); } + } + + PreTreatmentBase { id: _pretreatmentConnect + onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Connect); } + } + + // Slots Connections { target: vPreTreatmentAdjustmentDisposablesConfirm function onAdjustmentTriggered ( vValue ) { if ( vPreTreatmentAdjustmentDisposablesConfirm.adjustment_Accepted ) { _pretreatmentInstallation.informationText = "" - - page ( _pretreatmentCreate ) // TODO fix in pre treatment.. Skip to create for now + page ( _pretreatmentSelfTests ) } else { _pretreatmentInstallation.informationText = vPreTreatmentAdjustmentDisposablesConfirm.text() }