Index: sources/gui/qml/compounds/NumPad.qml =================================================================== diff -u -rd4b731494a05087a763afff95b91c675bb417347 -rfd09b0ee6e41d75755e0572008d4f932b0bddf2b --- sources/gui/qml/compounds/NumPad.qml (.../NumPad.qml) (revision d4b731494a05087a763afff95b91c675bb417347) +++ sources/gui/qml/compounds/NumPad.qml (.../NumPad.qml) (revision fd09b0ee6e41d75755e0572008d4f932b0bddf2b) @@ -67,7 +67,7 @@ .arg(max) _root.getter = entry.text _root.setter = function (value) { entry.text = value } - _root.validator = function (value) { { return value >= min && value <= max } } + _root.validator = function (value) { return value >= min && value <= max } } function show() { Index: sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentVitals.qml =================================================================== diff -u -rc749ecd5dc413ce091250af652ccba4d96f7a582 -rfd09b0ee6e41d75755e0572008d4f932b0bddf2b --- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentVitals.qml (.../TreatmentAdjustmentVitals.qml) (revision c749ecd5dc413ce091250af652ccba4d96f7a582) +++ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentVitals.qml (.../TreatmentAdjustmentVitals.qml) (revision fd09b0ee6e41d75755e0572008d4f932b0bddf2b) @@ -82,7 +82,6 @@ onCloseClicked: { numPad.hide() -// numPad.visible = false vTreatmentVitals.doSkip() } Index: sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml.autosave =================================================================== diff -u --- sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml.autosave (revision 0) +++ sources/gui/qml/pages/treatment/sections/TreatmentUltrafiltration.qml.autosave (revision fd09b0ee6e41d75755e0572008d4f932b0bddf2b) @@ -0,0 +1,178 @@ +/*! + * + * Copyright (c) 2020-2024 Diality Inc. - All Rights Reserved. + * \copyright + * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN + * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. + * + * \file TreatmentUltrafiltration.qml + * \author (last) Behrouz NematiPour + * \date (last) 26-Sep-2023 + * \author (original) Behrouz NematiPour + * \date (original) 27-Jan-2020 + * + */ + +// Qt +import QtQuick 2.12 + +// Project + +// Qml imports +import "qrc:/globals" +import "qrc:/components" +import "qrc:/pages/treatment" + +/*! + * \brief Treatment Screen Ultrafiltration section + */ + +TreatmentSection { id: _root + readonly property real minimum : vTreatmentRanges.treatmentRanges_Ultrafiltration_Volume_Min + readonly property real maximum : vTreatmentUltrafiltration.setVolume + readonly property real value : vTreatmentUltrafiltration.volumeRemoved + readonly property real paused : vTreatmentUltrafiltration.ufPaused + readonly property real running : vTreatmentUltrafiltration.ufRunning + + readonly property int topTextFontSize : 25 + readonly property int bottomTextFontSize : 60 + readonly property bool isUfCompleted : value >= maximum && maximum > 0 + + readonly property string statusText : isUfCompleted ? qsTr ("Ultrafiltration Complete") : + paused ? qsTr ("Ultrafiltration Paused") : + running ? "" : "" + + readonly property color statusColor : isUfCompleted ? Colors.statusTextComplete : + paused ? Colors.statusPaused : + running ? Colors.transparent : Colors.transparent + + header.title: qsTr("Ultrafiltration") + " (" + qsTr("UF") + ")" + contentArea.anchors.topMargin: Variables.defaultMargin + + contentItem: Row { id: _row + spacing : Variables.defaultMargin * 6 + rightPadding: Variables.defaultMargin + leftPadding : Variables.defaultMargin + + Column { id: _leftColumn + spacing : Variables.defaultMargin * 6 + width : contentItem.width * 0.2 + height : _root.height + + LabelValue { id: _ufVolume + height : 40 + width : contentItem.width * 0.2 + + topText : qsTr("UF Volume Goal") + topTextFont.pixelSize : topTextFontSize + topTextFont.weight : Font.Medium + + bottomText : vTreatmentUltrafiltration.setVolume.toFixed(Variables.ultrafiltrationPrecision) + bottomTextFont.pixelSize: bottomTextFontSize + bottomTextFont.weight : Font.Normal + leftAlign : true + unitText : Variables.unitVolume + showCenterText : true + } + + LabelValue { id: _ufRate + height : 40 + width : contentItem.width * 0.2 + + topText : qsTr("UF Rate") + topTextFont.pixelSize : topTextFontSize + topTextFont.weight : Font.Medium + + bottomText : isTreatmentEnd || _root.isUfCompleted ? qsTr("OFF") : + vTreatmentUltrafiltration.targetRate.toFixed(Variables.ultrafiltrationPrecision) + bottomTextFont.pixelSize: bottomTextFontSize + bottomTextFont.weight : Font.Normal + bottomTextColor : _root.paused ? Colors.statusTextPaused : Colors.textTextRectLabel + leftAlign : true + unitText : Variables.unitTextRate + bottomTextTopMargin : Variables.defaultMargin + } + } + + Column { id: _rightColumn + topPadding : Variables.defaultMargin + spacing : Variables.defaultMargin * 5 + width : contentItem.width + height : _root.height + + Item { id: _statusItem + width : _rightColumn.width * 0.6 + height : 40 + Rectangle { id: _status + anchors.verticalCenter : parent.verticalCenter + anchors.right : parent.right + color : _root.statusColor + width : _statusText.contentWidth + Variables.defaultMargin * 2 + height : _statusText.contentHeight + Variables.defaultMargin + radius : height + + Text { id: _statusText + anchors.centerIn: parent + font.pixelSize : 18 + font.weight : Font.DemiBold + text : _root.statusText + color : Colors.offWhite + } + } + } + + ProgressBar { id: _progressbar + enabled : ! isSBInProgress + + width : contentItem.width * 0.6 + height : 20 + + decimal : Variables.ultrafiltrationPrecision + minimum : _root.minimum + maximum : _root.maximum + value : _root.value + unitText: Variables.unitVolume + color : _root.paused ? Colors.pauseColor : Colors.progressBarUltrafiltration + radius : height + showMarker : false + + minText.color: "#818181" + minText.font { + pixelSize : 18 + weight : Font.Normal + } + + maxText.color: "#818181" + maxText.font { + pixelSize : 18 + weight : Font.Normal + } + + Text { id: _valueText + anchors { + bottom : parent.top + bottomMargin : Variables.defaultMargin + right : parent.right + } + text : _root.value.toFixed(Variables.ultrafiltrationPrecision) + " " + Variables.unitVolume + color : _root.paused ? Colors.statusTextPaused : Colors.offWhite + font.pixelSize : 40 + font.weight : Font.DemiBold + + } + + Text { id: _volumeRemovedText + anchors { + top : parent.bottom + topMargin : Variables.defaultMargin * 2.5 + right : parent.right + } + text : qsTr("Volume Removed") + color : Colors.textTextRectLabel + font.pixelSize : 20 + font.weight : Font.Medium + } + } + } + } +}