Index: DD_RO_WaterMode/interface.ui
===================================================================
diff -u
--- DD_RO_WaterMode/interface.ui (revision 0)
+++ DD_RO_WaterMode/interface.ui (revision 05edab0c07f66b4d8ed5358f1b329a8ac48cfb5d)
@@ -0,0 +1,198 @@
+
+
+ ui_interface
+
+
+
+ 0
+ 0
+ 400
+ 115
+
+
+
+
+ 0
+ 0
+
+
+
+
+ 400
+ 0
+
+
+
+
+ 200
+ 250
+
+
+
+ &6 DD info/&B RO Water Mode
+
+
+ -
+
+
-
+
+
+ 2
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+
+ 250
+ 0
+
+
+
+
+ 10
+
+
+
+ color: rgb(238, 238, 236);
+background-color: rgb(107, 87, 100);
+
+
+ 236 : [0xEE00] : DD RO Water Mode
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+ Send
+
+
+
+
+
+ -
+
+
-
+
+
+ QLayout::SetMaximumSize
+
+
+ 10
+
+
+ 10
+
+
+ 0
+
+
-
+
+
+ Req [0xED]
+
+
+
+ -
+
+
+
+ 0
+ 0
+
+
+
+
+ 0
+ 0
+
+
+
+
+ 1000
+ 16777215
+
+
+
+ false
+
+
+ QFrame::WinPanel
+
+
+ QFrame::Sunken
+
+
+ -
+
+
+ Qt::AlignCenter
+
+
+
+ -
+
+
+ Accepted
+
+
+
+ -
+
+
-
+
+
+
+ 0
+ 0
+
+
+
+ Reason
+
+
+
+ -
+
+
+
+ 50
+ 0
+
+
+
+
+ 50
+ 16777215
+
+
+
+ 900
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ tbSend
+
+
+
+
Index: DD_RO_WaterMode/loader.py
===================================================================
diff -u
--- DD_RO_WaterMode/loader.py (revision 0)
+++ DD_RO_WaterMode/loader.py (revision 05edab0c07f66b4d8ed5358f1b329a8ac48cfb5d)
@@ -0,0 +1,97 @@
+"""
+ The DD RO Water Mode ui loader
+"""
+# Python
+import os
+
+# Qt
+from PySide2 import QtCore, QtWidgets
+from PySide2.QtCore import Slot
+
+# parent
+from engine.dynamicloader import DynamicLoader
+
+# plugin specific
+from leahi_dialin.common.msg_defs import MsgIds, MsgFieldPositions
+from leahi_dialin.protocols import CAN
+from leahi_dialin.utils import conversions
+
+# dd Simulator
+from leahi_dialin.ui.dd_messaging import DD_Messaging
+from leahi_dialin.ui.td_messaging import TD_Messaging
+
+
+class Loader(DynamicLoader):
+ """
+ The DD Water Mode ui loader
+ """
+
+ def __init__(self):
+ self.dd_interface = DD_Messaging()
+ self.can_interface = self.dd_interface.can_interface
+ super().__init__(os.path.dirname(__file__))
+
+ if self.can_interface is not None:
+ self.can_interface.register_receiving_publication_function(CAN.CanChannels.ui_sync_broadcast_ch_id,
+ MsgIds.MSG_ID_UI_ADJUST_RO_WATER_MODE_REQUEST.value,
+ self.handle_request)
+
+ def _init_loader(self):
+ """
+ finds and creates widgets
+ :return: none
+ """
+ self.cmdStrings = [
+ "RO Featured",
+ "RO Featured w/ Boost Pump",
+ "RO Defeatured",
+ ]
+
+ self.tbSend = self.find_widget(QtWidgets.QToolButton , 'tbSend' )
+ self.lbRoWaterModeRequest = self.find_widget(QtWidgets.QLabel , 'lbRoWaterModeRequest' )
+ self.spnReason = self.find_widget(QtWidgets.QSpinBox , 'spnReason' )
+ self.cbAccepted = self.find_widget(QtWidgets.QCheckBox , 'cbAccepted' )
+
+
+ def _init_connections(self):
+ """
+ initializes the widgets connections
+ :return: none
+ """
+ self.tbSend.clicked.connect(self.do_dd_ro_water_mode_response)
+
+
+ @Slot()
+ def _init_widgets(self):
+ """
+ initializes the widgets' properties
+ :return: none
+ """
+ self.lbRoWaterModeRequest .setText("-")
+ self.cbAccepted .setChecked ( True )
+ self.spnReason .setValue ( 0 )
+
+
+ @Slot()
+ def do_dd_ro_water_mode_response(self):
+ """
+ the slot for dd level sensor change
+ :return: none
+ """
+ self.dd_interface.dd_ro_water_mode_responses(
+ self.cbAccepted .isChecked() ,
+ self.spnReason .value()
+ )
+
+
+ @Slot()
+ def handle_request(self, message, timestamp = 0.0):
+ """
+ the slot for Valve data change
+ :return: none
+ """
+ message = message['message']
+ index = MsgFieldPositions.START_POS_FIELD_1
+ value,index = conversions.bytearray_to_integer( message, index)
+ cmdString = self.cmdStrings[value] if value >= 0 and value < len(self.cmdStrings) else ""
+ self.lbRoWaterModeRequest.setText(f"{cmdString} ({value})")
Index: TreatmentLog/loader.py
===================================================================
diff -u -rdfb07b224d8af91a376cd0a39a6b2c5f83f6fba8 -r05edab0c07f66b4d8ed5358f1b329a8ac48cfb5d
--- TreatmentLog/loader.py (.../loader.py) (revision dfb07b224d8af91a376cd0a39a6b2c5f83f6fba8)
+++ TreatmentLog/loader.py (.../loader.py) (revision 05edab0c07f66b4d8ed5358f1b329a8ac48cfb5d)
@@ -57,7 +57,6 @@
self.eventOldValue.setValidator(floatValidator)
self.eventNewValue.setValidator(floatValidator)
-
self.avgReset = self.find_widget(QtWidgets.QToolButton , 'tbAvgReset' )
self.avgSend = self.find_widget(QtWidgets.QToolButton , 'tbAvgSend' )
self.dspBloodFLowRate = self.find_widget(QtWidgets.QDoubleSpinBox , 'dspBloodFLowRate' )
@@ -69,7 +68,6 @@
self.dspDialysateTemp = self.find_widget(QtWidgets.QDoubleSpinBox , 'dspDialysateTemp' )
-
def _init_connections(self):
"""
initializes the widgets connections