Index: sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml =================================================================== diff -u -r0975a67dd4e4673b9a7b226bfea02cbfa489c418 -rf90366dd7a36ac03a4e387550811fe5b8a7fbe80 --- sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml (.../PreTreatmentStack.qml) (revision 0975a67dd4e4673b9a7b226bfea02cbfa489c418) +++ sources/gui/qml/pages/pretreatment/PreTreatmentStack.qml (.../PreTreatmentStack.qml) (revision f90366dd7a36ac03a4e387550811fe5b8a7fbe80) @@ -59,6 +59,12 @@ } } + function setPage(vPage, vCondition) { + _root.stackStepIndex = _root.stepKeys.indexOf(vPage.stepIndex) + page( vPage , vCondition) +// if ( vPage.instructionBased ) { vPage.updateModel() } + } + // dynamically rebuild map 🗺️ when entering pretreatment. // { step key (enum) : step name (string) } -- decided to use 2 parallel list for better indexing function rebuildMap() { @@ -97,22 +103,22 @@ function confirmClicked() { switch ( stepKeys[_root.stackStepIndex] ) { case PreTreatmentStack.Step.Concentrates: - page ( _pretreatmentInstallation ) + setPage ( _pretreatmentInstallation ) break case PreTreatmentStack.Step.Installation: if ( vSettings.advancedMode ) { vPreTreatmentAdjustmentDisposablesConfirm.doConfirm() } else { _pretreatmentInstallation.continueClicked() } break case PreTreatmentStack.Step.SelfTests: - page ( _pretreatmentPrime ) + setPage ( _pretreatmentPrime ) break case PreTreatmentStack.Step.Prime: if ( _pretreatmentPrime.timeCircleProgressValue === 0 ) { vPreTreatmentAdjustmentDisposablesPrime.doPrime(); } - page ( _pretreatmentCreate ) + setPage ( _pretreatmentCreate ) break case PreTreatmentStack.Step.CreateRx: _pretreatmentCreate.confirmButtonClicked() - if ( vTreatmentCreate.parametersValidated ) { page ( _pretreatmentConnect ) } + if ( vTreatmentCreate.parametersValidated ) { setPage ( _pretreatmentConnect ) } break case PreTreatmentStack.Step.Connect: vPreTreatmentAdjustmentStartTreatment.doStart() @@ -219,44 +225,25 @@ } // Pages - PreTreatmentBase { id: _pretreatmentConcentrates - instructionBased : true - onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Concentrates); updateModel() } - } + PreTreatmentBase { id: _pretreatmentConcentrates; stepIndex: PreTreatmentStack.Step.Concentrates; instructionBased: true } + PreTreatmentInstallStack { id: _pretreatmentInstallation; stepIndex: PreTreatmentStack.Step.Installation } + PreTreatmentSelfTests { id: _pretreatmentSelfTests; stepIndex: PreTreatmentStack.Step.SelfTests } + PreTreatmentPrime { id: _pretreatmentPrime; stepIndex: PreTreatmentStack.Step.Prime } + PreTreatmentCreate { id: _pretreatmentCreate; stepIndex: PreTreatmentStack.Step.CreateRx } + PreTreatmentBase { id: _pretreatmentConnect; stepIndex: PreTreatmentStack.Step.Connect; instructionBased: true } - PreTreatmentInstallStack { id: _pretreatmentInstallation - onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Installation); initStack() } - } - - PreTreatmentSelfTests{ id: _pretreatmentSelfTests - onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.SelfTests); } - } - - PreTreatmentPrime { id: _pretreatmentPrime - onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Prime); } - } - - PreTreatmentCreate { id: _pretreatmentCreate - onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.CreateRx) } - } - - PreTreatmentBase { id: _pretreatmentConnect - instructionBased : true - onVisibleChanged : if (visible) { _root.stackStepIndex = stepKeys.indexOf(PreTreatmentStack.Step.Connect); updateModel() } - } - // Slots Connections { target: vTDOpMode - function onPreTreatmentChanged( vValue ) { if ( ! vTreatmentCreate.txCode ) { vTreatmentCreate.generateTxCode() } - if ( vSettings.advancedMode ) { page ( _pretreatmentInstallation , vValue )} - else { page ( _pretreatmentConcentrates , vValue )} + function onPreTreatmentChanged( vValue ) { if ( ! vTreatmentCreate.txCode ) { vTreatmentCreate.generateTxCode() } + if ( vSettings.advancedMode ) { setPage ( _pretreatmentInstallation , vValue )} + else { setPage ( _pretreatmentConcentrates , vValue )} } } // Installation Connections { target: _pretreatmentInstallation - function onGoToNextStep () { page ( _pretreatmentSelfTests )} - function onGoToPreviousStep () { page ( _pretreatmentConcentrates )} + function onGoToNextStep () { setPage ( _pretreatmentSelfTests )} + function onGoToPreviousStep () { setPage ( _pretreatmentConcentrates )} } // priming @@ -273,7 +260,7 @@ // creat rx Connections{ target: vTreatmentCreate function onDidValidationPass ( ) { - if ( _pretreatmentCreate.visible) { page ( _pretreatmentConnect ) } + if ( _pretreatmentCreate.visible) { setPage ( _pretreatmentConnect ) } } }