Index: sources/gui/qml/components/StepIndicator.qml =================================================================== diff -u -r52d17dab2211c2e4d9160c55c316ad7a40ce4d6c -r1a46e7e1fd9da0fcfa8359a194610c55adfff04f --- sources/gui/qml/components/StepIndicator.qml (.../StepIndicator.qml) (revision 52d17dab2211c2e4d9160c55c316ad7a40ce4d6c) +++ sources/gui/qml/components/StepIndicator.qml (.../StepIndicator.qml) (revision 1a46e7e1fd9da0fcfa8359a194610c55adfff04f) @@ -43,8 +43,6 @@ height : _row.height color : Colors.transparent - onCurrentStepChanged : print (currentStep) - Row { id: _row spacing : _root.spacing anchors.centerIn: parent Index: sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateContent.qml =================================================================== diff -u -r52d17dab2211c2e4d9160c55c316ad7a40ce4d6c -r1a46e7e1fd9da0fcfa8359a194610c55adfff04f --- sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateContent.qml (.../PreTreatmentCreateContent.qml) (revision 52d17dab2211c2e4d9160c55c316ad7a40ce4d6c) +++ sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateContent.qml (.../PreTreatmentCreateContent.qml) (revision 1a46e7e1fd9da0fcfa8359a194610c55adfff04f) @@ -143,13 +143,14 @@ } } - Connections { target: _acidConcentrateAdjustment - function onAccepted () { - vTreatmentCreate.acidConcentrate = _acidConcentrateComboBox.find(_acidConcentrateAdjustment.adjustment) - _acidConcentrateComboBox.currentIndex = vTreatmentCreate.acidConcentrate - vTreatmentCreate.acidConcentrateConversionFactor = vTreatmentRanges.acidConcentrateValues[vTreatmentCreate.acidConcentrate] - } - } + // TODO Phase 2 +// Connections { target: _acidConcentrateAdjustment +// function onAccepted () { +// vTreatmentCreate.acidConcentrate = _acidConcentrateComboBox.find(_acidConcentrateAdjustment.adjustment) +// _acidConcentrateComboBox.currentIndex = vTreatmentCreate.acidConcentrate +// vTreatmentCreate.acidConcentrateConversionFactor = vTreatmentRanges.acidConcentrateValues[vTreatmentCreate.acidConcentrate] +// } +// } HeparinRxAdjustment { id: _heparinRxAdjustment; editingEnabled: _root.editingEnabled } @@ -270,84 +271,4 @@ } } - - - - -// LabelUnitContainer { id: _duration -// text : qsTr("Duration") -// unitText : Variables.unitTextDuration -// valid : ! vTreatmentCreate.treatmentDurationRejectReason - -// contentItem : ValueAdjuster { id: _durationControl -// editable : _root.editingEnabled -// minimum : vTreatmentRanges.treatmentDurationMin -// maximum : vTreatmentRanges.treatmentDurationMax -// step : vTreatmentRanges.treatmentDurationRes -// defaultValue : vTreatmentRanges.treatmentDurationDef -// value : vTreatmentCreate.treatmentDuration -// isActive : vTreatmentCreate.treatmentDurationSet -// onDidActiveChange: function(vState) { vTreatmentCreate.treatmentDurationSet = vState } -// onDidChange : function(vValue) { -// if ( ! _duration.valid ) { vTreatmentCreate.treatmentDurationRejectReason = Variables.noRejectReason } -// vTreatmentCreate.treatmentDuration = vValue - -// // set heparin time to clear when set -// if ( _heparinDeliveryDurationControl.enabled ) { _heparinDeliveryDurationControl.clear() } -// } -// } -// } - - - -// LabelUnitContainer { id: _bpMeasurementInterval -// text : qsTr("Vitals Interval") -// unitText : Variables.unitTextDuration -// valid : ! vTreatmentCreate.bloodPressureMeasureIntervalRejectReason - -// contentItem : ValueAdjusterCustom { id: _bpMeasurementIntervalControl -// editable : _root.editingEnabled -// isActive : vTreatmentCreate.bloodPressureMeasureIntervalSet -// defaultValue : vTreatmentRanges.vitalsInterval -// value : vTreatmentRanges.bloodPressureMeasureInterval.indexOf(vTreatmentCreate.bloodPressureMeasureInterval.toString()) -// model : vTreatmentRanges.bloodPressureMeasureInterval -// canOff : true - -// onDidActiveChange: function(vState) { vTreatmentCreate.bloodPressureMeasureIntervalSet = vState } - -// onDidChange : function(vValue) { -// if ( ! _bpMeasurementInterval.valid ) { -// vTreatmentCreate.bloodPressureMeasureIntervalRejectReason = Variables.noRejectReason -// } - -// vTreatmentCreate.bloodPressureMeasureInterval = vTreatmentRanges.bloodPressureMeasureInterval[vValue] -// vTreatmentCreate.bloodPressureMeasureIntervalSet = true -// } -// } -// } - - - -// LabelUnitContainer { id: _fluidBolusVolume -// text : qsTr("Fluid Bolus Volume") -// unitText : Variables.unitTextFluid -// valid : ! vTreatmentCreate.fluidBolusVolumeRejectReason - -// contentItem : ValueAdjuster { id: _fluidBolusVolumeControl -// editable : _root.editingEnabled -// minimum : vTreatmentRanges.salineBolusVolumeMin -// maximum : vTreatmentRanges.salineBolusVolumeMax -// step : vTreatmentRanges.salineBolusVolumeRes -// defaultValue : vTreatmentRanges.salineBolusVolumeDef -// value : vTreatmentCreate.fluidBolusVolume -// isActive : vTreatmentCreate.fluidBolusVolumeSet -// onDidActiveChange: function(vState) { vTreatmentCreate.fluidBolusVolumeSet = vState } -// onDidChange : function(vValue) { -// if ( ! _fluidBolusVolume.valid ) { vTreatmentCreate.fluidBolusVolumeRejectReason = Variables.noRejectReason } -// vTreatmentCreate.fluidBolusVolume = vValue -// } -// } -// } -// } - } Index: sources/gui/qml/pages/pretreatment/create/PreTreatmentCreatePatientPrescription.qml =================================================================== diff -u -r52d17dab2211c2e4d9160c55c316ad7a40ce4d6c -r1a46e7e1fd9da0fcfa8359a194610c55adfff04f --- sources/gui/qml/pages/pretreatment/create/PreTreatmentCreatePatientPrescription.qml (.../PreTreatmentCreatePatientPrescription.qml) (revision 52d17dab2211c2e4d9160c55c316ad7a40ce4d6c) +++ sources/gui/qml/pages/pretreatment/create/PreTreatmentCreatePatientPrescription.qml (.../PreTreatmentCreatePatientPrescription.qml) (revision 1a46e7e1fd9da0fcfa8359a194610c55adfff04f) @@ -18,27 +18,51 @@ spacing : Variables.defaultMargin * 3 function setPresetParameters () { - vTreatmentCreate.sodium = vTreatmentRanges.dialysateSodiumDef - vTreatmentCreate.bicarbonate = vTreatmentRanges.dialysateBicarbonateDef + vTreatmentCreate.sodiumSet = true + vTreatmentCreate.bicarbonateSet = true + vTreatmentCreate.fluidBolusVolumeSet = true + vTreatmentCreate.primeDiscardVolumeSet = true + vTreatmentCreate.rinsebackVolumeSet = true + vTreatmentCreate.bloodPressureMeasureIntervalSet = true + vTreatmentCreate.hepatitusBStatusSet = true + + vTreatmentCreate.sodium = vTreatmentRanges.dialysateSodiumDef + vTreatmentCreate.bicarbonate = vTreatmentRanges.dialysateBicarbonateDef + vTreatmentCreate.fluidBolusVolume = vTreatmentRanges.salineBolusVolumeDef + vTreatmentCreate.primeDiscardVolume = vTreatmentRanges.primeDiscardVolumeDef + vTreatmentCreate.rinsebackVolume = vTreatmentRanges.rinsebackVolumeDef + vTreatmentCreate.bloodPressureMeasureInterval = vTreatmentRanges.bloodPressureMeasureInterval[vTreatmentRanges.vitalsInterval] + vTreatmentCreate.hepatitusBStatus = 0 } function refreshAll () { - - _sodium .refresh() - _bicarbonate .refresh() + _sodium .refresh() + _bicarbonate .refresh() + _fluidBolusVolume .refresh() + _primeDiscardVolume .refresh() + _primeRinsebackVolume .refresh() + _bpMeasurementIntervalControl .refresh() + _hepatitusStatusControl .refresh() } function clear () { - - _sodium .clear() - _bicarbonate .clear() - clearErrors() - canEdit (true) + _sodium .clear() + _bicarbonate .clear() + _fluidBolusVolume .clear() + _primeDiscardVolume .clear() + _primeRinsebackVolume .clear() + _bpMeasurementIntervalControl .clear() + _hepatitusStatusControl . clear() } function ready () { - return _sodium .isActive && _sodium .valid && - _bicarbonate .isActive && _bicarbonate .valid + return _sodium .isActive && _sodium .valid && + _bicarbonate .isActive && _bicarbonate .valid && + _fluidBolusVolume .isActive && _fluidBolusVolume .valid && + _primeDiscardVolume .isActive && _primeDiscardVolume .valid && + _primeRinsebackVolume .isActive && _primeRinsebackVolume .valid && + _bpMeasurementIntervalControl .isActive && _bpMeasurementInterval .valid && + _hepatitusStatusControl .isActive && _hepatitusStatus .valid } Column { id: _leftColumn @@ -56,8 +80,8 @@ step : vTreatmentRanges.dialysateSodiumRes defaultValue : vTreatmentRanges.dialysateSodiumDef value : vTreatmentCreate.sodium - isActive : true // PRS-215 - + isActive : vTreatmentCreate.sodiumSet + onDidActiveChange : function(vState) { vTreatmentCreate.sodiumSet = vState } onDidChange : function(vValue) { if ( ! _sodium.valid ) { vTreatmentCreate.sodiumRejectReason = Variables.noRejectReason } vTreatmentCreate.sodium = vValue @@ -76,21 +100,124 @@ step : vTreatmentRanges.dialysateBicarbonateRes defaultValue : vTreatmentRanges.dialysateBicarbonateDef value : vTreatmentCreate.bicarbonate - isActive : true // PRS-215 - + isActive : vTreatmentCreate.bicarbonateSet + onDidActiveChange : function(vState) { vTreatmentCreate.bicarbonateSet = vState } onDidChange : function(vValue) { if ( ! _sodium.valid ) { vTreatmentCreate.bicarbonateRejectReason = Variables.noRejectReason } vTreatmentCreate.bicarbonate = vValue } } + LabelUnitValueAdjuster { id: _fluidBolusVolume + text : qsTr("Fluid Bolus Volume") + unitText : Variables.unitTextFluid + valid : ! vTreatmentCreate.fluidBolusVolumeRejectReason + width : _root.cellWidth + height : _root.cellHeight + editable : _root.editingEnabled + minimum : vTreatmentRanges.salineBolusVolumeMin + maximum : vTreatmentRanges.salineBolusVolumeMax + step : vTreatmentRanges.salineBolusVolumeRes + defaultValue : vTreatmentRanges.salineBolusVolumeDef + value : vTreatmentCreate.fluidBolusVolume + isActive : vTreatmentCreate.fluidBolusVolumeSet + onDidActiveChange : function(vState) { vTreatmentCreate.fluidBolusVolumeSet = vState } + onDidChange : function(vValue) { + if ( ! _fluidBolusVolume.valid ) { vTreatmentCreate.fluidBolusVolumeRejectReason = Variables.noRejectReason } + vTreatmentCreate.fluidBolusVolume = vValue + } + } + LabelUnitValueAdjuster { id: _primeDiscardVolume + text : qsTr("Prime Discard Volume") + unitText : Variables.unitTextFluid + valid : ! vTreatmentCreate.primeDiscardVolumeRejectReason + width : _root.cellWidth + height : _root.cellHeight + editable : _root.editingEnabled + minimum : vTreatmentRanges.primeDiscardVolumeMin + maximum : vTreatmentRanges.primeDiscardVolumeMax + step : vTreatmentRanges.primeDiscardVolumeRes + defaultValue : vTreatmentRanges.primeDiscardVolumeDef + value : vTreatmentCreate.primeDiscardVolume + isActive : vTreatmentCreate.primeDiscardVolumeSet + onDidActiveChange : function(vState) { vTreatmentCreate.primeDiscardVolumeSet = vState } + onDidChange : function(vValue) { + if ( ! _primeDiscardVolume.valid ) { vTreatmentCreate.primeDiscardVolumeRejectReason = Variables.noRejectReason } + vTreatmentCreate.primeDiscardVolume = vValue + } + } - + LabelUnitValueAdjuster { id: _primeRinsebackVolume + text : qsTr("Prime Rinseback Volume") + unitText : Variables.unitTextFluid + valid : ! vTreatmentCreate.rinsebackVolumeRejectReason + width : _root.cellWidth + height : _root.cellHeight + editable : _root.editingEnabled + minimum : vTreatmentRanges.rinsebackVolumeMin + maximum : vTreatmentRanges.rinsebackVolumeMax + step : vTreatmentRanges.rinsebackVolumeRes + defaultValue : vTreatmentRanges.rinsebackVolumeDef + value : vTreatmentCreate.rinsebackVolume + isActive : vTreatmentCreate.rinsebackVolumeSet + onDidActiveChange : function(vState) { vTreatmentCreate.rinsebackVolumeSet = vState } + onDidChange : function(vValue) { + if ( ! _primeRinsebackVolume.valid ) { vTreatmentCreate.rinsebackVolumeRejectReason = Variables.noRejectReason } + vTreatmentCreate.rinsebackVolume = vValue + } + } } Column { id: _rightColumn spacing : _root.columnSpacing + LabelUnitContainer { id: _bpMeasurementInterval + text : qsTr("Vitals Interval") + unitText : Variables.unitTextDuration + valid : ! vTreatmentCreate.bloodPressureMeasureIntervalRejectReason + + contentItem : ValueAdjusterCustom { id: _bpMeasurementIntervalControl + editable : _root.editingEnabled + isActive : vTreatmentCreate.bloodPressureMeasureIntervalSet + defaultValue : vTreatmentRanges.vitalsInterval + value : vTreatmentRanges.bloodPressureMeasureInterval.indexOf(vTreatmentCreate.bloodPressureMeasureInterval.toString()) + model : vTreatmentRanges.bloodPressureMeasureInterval + canOff : true + + onDidActiveChange: function(vState) { vTreatmentCreate.bloodPressureMeasureIntervalSet = vState } + + onDidChange : function(vValue) { + if ( ! _bpMeasurementInterval.valid ) { + vTreatmentCreate.bloodPressureMeasureIntervalRejectReason = Variables.noRejectReason + } + + vTreatmentCreate.bloodPressureMeasureInterval = vTreatmentRanges.bloodPressureMeasureInterval[vValue] + } + } + } + + LabelUnitContainer { id: _hepatitusStatus + text : qsTr("Hepatitus Status") + valid : ! vTreatmentCreate.hepatitusBStatusRejectReason + + contentItem : ValueAdjusterCustom { id: _hepatitusStatusControl + editable : _root.editingEnabled + isActive : vTreatmentCreate.hepatitusBStatusSet + value : vTreatmentCreate.hepatitusBStatus + defaultValue : vTreatmentCreate.hepatitusBStatus + model : vTreatmentRanges.hepatitisStatus + + onDidActiveChange: function(vState) { vTreatmentCreate.hepatitusBStatusSet = vState } + + onDidChange : function(vValue) { + if ( ! _hepatitusStatus.valid ) { + vTreatmentCreate.hepatitusBStatusRejectReason = Variables.noRejectReason + } + + vTreatmentCreate.hepatitusBStatus = vValue + } + } + } } } Index: sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateTreatmentSettings.qml =================================================================== diff -u -r1132f049e169cc87a059261f72fca0ceb7d739f1 -r1a46e7e1fd9da0fcfa8359a194610c55adfff04f --- sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateTreatmentSettings.qml (.../PreTreatmentCreateTreatmentSettings.qml) (revision 1132f049e169cc87a059261f72fca0ceb7d739f1) +++ sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateTreatmentSettings.qml (.../PreTreatmentCreateTreatmentSettings.qml) (revision 1a46e7e1fd9da0fcfa8359a194610c55adfff04f) @@ -34,6 +34,7 @@ } function setPresetParameters () { + vTreatmentCreate.dialysateTempSet = true vTreatmentCreate.dialysateTemp = vTreatmentRanges.dialysateTempDef } @@ -398,8 +399,8 @@ defaultValue : vTreatmentRanges.dialysateTempDef value : vTreatmentCreate.dialysateTemp decimal : Variables.dialysateTempPrecision - isActive : true - + isActive : vTreatmentCreate.dialysateTempSet + onDidActiveChange : function(vState) { vTreatmentCreate.dialysateTempSet = vState } onDidChange : function(vValue) { if ( ! _dialysateTemperature.valid ) { vTreatmentCreate.dialysateTempRejectReason = Variables.noRejectReason } vTreatmentCreate.dialysateTemp = vValue Index: sources/view/td/data/VTreatmentRanges.cpp =================================================================== diff -u -r1132f049e169cc87a059261f72fca0ceb7d739f1 -r1a46e7e1fd9da0fcfa8359a194610c55adfff04f --- sources/view/td/data/VTreatmentRanges.cpp (.../VTreatmentRanges.cpp) (revision 1132f049e169cc87a059261f72fca0ceb7d739f1) +++ sources/view/td/data/VTreatmentRanges.cpp (.../VTreatmentRanges.cpp) (revision 1a46e7e1fd9da0fcfa8359a194610c55adfff04f) @@ -242,16 +242,17 @@ FROMVARIANT_WITHRETURN ( salineBolusVolumeMax , "Saline Bolus Volume Ranges" , "Saline_Bolus_Volume_Max" , UInt , isConfigsOk ); FROMVARIANT_WITHRETURN ( salineBolusVolumeRes , "Saline Bolus Volume Ranges" , "Saline_Bolus_Volume_Res" , UInt , isConfigsOk ); - heparinTypeOptions ( _Settings.keys(mCategory , "Heparin Type Options" )); - acidConcentrateOptions ( _Settings.keys(mCategory , "Acid Concentrate Options" )); - bicarbonateConcentrateOptions ( _Settings.keys(mCategory , "Bicarbonate Concentrate Options" )); - dialyzerTypeOptions ( _Settings.keys(mCategory , "Dialyzer Type Options" )); - bloodPressureMeasureInterval ( _Settings.keys(mCategory , "Vitals Measurement Interval Options" )); - treatmentModalityOptions ( _Settings.keys(mCategory , "Treatment Modality" )); - hdfTreatmentModeOptions ( _Settings.keys(mCategory , "HDF Treatment Mode" )); - dryBicabCartridgeSizeOptions ( _Settings.keys(mCategory , "Dry Bicarb Cartridge Size" )); - waterSampleTestResultRequired ( _Settings.keys(mCategory , "Water Sample Test Result Required" )); - QVariantList mAcidConcentrateValues = _Settings.values(mCategory , "Acid Concentrate Options" ); + heparinTypeOptions ( _Settings.keys(mCategory , "Heparin Type Options" )); + acidConcentrateOptions ( _Settings.keys(mCategory , "Acid Concentrate Options" )); + bicarbonateConcentrateOptions ( _Settings.keys(mCategory , "Bicarbonate Concentrate Options" )); + dialyzerTypeOptions ( _Settings.keys(mCategory , "Dialyzer Type Options" )); + bloodPressureMeasureInterval ( _Settings.keys(mCategory , "Vitals Measurement Interval Options" )); + treatmentModalityOptions ( _Settings.keys(mCategory , "Treatment Modality" )); + hdfTreatmentModeOptions ( _Settings.keys(mCategory , "HDF Treatment Mode" )); + dryBicabCartridgeSizeOptions ( _Settings.keys(mCategory , "Dry Bicarb Cartridge Size" )); + waterSampleTestResultRequired ( _Settings.keys(mCategory , "Water Sample Test Result Required" )); + hepatitisStatus ( _Settings.keys(mCategory , "Hepatitis Status" )); + QVariantList mAcidConcentrateValues = _Settings.values(mCategory , "Acid Concentrate Options" ); // for (int i = 0; i < _acidConcentrateValues.size(); ++i) { // bool ok = false; @@ -265,10 +266,7 @@ // _acidConcentrateValues[i] = _Settings.value(mCategory, "Acid Concentrate Options" , _acidConcentrateOptions[i] ).toFloat(&ok); _acidConcentrateModel.insertRow( i, {{ eRole_Key, _acidConcentrateOptions[i]}, { eRole_Value, mAcidConcentrateValues[i].toFloat(&ok) }}); - - isConfigsOk = isConfigsOk && ok; - } isConfigsOk = isConfigsOk && !_heparinTypeOptions .isEmpty(); @@ -281,6 +279,7 @@ isConfigsOk = isConfigsOk && !_hdfTreatmentModeOptions .isEmpty(); isConfigsOk = isConfigsOk && !_dryBicabCartridgeSizeOptions .isEmpty(); isConfigsOk = isConfigsOk && !_waterSampleTestResultRequired.isEmpty(); + isConfigsOk = isConfigsOk && !_hepatitisStatus .isEmpty(); vitalsInterval(_bloodPressureMeasureInterval.indexOf(_vitalsDef)); @@ -389,5 +388,10 @@ FROMVARIANT_WITHRETURN ( weightMax , "Weight Ranges" , "Weight_Max" , Float , isConfigsOk ); FROMVARIANT_WITHRETURN ( weightRes , "Weight Ranges" , "Weight_Res" , Float , isConfigsOk ); + FROMVARIANT_WITHRETURN ( primeDiscardVolumeDef , "Prime Discard Volume Ranges" , "Prime_Discard_Volume_Def" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( primeDiscardVolumeMin , "Prime Discard Volume Ranges" , "Prime_Discard_Volume_Min" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( primeDiscardVolumeMax , "Prime Discard Volume Ranges" , "Prime_Discard_Volume_Max" , UInt , isConfigsOk ); + FROMVARIANT_WITHRETURN ( primeDiscardVolumeRes , "Prime Discard Volume Ranges" , "Prime_Discard_Volume_Res" , UInt , isConfigsOk ); + emit didTreatmentRangesDone( isConfigsOk ); } Index: sources/view/td/data/VTreatmentRanges.h =================================================================== diff -u -r1132f049e169cc87a059261f72fca0ceb7d739f1 -r1a46e7e1fd9da0fcfa8359a194610c55adfff04f --- sources/view/td/data/VTreatmentRanges.h (.../VTreatmentRanges.h) (revision 1132f049e169cc87a059261f72fca0ceb7d739f1) +++ sources/view/td/data/VTreatmentRanges.h (.../VTreatmentRanges.h) (revision 1a46e7e1fd9da0fcfa8359a194610c55adfff04f) @@ -62,7 +62,6 @@ RANGESET( float , heparinBolusVolume , 0) RANGESET( float , heparinDispensingRate , 0) RANGESET( quint32 , heparinStopTime , 0) - RANGESET( float , acidConcentratePotassium , 0) RANGESET( float , acidConcentrateCalcium , 0) VALUESET( float , potassium , 0) @@ -72,10 +71,11 @@ READONLY( QStringList , bicarbonateConcentrateOptions ,{}) READONLY( QStringList , dialyzerTypeOptions ,{}) READONLY( QStringList , bloodPressureMeasureInterval ,{}) - VALUESET( quint32 , vitalsInterval , 0) - + VALUESET( quint32 , vitalsInterval , 0) // vitals default + READONLY( QStringList , hepatitisStatus ,{}) RANGESET( float , dialysateTemp , 0) RANGESET( quint32 , salineBolusVolume , 0) + RANGESET( quint32 , primeDiscardVolume , 0) RANGESET( float , weight , 0) Q_PROPERTY(MListModel* acidConcentrateModel READ acidConcentrateModel NOTIFY didAcidConcentrateModelChange)