Index: sources/gui/GuiGlobals.h =================================================================== diff -u -r1ea05b21849b7ee431804166f8e206f623c39509 -r038d30c2f22add13830b92a9775d70c9615861b2 --- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 1ea05b21849b7ee431804166f8e206f623c39509) +++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 038d30c2f22add13830b92a9775d70c9615861b2) @@ -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 -r4c45b0a8be6589f9fb55b646edbe075a1f7df4fd -r038d30c2f22add13830b92a9775d70c9615861b2 --- sources/gui/qml/components/Slider.qml (.../Slider.qml) (revision 4c45b0a8be6589f9fb55b646edbe075a1f7df4fd) +++ sources/gui/qml/components/Slider.qml (.../Slider.qml) (revision 038d30c2f22add13830b92a9775d70c9615861b2) @@ -187,6 +187,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 } @@ -197,7 +203,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. @@ -257,12 +263,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 -r2a1689f77fc3de1dd4f9e004dc01c6d5ea32b1db -r038d30c2f22add13830b92a9775d70c9615861b2 --- sources/gui/qml/pages/treatment/TreatmentUltrafiltrationItem.qml (.../TreatmentUltrafiltrationItem.qml) (revision 2a1689f77fc3de1dd4f9e004dc01c6d5ea32b1db) +++ sources/gui/qml/pages/treatment/TreatmentUltrafiltrationItem.qml (.../TreatmentUltrafiltrationItem.qml) (revision 038d30c2f22add13830b92a9775d70c9615861b2) @@ -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 -r018005dc067da01f25899ce83e4ce8f14e5013ae -r038d30c2f22add13830b92a9775d70c9615861b2 --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml (.../TreatmentAdjustmentUltrafiltrationEdit.qml) (revision 018005dc067da01f25899ce83e4ce8f14e5013ae) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml (.../TreatmentAdjustmentUltrafiltrationEdit.qml) (revision 038d30c2f22add13830b92a9775d70c9615861b2) @@ -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 -r3f1dc7713eef873c5242d87c6bce72b1dd17c607 -r038d30c2f22add13830b92a9775d70c9615861b2 --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml (.../TreatmentAdjustmentUltrafiltrationStart.qml) (revision 3f1dc7713eef873c5242d87c6bce72b1dd17c607) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml (.../TreatmentAdjustmentUltrafiltrationStart.qml) (revision 038d30c2f22add13830b92a9775d70c9615861b2) @@ -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 -r7db80dd579054dd4754ae4d135a4a3e647f09b5f -r038d30c2f22add13830b92a9775d70c9615861b2 --- sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision 7db80dd579054dd4754ae4d135a4a3e647f09b5f) +++ sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml (.../TreatmentUltrafiltration.qml) (revision 038d30c2f22add13830b92a9775d70c9615861b2) @@ -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