Index: sources/gui/qml/pages/treatment/TreatmentCreate.qml =================================================================== diff -u -rb61d8a3e01fef66eee8095c9cddf835d9bb32b66 -r1a7d3535b65d7edf23bc6638c4113e4b55c49c2a --- sources/gui/qml/pages/treatment/TreatmentCreate.qml (.../TreatmentCreate.qml) (revision b61d8a3e01fef66eee8095c9cddf835d9bb32b66) +++ sources/gui/qml/pages/treatment/TreatmentCreate.qml (.../TreatmentCreate.qml) (revision 1a7d3535b65d7edf23bc6638c4113e4b55c49c2a) @@ -51,6 +51,10 @@ contentHeight: _column.implicitHeight clip: true + function setInteractive(isInteractive) { + _flickable.interactive = isInteractive + } + ScrollBar.vertical: ScrollBar { id: _scrollBar anchors.right: _flickable.right anchors.rightMargin: 3 @@ -93,10 +97,12 @@ text: qsTr("Blood Flow Rate") units: qsTr("mL/min") onPressed: { - vTreatmentCreate.bloodFlowRate = value; + _flickable.setInteractive(false) + vTreatmentCreate.bloodFlowRate = value } onReleased: { - vTreatmentCreate.bloodFlowRate = value; + vTreatmentCreate.bloodFlowRate = value + _flickable.setInteractive(true) } } @@ -110,10 +116,12 @@ text: qsTr("Dialysate Flow Rate") units: qsTr("mL/min") onPressed: { + _flickable.setInteractive(false) vTreatmentCreate.dialysateFlowRate = value; } onReleased: { vTreatmentCreate.dialysateFlowRate = value; + _flickable.setInteractive(true) } } @@ -127,10 +135,12 @@ text: qsTr("Duration") units: qsTr("min") onPressed: { + _flickable.setInteractive(false) vTreatmentCreate.duration = value; } onReleased: { vTreatmentCreate.duration = value; + _flickable.setInteractive(true) } } @@ -144,10 +154,12 @@ text: qsTr("Heparin Dispensing Rate") units: qsTr("mL/hr") onPressed: { - vTreatmentCreate.heparinDispensingRate = value; + _flickable.setInteractive(false) + vTreatmentCreate.heparinDispensingRate = value } onReleased: { - vTreatmentCreate.heparinDispensingRate = value; + vTreatmentCreate.heparinDispensingRate = value + _flickable.setInteractive(true) } } @@ -162,10 +174,12 @@ text: qsTr("Heparin Bolus Volume") units: qsTr("mL") onPressed: { - vTreatmentCreate.heparinBolusVolume = value; + _flickable.setInteractive(false) + vTreatmentCreate.heparinBolusVolume = value } onReleased: { - vTreatmentCreate.heparinBolusVolume = value; + vTreatmentCreate.heparinBolusVolume = value + _flickable.setInteractive(true) } } @@ -179,10 +193,12 @@ text: qsTr("Heparin Stop Time") units: qsTr("min") onPressed: { - vTreatmentCreate.heparinStopTime = value; + _flickable.setInteractive(false) + vTreatmentCreate.heparinStopTime = value } onReleased: { - vTreatmentCreate.heparinStopTime = value; + vTreatmentCreate.heparinStopTime = value + _flickable.setInteractive(true) } } @@ -195,20 +211,22 @@ max: vTreatmentCreate.salineBolusVolumeMax step: vTreatmentCreate.salineBolusVolumeRes onPressed: { - vTreatmentCreate.salineBolusVolume = value; + _flickable.setInteractive(false) + vTreatmentCreate.salineBolusVolume = value } onReleased: { - vTreatmentCreate.salineBolusVolume = value; + vTreatmentCreate.salineBolusVolume = value + _flickable.setInteractive(true) } } GridSelection { id: _acidConcentrate objectName: "_acidConcentrateRect" name: qsTr("Acid Concentrate") - buttonNames: vTreatmentCreate.acidConcentrateOptions; + buttonNames: vTreatmentCreate.acidConcentrateOptions onButtonClicked: { - vTreatmentCreate.acidConcentrate = selectedIndex; + vTreatmentCreate.acidConcentrate = selectedIndex } } @@ -244,10 +262,12 @@ text: qsTr("Dialysate Temperature") units: qsTr("C") onPressed: { - vTreatmentCreate.dialysateTemp = value; + _flickable.setInteractive(false) + vTreatmentCreate.dialysateTemp = value } onReleased: { - vTreatmentCreate.dialysateTemp = value; + vTreatmentCreate.dialysateTemp = value + _flickable.setInteractive(true) } } @@ -277,12 +297,22 @@ highValue: vTreatmentCreate.arterialPressureLimitHighMin lowStep: vTreatmentCreate.arterialPressureLimitLowRes highStep: vTreatmentCreate.arterialPressureLimitHighRes - onLowSliderChanged: { + onLowSliderPressed: { + _flickable.setInteractive(false) vTreatmentCreate.arterialPressureLimitLow = lowValue } - onHighSliderChanged: { + onLowSliderReleased: { + vTreatmentCreate.arterialPressureLimitLow = lowValue + _flickable.setInteractive(true) + } + onHighSliderPressed: { + _flickable.setInteractive(false) vTreatmentCreate.arterialPressureLimitHigh = highValue } + onHighSliderReleased: { + vTreatmentCreate.arterialPressureLimitHigh = highValue + _flickable.setInteractive(true) + } } @@ -312,12 +342,22 @@ highValue: vTreatmentCreate.venousPressureLimitHighMin lowStep: vTreatmentCreate.venousPressureLimitLowRes highStep: vTreatmentCreate.venousPressureLimitHighRes - onLowSliderChanged: { + onLowSliderPressed: { + _flickable.setInteractive(false) vTreatmentCreate.venousPressureLimitLow = lowValue } - onHighSliderChanged: { + onLowSliderReleased: { + vTreatmentCreate.venousPressureLimitLow = lowValue + _flickable.setInteractive(true) + } + onHighSliderPressed: { + _flickable.setInteractive(false) vTreatmentCreate.venousPressureLimitHigh = highValue } + onHighSliderReleased: { + vTreatmentCreate.venousPressureLimitHigh = highValue + _flickable.setInteractive(true) + } } SliderCreateTreatment { id: _bloodPressureMeasurementInterval @@ -331,10 +371,12 @@ step: vTreatmentCreate.bloodPressureMeasureIntervalRes stepSnap: true onPressed: { + _flickable.setInteractive(false) vTreatmentCreate.bloodPressureMeasureInterval = value } onReleased: { vTreatmentCreate.bloodPressureMeasureInterval = value + _flickable.setInteractive(true) } } @@ -349,10 +391,12 @@ step: vTreatmentCreate.rinsebackFlowRateRes stepSnap: true onPressed: { + _flickable.setInteractive(false) vTreatmentCreate.rinsebackFlowRate = value } onReleased: { vTreatmentCreate.rinsebackFlowRate = value + _flickable.setInteractive(true) } }