Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r9f558b81ef69d1b43a75c390b5faadce0a891df1 -r54b940806bb1acdbdeef6ff7b61cd13418d578e7 --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 9f558b81ef69d1b43a75c390b5faadce0a891df1) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 54b940806bb1acdbdeef6ff7b61cd13418d578e7) @@ -244,8 +244,8 @@ ID_AdjustUltrafiltrationStateReq = 0x4700, // 71 //// ----- @LEAHIZED ID_AdjustUltrafiltrationStateRsp = 0x4800, // 72 //// ----- @LEAHIZED - ID_AdjustUltrafiltrationEditReq = 0x110F, // 17 //// ----- @CRAPIZED: had to change to avoid duplication - ID_AdjustUltrafiltrationEditRsp = 0x1300, // 19 + ID_AdjustUltrafiltrationEditReq = 0x4100, // 65 //// ----- @LEAHIZED + ID_AdjustUltrafiltrationEditRsp = 0x4200, // 66 //// ----- @LEAHIZED ID_AdjustUltrafiltrationConfirmReq = 0x150F, // 21 //// ----- @CRAPIZED: had to change to avoid duplication ID_AdjustUltrafiltrationConfirmRsp = 0x2E00, // 46 Index: sources/gui/qml/components/Slider.qml =================================================================== diff -u -r261fa5939140953733f764f2c783c35347de415f -r54b940806bb1acdbdeef6ff7b61cd13418d578e7 --- sources/gui/qml/components/Slider.qml (.../Slider.qml) (revision 261fa5939140953733f764f2c783c35347de415f) +++ sources/gui/qml/components/Slider.qml (.../Slider.qml) (revision 54b940806bb1acdbdeef6ff7b61cd13418d578e7) @@ -188,6 +188,12 @@ return (Math.round(vValue / step) * step).toFixed(decimal) } + // round the value based on the given precision (not step) + function calculatePrecisionRoundedValue(value) { + let multiplier = Math.pow(10, decimal) + return Math.round(value * multiplier) / multiplier + } + function getValueOfX(x) { return ( x * ( maximum - minimum ) ) / width + minimum } @@ -198,7 +204,7 @@ function calculateValue(x, isSnappingToTicks) { let mMinimum = calculateMinimum() - let mMaximum = calculateRoundedValue(_root.maximum) + let mMaximum = calculatePrecisionRoundedValue(_root.maximum) // the center of the handler is aligned on the snap point and half width shall be used to set as min not the entire width. // also half of the hadler is out of slider min position when set on min, which proves the same as above. @@ -258,12 +264,12 @@ */ function calculateMinimum() { let result = calculateRoundedValue(_root.minimum) - let rdMinStop = calculateRoundedValue(_root.minStop) + let rdMinStop = calculatePrecisionRoundedValue(_root.minStop) if (rdMinStop > result) { if (stepSnap) { // if slider is set to snap and minimum stop is not on a step, then // adjust it to one step above - let rdStep = calculateRoundedValue(step) + let rdStep = calculatePrecisionRoundedValue(step) result = Math.ceil(rdMinStop/rdStep) * rdStep } else { Index: sources/gui/qml/pages/treatment/TreatmentUltrafiltrationItem.qml =================================================================== diff -u -r83fd9c7bef65c1f0af5bc0aa6ab6f61e0f9ac2b7 -r54b940806bb1acdbdeef6ff7b61cd13418d578e7 --- sources/gui/qml/pages/treatment/TreatmentUltrafiltrationItem.qml (.../TreatmentUltrafiltrationItem.qml) (revision 83fd9c7bef65c1f0af5bc0aa6ab6f61e0f9ac2b7) +++ sources/gui/qml/pages/treatment/TreatmentUltrafiltrationItem.qml (.../TreatmentUltrafiltrationItem.qml) (revision 54b940806bb1acdbdeef6ff7b61cd13418d578e7) @@ -71,13 +71,10 @@ _treatmentAdjustmentUltrafiltrationStart.open() } onContinueClicked : function(vVolume) { - close() - _treatmentAdjustmentUltrafiltrationConfirm.ultrafiltrationVolume = vVolume - _treatmentAdjustmentUltrafiltrationConfirm.open() // send Volume to HD and wait. // if accepted close() // not accepted show error in notification - // vTreatmentAdjustmentUltrafiltrationEdit.doAdjustment(vVolume) + vTreatmentAdjustmentUltrafiltrationEdit.doAdjustment(vVolume) } } @@ -111,11 +108,7 @@ function onAdjustmentTriggered ( vValue ) { if (vTreatmentAdjustmentUltrafiltrationEdit.adjustment_Accepted) { _treatmentAdjustmentUltrafiltrationConfirm.ultrafiltrationVolume = vTreatmentAdjustmentUltrafiltrationEdit.volume - _treatmentAdjustmentUltrafiltrationConfirm.treatmentDuration = vTreatmentAdjustmentUltrafiltrationEdit.duration - _treatmentAdjustmentUltrafiltrationConfirm.treatmentDurationDiff = vTreatmentAdjustmentUltrafiltrationEdit.durationDiff _treatmentAdjustmentUltrafiltrationConfirm.ultrafiltrationRate = vTreatmentAdjustmentUltrafiltrationEdit.rate - _treatmentAdjustmentUltrafiltrationConfirm.ultrafiltrationRateDiff = vTreatmentAdjustmentUltrafiltrationEdit.rateDiff - _treatmentAdjustmentUltrafiltrationConfirm.ultrafiltrationRateOld = vTreatmentAdjustmentUltrafiltrationEdit.rateOld _treatmentAdjustmentUltrafiltrationEdit .close() _treatmentAdjustmentUltrafiltrationConfirm.reset() @@ -131,6 +124,8 @@ if (vTreatmentAdjustmentUltrafiltrationConfirm.adjustment_Accepted) { vTreatmentUltrafiltration.maximum = vTreatmentAdjustmentUltrafiltrationConfirm.volume _treatmentAdjustmentUltrafiltrationConfirm.close() + _treatmentAdjustmentUltrafiltrationEdit .close() + _treatmentAdjustmentUltrafiltrationStart .open() } else { _treatmentAdjustmentUltrafiltrationConfirm.notification.text = vTreatmentAdjustmentUltrafiltrationConfirm.text() } Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml =================================================================== diff -u -rbe27a57e3051a56b73c3549c383fbba1f85ac8e3 -r54b940806bb1acdbdeef6ff7b61cd13418d578e7 --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml (.../TreatmentAdjustmentUltrafiltrationEdit.qml) (revision be27a57e3051a56b73c3549c383fbba1f85ac8e3) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml (.../TreatmentAdjustmentUltrafiltrationEdit.qml) (revision 54b940806bb1acdbdeef6ff7b61cd13418d578e7) @@ -29,6 +29,8 @@ TreatmentAdjustmentBase { id: _root contentItem.objectName: "TreatmentAdjustmentUltrafiltrationEdit" //SquishQt testability QtObject { id: _private + readonly property real minimum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Min + readonly property real maximum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Max property int decimal : Variables.ultrafiltrationPrecision property real setVolume : vTreatmentUltrafiltration.setVolume property real volumeRemoved : vTreatmentUltrafiltration.volumeRemoved @@ -84,9 +86,9 @@ verticalCenter : parent.verticalCenter } decimal : Variables.ultrafiltrationPrecision - minimum : 0 + minimum : _private.minimum minStop : _private.volumeRemoved - maximum : 8 + maximum : _private.maximum unit : Variables.unitVolume step : 0.1 defaultValue : { defaultValue = _private.setVolume } // set without binding Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml =================================================================== diff -u -r9bc992968f8e3896d5630db7656c362acb136cd2 -r54b940806bb1acdbdeef6ff7b61cd13418d578e7 --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml (.../TreatmentAdjustmentUltrafiltrationStart.qml) (revision 9bc992968f8e3896d5630db7656c362acb136cd2) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml (.../TreatmentAdjustmentUltrafiltrationStart.qml) (revision 54b940806bb1acdbdeef6ff7b61cd13418d578e7) @@ -30,8 +30,8 @@ contentItem.objectName: "TreatmentAdjustmentUltrafiltrationStart" //SquishQt testability QtObject { id: _private - property real minimum : vTreatmentUltrafiltration.minimum - property real maximum : vTreatmentUltrafiltration.maximum + readonly property real minimum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Min + readonly property real maximum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Max property real setVolume : vTreatmentUltrafiltration.setVolume property real volumeRemoved : vTreatmentUltrafiltration.volumeRemoved } Index: sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml =================================================================== diff -u -ra6ad83a73eb80978261a408ee5a92fbc8f7faa4e -r54b940806bb1acdbdeef6ff7b61cd13418d578e7 --- sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision a6ad83a73eb80978261a408ee5a92fbc8f7faa4e) +++ sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision 54b940806bb1acdbdeef6ff7b61cd13418d578e7) @@ -28,8 +28,8 @@ */ TreatmentSection { id: _root - readonly property real minimum : vTreatmentUltrafiltration.minimum - readonly property real maximum : vTreatmentUltrafiltration.maximum + readonly property real minimum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Min + readonly property real maximum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Max readonly property real value : vTreatmentUltrafiltration.volumeRemoved readonly property int topTextFontSize : 25 readonly property int bottomTextFontSize : 60