Index: sources/gui/qml/pages/treatment/TreatmentStack.qml =================================================================== diff -u -r2d09ae36f6b791e0415a87b6f14f582d4b434d7d -re58be51c4aa52938af250db3ee579e98de08542c --- sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision 2d09ae36f6b791e0415a87b6f14f582d4b434d7d) +++ sources/gui/qml/pages/treatment/TreatmentStack.qml (.../TreatmentStack.qml) (revision e58be51c4aa52938af250db3ee579e98de08542c) @@ -6,8 +6,8 @@ * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * \file TreatmentStack.qml - * \author (last) Behrouz NemaiPour - * \date (last) 18-Jun-2020 + * \author (last) Behrouz NematiPour + * \date (last) 16-Oct-2020 * \author (original) Behrouz NematiPour * \date (original) 27-Jan-2020 * @@ -17,12 +17,19 @@ import QtQuick 2.12 // Project -import VTreatmentRanges 0.1 +import Gui.Actions 0.1 +import VTreatmentRanges 0.1 +import VTreatmentAdjustmentSaline 0.1 +import VHDTreatmentStates 0.1 +import VTreatmentAdjustmentUltrafiltrationState 0.1 +import VTreatmentAdjustmentUltrafiltrationEdit 0.1 +import VTreatmentAdjustmentUltrafiltrationConfirm 0.1 // Qml imports import "qrc:/globals" import "qrc:/components" import "qrc:/pages/treatment/adjustments" + /*! * \brief TreatmentStack is the screen * which contains the main stack for all the Trearment screens @@ -34,10 +41,32 @@ stackView.initialItem : _treatmentHome - VTreatmentRanges { id: vTreatmentRanges } + // Views + VTreatmentRanges { id: vTreatmentRanges } + VTreatmentAdjustmentSaline { id: vTreatmentAdjustmentSaline } + VHDTreatmentStates { id: vHDTreatmentStates } + VTreatmentAdjustmentUltrafiltrationState { id: vTreatmentAdjustmentUltrafiltrationState } + VTreatmentAdjustmentUltrafiltrationEdit { id: vTreatmentAdjustmentUltrafiltrationEdit } + VTreatmentAdjustmentUltrafiltrationConfirm { id: vTreatmentAdjustmentUltrafiltrationConfirm } + // ultrafiltration state information bar properties + readonly property bool isUFPaused : vHDTreatmentStates.ufPaused + readonly property bool isUFOff : vHDTreatmentStates.ufOff + readonly property bool isUFRunning : vHDTreatmentStates.ufRunning + readonly property bool isUFCompleted : vHDTreatmentStates.ufCompleted + readonly property string ufInfoImageSource : isUFPaused ? "qrc:/images/iPauseGray" : + isUFOff ? "qrc:/images/iOffGray" : + isUFCompleted ? "qrc:/images/iDone" : "" + readonly property string ufInfoText : isUFPaused ? qsTr("Ultrafiltration is paused" ) : + isUFOff ? qsTr("Ultrafiltration is off" ) : + isUFCompleted ? qsTr("Ultrafiltration is completed" ) : "" + readonly property string ufInfoTextColor : isUFPaused ? "gray" : + isUFOff ? "gray" : + isUFCompleted ? "lightgray" : "" + + // Components MainMenu { id: _treatmentMenu - y : -Variables.mainMenuHeight + y : Variables.mainMenuHeight * -1 position : MainMenu.Position.Top hidden : true titles : [ qsTr("Back") , qsTr("Treatment") , qsTr("Trending") , qsTr("Settings") ] @@ -50,44 +79,45 @@ TreatmentHome { id: _treatmentHome onTreatmentStarted : push( _treatmentStart ) - onTreatmentCreated : push( _treatmentCreate) + onTreatmentCreated : vTreatmentCreate.doSelectParameters() } TreatmentStart { id: _treatmentStart - onBackClicked : pop () + onBackClicked : popToItem(_treatmentHome) onSectionFlowClicked : { _treatmentAdjustmentFlow.open() } onSectionTimeClicked : { + _treatmentAdjustmentDuration.durationValue = vTreatmentTime.time_Total / 60 // minutes => hours _treatmentAdjustmentDuration.open() } onSectionUltrafiltrationClicked: { - if ( vTreatmentAdjustmentUltrafiltrationState.isPaused ) { - _treatmentAdjustmentUltrafiltrationPaused.open() - } else { + if ( isUFRunning ) { _treatmentAdjustmentUltrafiltrationStart .open() + } else { + _treatmentAdjustmentUltrafiltrationPaused.open() } } } TreatmentCreate { id: _treatmentCreate - onClickedBack : pop() - onClickedContinue : {vCreateTreatment.onFinishedCreate(); } + onClickedBack : {vTreatmentCreate.doCancelSelectingParameters() } + onClickedContinue : {vTreatmentCreate.doFinishedCreate(); } } TreatmentConfirm { id: _treatmentConfirm - onClickedBack : pop() - onClickedConfirm : {vCreateTreatment.onFinishedConfirm(); } + onClickedBack : {vTreatmentCreate.doCancelConfirmParameters() } + onClickedConfirm : {vTreatmentCreate.doFinishedConfirm(); } } TreatmentPrime { id: _treatmentPrime - onClickedBack : pop() - onClickedContinue : {vCreateTreatment.onFinishedPrime(); } + onClickedBack : {vTreatmentCreate.doRequestPop() } + onClickedContinue : {vTreatmentCreate.doFinishedPrime(); } } TreatmentBegin { id: _treatmentBegin - onClickedBack : pop() - onClickedStart : {vCreateTreatment.onStart(); } + onClickedBack : {vTreatmentCreate.doRequestPop() } + onClickedStart : {vTreatmentCreate.doStartTreatment(); } } @@ -168,17 +198,18 @@ Connections { target: vTreatmentAdjustmentUltrafiltrationState onAdjustmentTriggered : { if ( vTreatmentAdjustmentUltrafiltrationState.adjustment_Accepted ) { - if ( vTreatmentAdjustmentUltrafiltrationState.isPaused ) { + if (vHDTreatmentStates.ufPaused) { // handle screen regarding current accepted _treatmentAdjustmentUltrafiltrationStart .close() _treatmentAdjustmentUltrafiltrationPaused.open () } else { _treatmentAdjustmentUltrafiltrationPaused.close() } - } else { - if ( vTreatmentAdjustmentUltrafiltrationState.isPaused ) { - _treatmentAdjustmentUltrafiltrationPaused.notification.text = vTreatmentAdjustmentUltrafiltrationState.text() + } + else { + if (vHDTreatmentStates.ufRunning) { // handle error messages regarding current accepted + _treatmentAdjustmentUltrafiltrationStart.notificationText = vTreatmentAdjustmentUltrafiltrationState.adjustment_ReasonText } else { - _treatmentAdjustmentUltrafiltrationStart .notification.text = vTreatmentAdjustmentUltrafiltrationState.text() + _treatmentAdjustmentUltrafiltrationPaused.notificationText = vTreatmentAdjustmentUltrafiltrationState.adjustment_ReasonText } } } @@ -206,23 +237,20 @@ Connections { target: vTreatmentAdjustmentUltrafiltrationConfirm onAdjustmentTriggered : { if (vTreatmentAdjustmentUltrafiltrationConfirm.adjustment_Accepted) { - // HD resumes the ultrafiltration and no need to recall the doPause just update the state - vTreatmentAdjustmentUltrafiltrationState.isPaused = false - vTreatmentUltrafiltration.maximum = vTreatmentAdjustmentUltrafiltrationConfirm.volume + vTreatmentUltrafiltration.maximum = vTreatmentAdjustmentUltrafiltrationConfirm.volume _treatmentAdjustmentUltrafiltrationConfirm.close() } else { _treatmentAdjustmentUltrafiltrationConfirm.notification.text = vTreatmentAdjustmentUltrafiltrationConfirm.text() } } } - - Connections { target: vCreateTreatment - onShowConfirm : { push(_treatmentConfirm) } - onShowPrime : { push(_treatmentPrime) } - onShowBegin : { push(_treatmentBegin) } + Connections { target: vTreatmentCreate + onShowCreate : { push(_treatmentCreate) } + onShowConfirm : { push(_treatmentConfirm) } + onShowPrime : { push(_treatmentPrime) } + onShowBegin : { push(_treatmentBegin) } + onPop : { pop() } + onShowTreatmentStart : { push(_treatmentStart) } } - - - }