Index: leahi.qrc
===================================================================
diff -u -r8457901952a1d732c4688da471ae98e1d4f3024f -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- leahi.qrc (.../leahi.qrc) (revision 8457901952a1d732c4688da471ae98e1d4f3024f)
+++ leahi.qrc (.../leahi.qrc) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -27,6 +27,8 @@
sources/gui/qml/pages/settings/SettingsInstitutionalRecord.qml
sources/gui/qml/pages/settings/SettingsLocalization.qml
sources/gui/qml/pages/settings/SettingsAdvancedMode.qml
+ sources/gui/qml/pages/settings/SettingsFeatureConfigurations.qml
+ sources/gui/qml/pages/settings/SettingsAdvancedInstitutional.qml
sources/gui/qml/dialogs/ConfirmDialog.qml
@@ -35,6 +37,7 @@
sources/gui/qml/dialogs/AlarmListDialog.qml
sources/gui/qml/dialogs/LockDialog.qml
sources/gui/qml/dialogs/AcidConcentrateAdjustment.qml
+ sources/gui/qml/dialogs/EndTreatmentDialog.qml
sources/gui/qml/dialogs/diagnostics/DiagnosticsDialog.qml
@@ -106,6 +109,7 @@
resources/images/check_green.png
resources/images/eye_closed.png
resources/images/stepCheck.png
+ resources/images/complete_check.png
sources/gui/qml/components/MainMenu.qml
@@ -169,6 +173,8 @@
sources/gui/qml/components/PasswordRequirements.qml
sources/gui/qml/components/BaseSwitch.qml
sources/gui/qml/components/IdleTimer.qml
+ sources/gui/qml/components/TreatmentCompleteButton.qml
+ sources/gui/qml/components/RangedValue.qml
sources/gui/qml/compounds/PressureRangeSlider.qml
@@ -179,8 +185,12 @@
sources/gui/qml/compounds/BPHREntry.qml
sources/gui/qml/compounds/NumPad.qml
sources/gui/qml/compounds/LabelUnitContainer.qml
+ sources/gui/qml/compounds/LabelUnitText.qml
sources/gui/qml/compounds/ValueAdjuster.qml
sources/gui/qml/compounds/TreatmentAdjustmentUltrafiltrationMetrics.qml
+ sources/gui/qml/compounds/InstitutionalContainer.qml
+ sources/gui/qml/compounds/ValueAdjusterCustom.qml
+ sources/gui/qml/compounds/LabelUnitValueAdjuster.qml
qtquickcontrols2.conf
@@ -268,14 +278,17 @@
sources/gui/qml/pages/treatment/sections/TreatmentFlowsComponent.qml
- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentFlow.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentBase.qml
+ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentBolusVolume.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentDuration.qml
+ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentDurationEdit.qml
+ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentDurationConfirm.qml
+ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentPressuresLimits.qml
+ sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentSetPoints.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltration.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationStart.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationEdit.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentUltrafiltrationConfirm.qml
- sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentPressuresLimits.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentVitals.qml
sources/gui/qml/pages/treatment/adjustments/TreatmentAdjustmentVitalsInterval.qml
Index: sources/gui/GuiGlobals.h
===================================================================
diff -u -r41ba9331e6a540df0c8eced0c4d3b8684afa9afa -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 41ba9331e6a540df0c8eced0c4d3b8684afa9afa)
+++ sources/gui/GuiGlobals.h (.../GuiGlobals.h) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -82,7 +82,7 @@
ID_DuetConfirmUIr = 0xBB00, // 187
// POST
- ID_HDPostSingleResultData = 0x8E00, // 142
+ ID_HDPostSingleResultData = 0x8E0F, // 142 //// ----- @CRAPIZED: had to change to avoid duplication
ID_HDPostFinalResultData = 0x8F00, // 143
ID_DGPostSingleResultData = 0x9000, // 144
ID_DGPostFinalResultData = 0x9100, // 145
@@ -105,7 +105,7 @@
ID_AdjustSerialDDRsp = 0x5200, // 82 //// ----- @LEAHIZED
// Service Information
- ID_AdjustServiceDatesReq = 0x8900, // 137
+ ID_AdjustServiceDatesReq = 0x890F, // 137 //// ----- @CRAPIZED: had to change to avoid duplication
ID_AdjustServiceDatesHDRsp = 0x8A0F, // 138 //// ----- @CRAPIZED: had to change to avoid duplication
ID_AdjustServiceDatesDGRsp = 0x8C0F, // 140 //// ----- @CRAPIZED: had to change to avoid duplication
@@ -124,7 +124,7 @@
ID_TDOpModeData = 0x1200, // 18 //// ----- @LEAHIZED
ID_PreTreatmentStates = 0x5C00, // 92
ID_TreatmentStates = 0x3C00, // 60 //// ----- @LEAHIZED
- ID_PostTreatmentStates = 0x7700, // 119
+ ID_PostTreatmentStates = 0x770F, // 119 //// ----- @CRAPIZED: had to change to avoid duplication
// -----
ID_PowerOff = 0x010F, // 010F //// ----- @CRAPIZED
@@ -191,8 +191,8 @@
ID_AdjustPatientConnectionConfirmRsp = 0x670F, // 103 //// ----- @CRAPIZED: had to change to avoid duplication
// Pre-Treatment Start Treatment
ID_AdjustStartTreatmentReq = 0x7100, // 113
- ID_AdjustStartTreatmentRsp = 0x7200, // 114
-
+ ID_AdjustStartTreatmentRsp = 0x720F, // 114 //// ----- @CRAPIZED: had to change to avoid duplication
+
// DG Data Messages
ID_DGROPumpData = 0x1F0F, // 31 //// ----- @CRAPIZED: had to change to avoid duplication
ID_DGDrainPumpData = 0x240F, // ?? //// ----- @CRAPIZED: had to change to avoid duplication
@@ -212,7 +212,7 @@
ID_DDBloodLeakData = 0x6000, // 96 //// ----- TODO: Payload subject to change given FW implementation
// FP Data Messages
- ID_FPValvesStatesData = 0x3100, // 49 //// ----- @LEAHIZED
+ ID_FPValvesStatesData = 0x310F, // 49 //// ----- @OBSOLETE. REMOVE?
ID_FPROPumpData = 0x3200, // 50 //// ----- @LEAHIZED
ID_FPPressuresData = 0x3400, // 52 //// ----- @LEAHIZED
ID_FPLevelData = 0x3500, // 53 //// ----- @LEAHIZED
@@ -237,15 +237,32 @@
ID_TreatmentParametersSetPointData = 0x4F00, // 79 //// ----- @LEAHIZED
// In-Treatment Adjustables
- ID_AdjustDurationReq = 0x160F, // 22 //// ----- @CRAPIZED: had to change to avoid duplication
- ID_AdjustDurationRsp = 0x1B00, // 27
+ ID_AdjustPressuresLimitsReq = 0x7200, // 114 //// ----- @LEAHIZED
+ ID_AdjustPressuresLimitsRsp = 0x7300, // 115 //// ----- @LEAHIZED
+ ID_AdjustBolusVolumeReq = 0x7400, // 116 //// ----- @LEAHIZED
+ ID_AdjustBolusVolumeRsp = 0x7500, // 117 //// ----- @LEAHIZED
+
+ ID_AdjustDurationEditReq = 0x7600, // 118 //// ----- @LEAHIZED
+ ID_AdjustDurationEditRsp = 0x7700, // 119 //// ----- @LEAHIZED
+ ID_AdjustDurationConfirmReq = 0x7800, // 120 //// ----- @LEAHIZED
+ ID_AdjustDurationConfirmRsp = 0x7900, // 121 //// ----- @LEAHIZED
+
+ ID_AdjustSetPointsReq = 0x7A00, // 122 //// ----- @LEAHIZED
+ ID_AdjustSetPointsRsp = 0x7B00, // 123 //// ----- @LEAHIZED
+
+ ID_AdjustBloodFlowRateReq = 0x7C00, // 124 //// ----- @LEAHIZED
+ ID_AdjustBloodFlowRateRsp = 0x7D00, // 125 //// ----- @LEAHIZED
+
+ ID_AdjustDialysateFlowRateReq = 0x7E00, // 126 //// ----- @LEAHIZED
+ ID_AdjustDialysateFlowRateRsp = 0x7F00, // 127 //// ----- @LEAHIZED
+
+ ID_AdjustDialysateTemperatureReq = 0x8000, // 128 //// ----- @LEAHIZED
+ ID_AdjustDialysateTemperatureRsp = 0x8100, // 129 //// ----- @LEAHIZED
+
ID_AdjustBloodDialysateReq = 0x1700, // 23
ID_AdjustBloodDialysateRsp = 0x1800, // 24
- ID_AdjustPressuresLimitsReq = 0x470F, // 70 //// ----- @CRAPIZED: had to change to avoid duplication
- ID_AdjustPressuresLimitsRsp = 0x480F, // 71 //// ----- @CRAPIZED: had to change to avoid duplication
-
ID_AdjustSalineReq = 0x5F00, // 95
ID_AdjustSalineRsp = 0x6000, // 96
@@ -275,22 +292,22 @@
ID_AdjustRecirculateRsp = 0x5500, // 85
// Treatment End
- ID_AdjustTreatmentEndReq = 0x5700, // 87
- ID_AdjustTreatmentEndRsp = 0x5800, // 88
+ ID_AdjustTreatmentEndReq = 0x8D00, // 141
+ ID_AdjustTreatmentEndRsp = 0x8E00, // 142
// Post-Treatment
// Patient Disconnect
ID_AdjustPatientDisconnectNotifyReq = 0x4A00, // 74 // there is no specific response message for this request and changing of the state in Pre_Treatment_States is used as the response
ID_AdjustPatientDisconnectConfirmReq = 0x060F, // 060f //// ----- @CRAPIZED
- ID_AdjustPatientDisconnectConfirmRsp = 0x7E00, // 126
+ ID_AdjustPatientDisconnectConfirmRsp = 0x7E0F, // 126 //// ----- @CRAPIZED: had to change to avoid duplication
// Disposables Removal
ID_AdjustDisposablesRemovalConfirmReq = 0x9400, // 148
ID_AdjustDisposablesRemovalConfirmRsp = 0x9500, // 149
// Treatment Log Adjs
- ID_AdjustTreatmentLogReq = 0x7500, // 117
- ID_AdjustTreatmentLogRsp = 0x7600, // 118
+ ID_AdjustTreatmentLogReq = 0x750F, // 117 //// ----- @CRAPIZED: had to change to avoid duplication
+ ID_AdjustTreatmentLogRsp = 0x760F, // 118 //// ----- @CRAPIZED: had to change to avoid duplication
// Treatment Log Data
ID_TreatmentLogAvrgeData = 0x940F, // 148 //// ----- @CRAPIZED: had to change to avoid duplication
ID_TreatmentLogAlarmData = 0x950F, // 149 //// ----- @CRAPIZED: had to change to avoid duplication
@@ -299,21 +316,29 @@
// Disinfect
ID_AdjustDisinfectModeReq = 0x9A00, // 154
ID_AdjustDisinfectModeRsp = 0x9B00, // 155
- ID_AdjustDisinfectStartReq = 0x7F00, // 127
- ID_AdjustDisinfectStartRsp = 0x8000, // 128
+ ID_AdjustDisinfectStartReq = 0x7F0F, // 127 //// ----- @CRAPIZED: had to change to avoid duplication
+ ID_AdjustDisinfectStartRsp = 0x800F, // 128 //// ----- @CRAPIZED: had to change to avoid duplication
ID_AdjustDGCleaningUsageReq = 0xB800, // 184
- ID_AdjustDGCleaningUsageRsp = 0x8D00, // 141
+ ID_AdjustDGCleaningUsageRsp = 0x8D0F, // 141 //// ----- @CRAPIZED: had to change to avoid duplication
// RO Water Input Mode
ID_DuetRoWaterStatDGq = 0xC300, // 195 DG -> UI // DG initiates Status query
ID_DuetRoWaterModeUIi = 0xBC00, // 188 UI -> DG // UI initiates Mode Set || responses to status query
ID_DuetRoWaterModeDGr = 0xC400, // 196 UI <- DG // DG responses Mode Set
// Institutional record request and response
- ID_AdjustInstitutionalRecordReq = 0xCF00, // 207 UI -> HD request institutional record
- ID_AdjustInstitutionalRecordRsp = 0xD000, // 208 HD -> UI response institutional record
+ ID_InstitutionalRecordReq = 0x8200, // 130 UI -> TD request institutional record
+ ID_InstitutionalRecordRsp = 0x8300, // 131 TD -> UI response institutional record
+ ID_AdjustInstitutionalRecordReq = 0x8400, // 132 UI -> TD request institutional record
+ ID_AdjustInstitutionalRecordRsp = 0x8500, // 133 TD -> UI response institutional record
+ // Advanced Institutional record request and response
+ ID_AdvancedInstitutionalRecordReq = 0x8600, // 134 UI -> TD request institutional record
+ ID_AdvancedInstitutionalRecordRsp = 0x8700, // 135 TD -> UI response institutional record
+ ID_AdjustAdvancedInstitutionalRecordReq = 0x8800, // 136 UI -> TD request institutional record
+ ID_AdjustAdvancedInstitutionalRecordRsp = 0x8900, // 137 TD -> UI response institutional record
+
// HD reset request in service mode
ID_ResetHDInServiceModeReq = 0xB900, // 185 UI -> HD reset in service mode
};
@@ -406,7 +431,6 @@
Q_ENUM(DD_Valves)
#include "FPDefs.h"
- Q_ENUM(FP_Valves)
};
// to be able to use the enum as signal/slot parameter
@@ -482,9 +506,6 @@
// DD Valves
typedef GuiActions::DD_Valves GuiDDValves;
- // FP Valves
- typedef GuiActions::FP_Valves GuiFPValves;
-
typedef QMap GuiStringIndexMap;
typedef QPair GuiStringIndexMapItem;
typedef QMapIterator GuiStringIndexMapIterator;
@@ -525,4 +546,4 @@
void registerQmlTypes();
bool startGui();
-}
+ }
Index: sources/gui/qml/components/HeaderBar.qml
===================================================================
diff -u -reb3bbd3e203463dc3634ecb009b8a1390bb87012 -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/qml/components/HeaderBar.qml (.../HeaderBar.qml) (revision eb3bbd3e203463dc3634ecb009b8a1390bb87012)
+++ sources/gui/qml/components/HeaderBar.qml (.../HeaderBar.qml) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -134,6 +134,13 @@
rightMargin : _headerButtonRow.spacing
}
+ TreatmentCompleteButton { id : _treatmentCompleteButton
+ extraSpace : _headerButtonRow.spacing
+ visible : vTDTreatmentStates.txEnd
+
+ onPressed : _endTreatmentDialog.open()
+ }
+
VitalsButton { id : _vitalsButton
extraSpace : _headerButtonRow.spacing
visible : vTDOpMode.preTreatment ||
Index: sources/gui/qml/globals/Variables.qml
===================================================================
diff -u -r41ba9331e6a540df0c8eced0c4d3b8684afa9afa -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/qml/globals/Variables.qml (.../Variables.qml) (revision 41ba9331e6a540df0c8eced0c4d3b8684afa9afa)
+++ sources/gui/qml/globals/Variables.qml (.../Variables.qml) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -158,7 +158,6 @@
readonly property int settingsNotificationMargin : 10
readonly property int settingsContentBottomMargin : mainMenuHeight + // Alarm Bar height
- notificationHeight + // notification Bar height
minVGap // Min Gap to give content the min border
readonly property int settingsOptionWidth : 550
@@ -193,6 +192,7 @@
readonly property int adjustmentLabelUnitContainerHeight : 75
readonly property int adjustmentLabelUnitContainerWidth : 720
+ readonly property int institutionaltContainerHeight : 69
readonly property real sliderDefaultRoundTickMarkDiameter : 5
readonly property int sliderDefaultBodyHeight : 15
@@ -254,6 +254,9 @@
// Calcium
readonly property int calciumPrecision : 2
+ // Calcium
+ readonly property int substitutionPrecision : 1
+
function sizeConverted(vSize, vSizePowers, vRound = 2) {
return ( vSize
/ vSizePowers // convert from byte to Giga byte
@@ -310,6 +313,8 @@
readonly property string unitTextFluid : qsTr("mL")
readonly property string unitTextSaline : unitTextFluid
readonly property string unitTextHeparin : unitTextFluid
+ // - Pressure
+ readonly property string unitTextPressure : qsTr("mmHg")
// - Temperature
readonly property string unitTextTemperature : qsTr("°C")
// Concentration
Index: sources/gui/qml/pages/MainStack.qml
===================================================================
diff -u -r56b0b13aa9f9e7ae201bce1843015fe5b4b43d2c -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision 56b0b13aa9f9e7ae201bce1843015fe5b4b43d2c)
+++ sources/gui/qml/pages/MainStack.qml (.../MainStack.qml) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -46,7 +46,6 @@
// Standby / Disinfection
DisinfectStack { id: _disinfectStack }
// Pre Treatment
- PreTreatmentCreateStack { id: _preTreatmentCreateStack }
PreTreatmentStack { id: _preTreatmentStack }
// In TreatmentStack
TreatmentStack { id: _treatmentStack }
@@ -135,12 +134,11 @@
}
function onHomeChanged ( vValue ) { page( _startupScreen , vValue )}
- function onStandbyChanged ( vValue ) { if ( vTDOpMode.standby ) _preTreatmentCreateStack.clear(vValue) }
+ function onStandbyChanged ( vValue ) { if ( vTDOpMode.standby ) _preTreatmentStack.clear(vValue) }
function onStandbyStartChanged ( vValue ) { /* It depends on the subModes of the standBy. Handled by onHome. */ }
function onStandbyWaitTreatmentChanged ( vValue ) { if ( vValue ) vDisinfectAdjustDisinfect.hasCancel = false }
function onStandbyWaitDisinfectChanged ( vValue ) { page( _disinfectStack , vValue )}
- function onValidateParametersChanged ( vValue ) { page( _preTreatmentCreateStack , vValue )}
function onPreTreatmentChanged ( vValue ) { page( _preTreatmentStack , vValue )}
function onInTreatmentChanged ( vValue ) { page( _treatmentStack , vValue )}
function onPostTreatmentChanged ( vValue ) { page( _postTreatmentStack , vValue )}
Index: sources/gui/qml/pages/endtreatment/EndTreatmentEndStack.qml
===================================================================
diff -u -rca05e940ea4a0c567acb05c4c8777dea079b0f08 -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/qml/pages/endtreatment/EndTreatmentEndStack.qml (.../EndTreatmentEndStack.qml) (revision ca05e940ea4a0c567acb05c4c8777dea079b0f08)
+++ sources/gui/qml/pages/endtreatment/EndTreatmentEndStack.qml (.../EndTreatmentEndStack.qml) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -41,7 +41,6 @@
footer {
childrenWidth : 300
children: TouchRect {
- enabled : _endTreatmentEnd.instructionIsLast
text.text : qsTr("START RINSEBACK")
isDefault : true
onClicked : rinsebackClicked()
Index: sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateContent.qml
===================================================================
diff -u -r4f5932840bc0a47ffe863cbf9f38dd4b41e1e72a -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateContent.qml (.../PreTreatmentCreateContent.qml) (revision 4f5932840bc0a47ffe863cbf9f38dd4b41e1e72a)
+++ sources/gui/qml/pages/pretreatment/create/PreTreatmentCreateContent.qml (.../PreTreatmentCreateContent.qml) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -526,7 +526,7 @@
}
LabelUnitContainer { id: _heparinStopTime
- text : qsTr("Heparin Stop Time")
+ text : qsTr("Heparin Delivery Duration")
unitText : Variables.unitTextDuration
valid : ! vTreatmentCreate.heparinStopTimeRejectReason
visible : _root.heparinFeatured
Index: sources/gui/qml/pages/settings/SettingsStack.qml
===================================================================
diff -u -r8457901952a1d732c4688da471ae98e1d4f3024f -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/gui/qml/pages/settings/SettingsStack.qml (.../SettingsStack.qml) (revision 8457901952a1d732c4688da471ae98e1d4f3024f)
+++ sources/gui/qml/pages/settings/SettingsStack.qml (.../SettingsStack.qml) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -70,6 +70,8 @@
readonly property bool visibleDeviceConfiguration : onlyManufacturing && loggedIn
readonly property bool visibleDeviceRegistration : onlyManufacturing && loggedIn
readonly property bool visibleInstitutionalRecord : true
+ readonly property bool visibleFeatureConfigurations : loggedIn
+ readonly property bool visibleAdvancedInstitutional : loggedIn
readonly property bool visibleLocalization : loggedIn
readonly property bool visibleAdvancedModes : loggedIn
@@ -95,6 +97,8 @@
FactoryReset ,
Decommission ,
InstitutionalRecord ,
+ AdvancedInstitutional ,
+ FeatureConfigurations ,
AdvancedMode
}
property var itemsText : [
@@ -116,6 +120,8 @@
qsTr("Factory Reset" ), // FactoryReset
qsTr("Decommissioning" ), // Decommission
qsTr("Institutional Configurations" ), // Institutional Configurations
+ qsTr("Advanced Institutional Settings" ), // AdvancedInstitutional
+ qsTr("Feature Configurations" ), // FeatureConfigurations
qsTr("Advanced Mode" ), // Advanced Modes
]
@@ -138,6 +144,8 @@
visibleFactoryReset , // FactoryReset
visibleDecommission , // Decommission
visibleInstitutionalRecord , // Institutional Record
+ visibleAdvancedInstitutional , // AdvancedInstitutional
+ visibleFeatureConfigurations , // FeatureConfigurations
visibleAdvancedModes , // Advanced Modes
]
@@ -232,10 +240,19 @@
break
case SettingsStack.InstitutionalRecord:
- vAdjustmentInstitutionalRecord.doAdjustment()
+ vInstitutionalRecord.doAdjustment()
push( _settingsInstitutionalRecord )
break
+ case SettingsStack.AdvancedInstitutional:
+ vAdvancedInstitutionalRecord.doAdjustment()
+ push( _settingsAdvancedInstitutional )
+ break
+
+ case SettingsStack.FeatureConfigurations:
+ push( _settingsFeatureConfigurations )
+ break
+
case SettingsStack.Localization:
push( _settingLocalization )
break
@@ -251,22 +268,24 @@
}
}
- SettingsInformation { id: _settingsInformation }
- SettingsVolumeBrightness { id: _settingsVolumeBrightness }
- SettingsWiFi { id: _settingsWiFi }
- SettingsDGCleaning { id: _settingsDGCleaning }
- SettingsDGScheduling { id: _settingsDGScheduling }
- SettingsServicePassword { id: _servicePassword }
- SettingsDateTime { id: _settingsDateTime }
- SettingsExportLogs { id: _settingsExportLogs }
- SettingsROInput { id: _settingsRoInput }
- SettingsManufacturingSetup { id: _settingsDeviceConfiguration }
- SettingsDeviceRegistration { id: _settingsDeviceRegistration }
- SettingsRootSSHAccess { id: _SettingsRootSSHAccess }
- SettingsFactoryReset { id: _serviceFactoryReset }
- SettingsDecommission { id: _serviceDecommission }
- SettingsInstitutionalRecord { id: _settingsInstitutionalRecord }
- SettingsLocalization { id: _settingLocalization }
+ SettingsInformation { id: _settingsInformation }
+ SettingsVolumeBrightness { id: _settingsVolumeBrightness }
+ SettingsWiFi { id: _settingsWiFi }
+ SettingsDGCleaning { id: _settingsDGCleaning }
+ SettingsDGScheduling { id: _settingsDGScheduling }
+ SettingsServicePassword { id: _servicePassword }
+ SettingsDateTime { id: _settingsDateTime }
+ SettingsExportLogs { id: _settingsExportLogs }
+ SettingsROInput { id: _settingsRoInput }
+ SettingsManufacturingSetup { id: _settingsDeviceConfiguration }
+ SettingsDeviceRegistration { id: _settingsDeviceRegistration }
+ SettingsRootSSHAccess { id: _SettingsRootSSHAccess }
+ SettingsFactoryReset { id: _serviceFactoryReset }
+ SettingsDecommission { id: _serviceDecommission }
+ SettingsInstitutionalRecord { id: _settingsInstitutionalRecord }
+ SettingsAdvancedInstitutional { id: _settingsAdvancedInstitutional}
+ SettingsLocalization { id: _settingLocalization }
+ SettingsFeatureConfigurations { id: _settingsFeatureConfigurations}
SettingsAdvancedMode { id: _settingAdvancedMode }
function gotoServiceMode( vservice ) {
@@ -288,17 +307,6 @@
}
}
- Connections { target: vAdjustmentInstitutionalRecord
- function onAdjustmentTriggered ( vValue ) {
- if ( vAdjustmentInstitutionalRecord.adjustment_Accepted ) {
- _settingsHome.notificationText = ""
- }
- else {
- _settingsHome.notificationText = vAdjustmentInstitutionalRecord.text()
- }
- }
- }
-
Connections { target: vTDOpMode
function onServiceChanged ( vValue ) { gotoServiceMode( vValue )}
function onStandbyWaitDisinfectChanged ( vValue ) { page( _settingsHome , vValue )}
Index: sources/view/settings/VSettings.cpp
===================================================================
diff -u -r77e7c1e746bba703ab3aee61f8e19f398fd9ac00 -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/view/settings/VSettings.cpp (.../VSettings.cpp) (revision 77e7c1e746bba703ab3aee61f8e19f398fd9ac00)
+++ sources/view/settings/VSettings.cpp (.../VSettings.cpp) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -40,10 +40,10 @@
PROPERTY_POST_CONNECTION(VSettings, servicePass );
PROPERTY_POST_CONNECTION(VSettings, alarmVolume );
PROPERTY_POST_CONNECTION(VSettings, roWaterMode );
- PROPERTY_POST_CONNECTION(VSettings, userMode );
PROPERTY_POST_CONNECTION(VSettings, integratedBPCuff );
PROPERTY_POST_CONNECTION(VSettings, heparinSyringePump );
PROPERTY_POST_CONNECTION(VSettings, chemicalDisinfection);
+ PROPERTY_POST_CONNECTION(VSettings, advancedMode);
init = true;
}
@@ -63,10 +63,11 @@
}
}
-void VSettings::userMode_post(const bool &vuserMode_post) {
+void VSettings::advancedMode_post(const bool &vadvancedMode_post) {
//TODO The Settings shall be the Singleton SettingsController and modify the MSettings like the others.
- if ( Storage::Settings::save(userModeGroup(), userModeKey(), QString::number(vuserMode_post)) != 0 ) {
- userMode(false);
+ advancedMode(false);
+ if ( Storage::Settings::save(advancedModeGroup(), advancedModeKey(), QString::number(vadvancedMode_post)) != 0 ) {
+ advancedMode(false);
}
}
void VSettings::integratedBPCuff_post(const bool &vintegratedBPCuff_post) {
@@ -106,12 +107,27 @@
for (const auto &category : mCategorys) {
QStringList groups = _Settings.groups(category);
for (const auto &group : groups) {
- QStringList keys = _Settings.keys (category, group);
- QVariantList values = _Settings.values (category, group);
+ QStringList keys ;
+ QVariantList values ;
+ QString title = "";
+ for (const QString &key : _Settings.keys(category, group)) {
+ if (Storage::Settings::isKeyTitle ( key ) ) {
+ title = _Settings.value(category, group, key).toString();
+ } else {
+ const QString imagePath = QStringLiteral("%1%2").arg(_location)
+ .arg(_Settings.value(category, group, key).toString());
+ QFileInfo fileInfo(imagePath);
+ values.append(fileInfo.exists() && fileInfo.isFile() ? "file:" + imagePath : "");
+ keys.append(key);
+ }
+ }
+
if ( Storage::Settings::isCategoryInstructions( category ) ) {
- TKeysList keysList = updateReplacements(group, keys );
- updateInstructions(group, keysList, values );
- updateInstructions(group );
+ TKeysList keysList = updateReplacements(group, keys );
+ updateInstructions(group, keysList, values, title );
+ updateInstructions(group );
+
+
}
else { //TODO: Since it is global system settings, move this to the settings controller so the C++ backend can also use it. like Date/Time formats.
for (const auto &key : qAsConst(keys)) {
@@ -129,11 +145,11 @@
keyValue[key] = mRoWaterMode ;
roWaterMode ( mRoWaterMode);
}
- else if ( isuserMode (category, group, key) ) {
- bool mUserMode;
- mUserMode = _Settings.value(category, group, key).toBool ();
- keyValue[key] = mUserMode ;
- userMode ( mUserMode);
+ else if ( isadvancedMode(category, group, key) ) {
+ bool mAdvancedMode;
+ mAdvancedMode = _Settings.value(category, group, key).toBool ();
+ keyValue[key] = mAdvancedMode ;
+ advancedMode ( mAdvancedMode );
}
else if ( isintegratedBPCuff (category, group, key) ) {
bool mIntegratedBPCuff;
@@ -175,7 +191,7 @@
servicePass ( _servicePass );
alarmVolume ( _alarmVolume );
roWaterMode ( _roWaterMode );
- userMode ( _userMode );
+ advancedMode( _advancedMode );
//DEBUG qDebug() << servicePass() << roWaterMode() << alarmVolume();
adjustment(true);
@@ -219,10 +235,10 @@
return keysList;
}
-void VSettings::updateInstructions(const QString &vGroup, const TKeysList &vKeysList, const QVariantList &vValues)
+void VSettings::updateInstructions(const QString &vGroup, const TKeysList &vKeysList, const QVariantList &vValues, const QString &vTitle)
{
TInstruction mInstruction;
- mInstruction.location = _location;
+ mInstruction.title = vTitle;
mInstruction.keys = vKeysList;
mInstruction.values = vValues ;
_instructionMap[vGroup] = mInstruction;
@@ -233,12 +249,13 @@
//TODO: this function or even the structure may need to update to send less data to qml and only the updated part.
TKeysList keysList = _instructionMap[vGroup].keys ;
QVariantList values = _instructionMap[vGroup].values;
+ QString title = _instructionMap[vGroup].title;
QStringList keyList;
for ( const auto &keys : keysList) {
keyList += keys.join("");
}
QVariantMap details;
- details["location"] = _location ;
+ details["title"] = title ;
details["keys" ] = keyList ;
details["values" ] = values ;
_instructions[vGroup] = details ;
Index: sources/view/settings/VSettings.h
===================================================================
diff -u -rcbf070d3a5b274700f8831ab50dd95986a533477 -r0dfba44fb7172b9458d161b3ed5f54527f93b698
--- sources/view/settings/VSettings.h (.../VSettings.h) (revision cbf070d3a5b274700f8831ab50dd95986a533477)
+++ sources/view/settings/VSettings.h (.../VSettings.h) (revision 0dfba44fb7172b9458d161b3ed5f54527f93b698)
@@ -34,7 +34,7 @@
QString _location = QString(Storage::Settings_Category_InstructionsImagesLoc).arg(Storage::Settings_Path());
typedef QList TKeysList;
typedef struct {
- QString location;
+ QString title ;
TKeysList keys ;
QVariantList values ;
} TInstruction ;
@@ -68,10 +68,10 @@
SETTINGS(QString , servicePass , "" , Storage::Settings_Category_SettingsSystem , "Service" , "Password" )
SETTINGS(quint8 , alarmVolume , 5 , Storage::Settings_Category_SettingsSystem , "Alarm" , "Volume" )
SETTINGS(bool , roWaterMode , false , Storage::Settings_Category_SettingsSystem , "Feature Configurations" , "RoWaterMode" )
- SETTINGS(bool , userMode , false , Storage::Settings_Category_SettingsSystem , "UserMode" , "UserMode" )
SETTINGS(bool , integratedBPCuff , false , Storage::Settings_Category_SettingsSystem , "Feature Configurations" , "IntegratedBPCuff" )
SETTINGS(bool , heparinSyringePump , false , Storage::Settings_Category_SettingsSystem , "Feature Configurations" , "HeparinSyringePump" )
SETTINGS(bool , chemicalDisinfection , false , Storage::Settings_Category_SettingsSystem , "Feature Configurations" , "ChemicalDisinfection" )
+ SETTINGS(bool , advancedMode , false , Storage::Settings_Category_SettingsSystem , "AdvancedMode", "AdvancedMode" )
TRIGGER (bool , encryptionPass, false )
@@ -80,8 +80,8 @@
private:
void initConnectionsSettings();
- TKeysList updateReplacements ( const QString &vGroup, const QStringList &vKeys );
- void updateInstructions ( const QString &vGroup, const TKeysList &vKeysList, const QVariantList &vValues );
+ TKeysList updateReplacements ( const QString &vGroup, const QStringList &vKeys );
+ void updateInstructions ( const QString &vGroup, const TKeysList &vKeysList, const QVariantList &vValues, const QString &vTitle );
void updateInstructions ( const QString &vGroup );
QString defaultPassword ();