Index: simulator/plugins/HDOpMode/loader.py =================================================================== diff -u -rdb6abd41ec9e5a31e858ac8a286cb59520a93ff2 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/HDOpMode/loader.py (.../loader.py) (revision db6abd41ec9e5a31e858ac8a286cb59520a93ff2) +++ simulator/plugins/HDOpMode/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -9,7 +9,7 @@ # parent from simulator.dynamicloader import DynamicLoader # hd Simulator -from dialin.ui.hd_simulator import HDSimulator, TXStates +from dialin.ui.hd_simulator import HDSimulator # plugin specific from dialin.common.hd_defs import HDDefs @@ -23,7 +23,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/__poweroff/interface.ui =================================================================== diff -u --- simulator/plugins/__poweroff/interface.ui (revision 0) +++ simulator/plugins/__poweroff/interface.ui (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -0,0 +1,93 @@ + + + ui_interface + + + + 0 + 0 + 215 + 132 + + + + &In-Treatment/&Heparin + + + + + + + 10 + + + + background-color: rgb(191, 64, 108); +color: rgb(238, 238, 236); + + + PowerOff + + + Qt::AlignCenter + + + + + + + + + + 10 + + + + Show Dialog + + + + + + + + 10 + + + + Hide Dialog + + + + + + + + 10 + + + + Power Off Imminent + + + + + + + + + Qt::Vertical + + + + 20 + 40 + + + + + + + + + Index: simulator/plugins/__poweroff/loader.py =================================================================== diff -u --- simulator/plugins/__poweroff/loader.py (revision 0) +++ simulator/plugins/__poweroff/loader.py (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -0,0 +1,101 @@ +""" +The Heparin ui loader class +""" +# Python +import os +# Qt +from PySide2 import QtWidgets +from PySide2.QtCore import Slot +# parent +from simulator.dynamicloader import DynamicLoader +# hd Simulator +from dialin.ui.hd_simulator import HDSimulator, TXStates +# plugin specific +# -- None -- + + +class Loader(DynamicLoader): + """ + The Saline Bolus ui loader class + """ + + btnAccept: QtWidgets.QPushButton + btnReject: QtWidgets.QPushButton + lblAction: QtWidgets.QLabel + lblCumulative: QtWidgets.QLabel + spnRejectReason: QtWidgets.QSpinBox + sldCumulative: QtWidgets.QSlider + + requested_state: TXStates + + def __init__(self, hd_simulator: HDSimulator): + super().__init__(os.path.dirname(__file__), hd_simulator) + self.requested_state = TXStates.HEPARIN_STATE_PAUSED + + def _init_loader(self): + """ + finds and creates widgets + :return: none + """ + # saline adjustment + self.btnAccept = self.find_button('btnAccept') + self.btnReject = self.find_button('btnReject') + self.lblAction = self.find_label('lblAction') + self.lblCumulative = self.find_label('lblCumulative') + self.spnRejectReason = self.find_spinbox('spnRejectReason') + # saline data + self.sldCumulative = self.find_slider('sldCumulative') + + def _init_widgets(self): + """ + initializes the widgets' properties + :return: none + """ + pass + + def _init_connections(self): + """ + initializes the widgets connections + :return: + """ + # saline adjustment + self.btnAccept.clicked.connect(self.do_accept) + self.btnReject.clicked.connect(self.do_reject) + # saline data + self.sldCumulative.valueChanged.connect(self.do_data) + + @Slot() + def do_accept(self): + """ + the slot for accept button + :return: none + """ + # toggle the requested state + if self.requested_state == TXStates.HEPARIN_STATE_DISPENSING: + self.requested_state = TXStates.HEPARIN_STATE_PAUSED + else: + self.requested_state = TXStates.HEPARIN_STATE_DISPENSING + + self.hd_simulator.cmd_set_heparin_pause_resume_response(True, 0, self.requested_state) + self.lblAction.setText('Accepted ') + + @Slot() + def do_reject(self): + """ + the slot for accept saline bolus button + :return: none + """ + reason = self.spnRejectReason.value() + self.hd_simulator.cmd_set_heparin_pause_resume_response(False, reason, self.requested_state) + self.lblAction.setText('Rejected ' + "{}".format(reason)) + + @Slot() + def do_data(self, value): + """ + the slot which is called to send the data + by calling the denaliMessage API setTreatmentHeparinData + :return: none + """ + volume = value * 0.1 + self.hd_simulator.cmd_set_treatment_heparin_data(volume) + self.lblCumulative.setNum(volume) Fisheye: Tag ed2d7cb5c8c2059444fd17cd4e1c0975461a903c refers to a dead (removed) revision in file `simulator/plugins/__pretreatmentstates/interface.ui'. Fisheye: No comparison available. Pass `N' to diff? Fisheye: Tag ed2d7cb5c8c2059444fd17cd4e1c0975461a903c refers to a dead (removed) revision in file `simulator/plugins/__pretreatmentstates/loader.py'. Fisheye: No comparison available. Pass `N' to diff? Index: simulator/plugins/accelerometer/loader.py =================================================================== diff -u -r2f4457c7052353c3a0d45789cb17c870da5f307d -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/accelerometer/loader.py (.../loader.py) (revision 2f4457c7052353c3a0d45789cb17c870da5f307d) +++ simulator/plugins/accelerometer/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -42,7 +42,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/alarms/loader.py =================================================================== diff -u -r313132b681260cc0761c65d46200adb40b72f478 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/alarms/loader.py (.../loader.py) (revision 313132b681260cc0761c65d46200adb40b72f478) +++ simulator/plugins/alarms/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -76,7 +76,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) self.alarm = hd_simulator.alarm() - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/bloodPrime/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/bloodPrime/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/bloodPrime/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -25,7 +25,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/createtreatment/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/createtreatment/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/createtreatment/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -10,6 +10,7 @@ from simulator.dynamicloader import DynamicLoader # hd Simulator from dialin.ui.hd_simulator import HDSimulator +from dialin.ui.hd_simulator import RequestRejectReasons # plugin specific # -- None -- @@ -32,7 +33,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ @@ -74,7 +74,9 @@ the slot for accept button :return: none """ - self.hd_simulator.cmd_send_start_treatment_response(1, 0) + self.hd_simulator.cmd_send_treatment_parameter_manual_validation_response([ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ]) self.lblCreateAction.setText('Accepted ') @Slot() @@ -84,7 +86,9 @@ :return: none """ reason = self.spnCreateRejectReason.value() - self.hd_simulator.cmd_send_start_treatment_response(False, 0) + self.hd_simulator.cmd_send_treatment_parameter_manual_validation_response([ + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + ]) self.lblCreateAction.setText('Rejected ' + "{}".format(reason)) @Slot() Index: simulator/plugins/heparin/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/heparin/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/heparin/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -30,7 +30,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) self.requested_state = TXStates.HEPARIN_STATE_PAUSED def _init_loader(self): Index: simulator/plugins/inlinebloodpressures/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/inlinebloodpressures/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/inlinebloodpressures/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -40,7 +40,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) self.saline_requested_state = TXStates.SALINE_BOLUS_STATE_IDLE def _init_loader(self): Index: simulator/plugins/pretreatmentstates/interface.ui =================================================================== diff -u --- simulator/plugins/pretreatmentstates/interface.ui (revision 0) +++ simulator/plugins/pretreatmentstates/interface.ui (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -0,0 +1,1386 @@ + + + ui_interface + + + + 0 + 0 + 991 + 1161 + + + + &Pre-Treatment/Pre-Treatment &States + + + + + + + + + 0 + 0 + + + + + 10 + + + + color: rgb(238, 238, 236); +background-color: rgb(252, 175, 62); + + + Pre-Treatment States + + + Qt::AlignCenter + + + + + + + reset + + + + + + + + + true + + + + + 0 + 0 + 957 + 1339 + + + + + + + + 295 + 200 + + + + + 16777215 + 200 + + + + + 8 + 50 + false + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + true + + + false + + + 2 + + + true + + + 43 + + + 350 + + + true + + + 18 + + + 21 + + + false + + + + 00 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + Pre-Treatment States (subMode) [HD_Pre_Treatment_Mode_States] + + + + + Description + + + + + HD_PRE_TREATMENT_START_STATE + + + + + Start pre-treatment mode state + + + + + HD_PRE_TREATMENT_WATER_SAMPLE_STATE + + + + + Water sample state + + + + + HD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE + + + + + Self tests with no cartridge state + + + + + HD_PRE_TREATMENT_CART_INSTALL_STATE + + + + + Consumable and cartridge installation state + + + + + HD_PRE_TREATMENT_SELF_TEST_DRY_STATE + + + + + Self tests dry state + + + + + HD_PRE_TREATMENT_PRIME_STATE + + + + + Prime blood and dialysate circuits and run wet self-tests state + + + + + HD_PRE_TREATMENT_RECIRCULATE_STATE + + + + + Re-circulate blood and dialysate circuits state + + + + + HD_PRE_TREATMENT_PATIENT_CONNECTION_STATE + + + + + Patient connection state + + + + + + + + 2 + + + 1 + + + Qt::Horizontal + + + + + + + + 0 + 75 + + + + + 16777215 + 75 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + 1 + + + + + HD_Pre_Treatment_Sample_Water_States + + + + + Description + + + + + SAMPLE_WATER_SETUP_STATE + + + + + Sample water setup state of the sample water sub-mode state machine + + + + + SAMPLE_WATER_STATE + + + + + Sample water state of the sample water sub-mode state machine + + + + + + + + + 335 + 300 + + + + + 16777215 + 300 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + 8 + + + + + 9 + + + + + 10 + + + + + 11 + + + + + 12 + + + + + HD_Pre_Treatment_No_Cart_Self_Tests_States + + + + + Description + + + + + NO_CART_SELF_TESTS_START_STATE + + + + + No cartridge self-tests starting state. + + + + + NO_CART_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE + + + + + Wait for door to be closed before running self-tests. + + + + + NO_CART_SELF_TESTS_OCCLUSION_SENSORS_STATE + + + + + No cartridge occlusion sensors self-test state. + + + + + NO_CART_SELF_TESTS_BLOOD_FLOW_METERS_STATE + + + + + No cartridge blood flow meter self-test state. + + + + + NO_CART_SELF_TESTS_DIALYSATE_FLOW_METERS_STATE + + + + + No cartridge dialysate flow meter self-test state. + + + + + NO_CART_SELF_TESTS_PUMPS_STATE + + + + + No cartridge self-test for blood pump, dialysate in pump, dialysate out pump state. + + + + + NO_CART_SELF_TESTS_LEAK_DETECTORS_STATE + + + + + No cartridge leak detectors self-test state. + + + + + NO_CART_SELF_TESTS_BOARD_TEMPERATURE_STATE + + + + + No cartridge board temperature self-test state. + + + + + NO_CART_SELF_TESTS_DOOR_SWITCH_STATE + + + + + No cartridge door switch self-test state. + + + + + NO_CART_SELF_TESTS_HOME_VALVES_AND_PUMPS_STATE + + + + + No cartridge home valves and pumps self-test state. + + + + + NO_CART_SELF_TESTS_HOME_IDLE_STATE + + + + + Wait for valves and pumps finish homing state. + + + + + NO_CART_SELF_TESTS_STOPPED_STATE + + + + + No cart self-test stopped state. + + + + + NO_CART_SELF_TESTS_COMPLETE_STATE + + + + + No cartridge self-test complete state. + + + + + + + + + 0 + 50 + + + + + 16777215 + 50 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + Installation State + + + + + Description + + + + + Installation State + + + + + Only one state + + + + + + + + + 335 + 240 + + + + + 16777215 + 240 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + 8 + + + + + 9 + + + + + HD_Pre_Treatment_Dry_Self_Tests_States + + + + + Description + + + + + DRY_SELF_TESTS_START_STATE + + + + + Dry self-tests starting state. + + + + + DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE + + + + + Wait for door to close before executing self-tests. + + + + + DRY_SELF_TESTS_BUBBLE_DETECTOR_STATE + + + + + Bubble detectors dry self-test state. + + + + + DRY_SELF_TESTS_AIR_TRAP_STATE + + + + + Air trap fill level ultrasonic sensor dry self-test state. + + + + + DRY_SELF_TESTS_OCCLUSION_SENSORS_STATE + + + + + Occlusion sensors dry self-test state. + + + + + DRY_SELF_TESTS_PRESSURE_SENSORS_SETUP_STATE + + + + + Pressure sensors dry self-test setup valves and pump state. + + + + + DRY_SELF_TESTS_PRESSURE_SENSORS_STATE + + + + + Pressure sensors verify pressure readings state. + + + + + DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE + + + + + Preassure sensors verify normal pressure readings state. + + + + + DRY_SELF_TESTS_STOPPED_STATE + + + + + Dry self-test stopped state. + + + + + DRY_SELF_TESTS_COMPLETE_STATE + + + + + Dry self-test complete state. + + + + + + + + + 335 + 280 + + + + + 16777215 + 280 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + 1 + + + + + 2 + + + + + 3 + + + + + 4 + + + + + 5 + + + + + 6 + + + + + 7 + + + + + 8 + + + + + 9 + + + + + 10 + + + + + 11 + + + + + HD_Pre_Treatment_Prime_States + + + + + Description + + + + + HD_PRIME_START_STATE + + + + + Prime start state + + + + + HD_PRIME_WAIT_FOR_USER_START_STATE + + + + + Wait for user to start prime state + + + + + HD_PRIME_SALINE_SETUP_STATE + + + + + Saline setup state + + + + + HD_PRIME_SALINE_PURGE_AIR_STATE + + + + + Saline purge air state + + + + + HD_PRIME_SALINE_CIRC_BLOOD_CIRCUIT_STATE + + + + + Circulate blood circuit state + + + + + HD_PRIME_RESERVOIR_ONE_FILL_COMPLETE_STATE + + + + + Wait for reservoir 1 fill complete + + + + + HD_PRIME_DIALYSATE_DIALYZER_STATE + + + + + Dialysate dialyzer fluid path state + + + + + HD_PRIME_RESERVOIR_TWO_FILL_COMPLETE_STATE + + + + + Wait for reservoir 2 fill complete + + + + + HD_PRIME_DIALYSATE_BYPASS_STATE + + + + + Dialysate bypass fluid path state + + + + + HD_PRIME_WET_SELF_TESTS_STATE + + + + + Perform wet self-tests after priming complete + + + + + HD_PRIME_PAUSE + + + + + Prime pause state, waits to be resumed + + + + + HD_PRIME_COMPLETE + + + + + Prime complete state + + + + + + + + + 335 + 75 + + + + + 16777215 + 75 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + 1 + + + + + HD_Pre_Treatment_Recirc_States + + + + + Description + + + + + PRE_TREATMENT_RECIRC_STATE + + + + + Pre-treatment recirculate state. + + + + + PRE_TREATMENT_RECIRC_STOPPED_STATE + + + + + Pre-treatment recirculate stopped state. + + + + + + + + + 0 + 50 + + + + + 16777215 + 50 + + + + + 8 + + + + Qt::ScrollBarAlwaysOff + + + Qt::ScrollBarAlwaysOff + + + QAbstractItemView::NoEditTriggers + + + true + + + QAbstractItemView::SingleSelection + + + QAbstractItemView::SelectRows + + + false + + + 2 + + + true + + + 350 + + + true + + + 21 + + + + 00 + + + + + Patient Connection State + + + + + Description + + + + + Patient Connection + + + + + Only one state + + + + + + + + + + + + tblWaterSampleStates + tblNoCartridgeSelfTestStates + tblInstallationStates + tblDrySelfTestStates + tblPrimeStates + tblRecirculateStates + tblPatientConnectionStates + tbReset + tblSubMode + scrollArea + + + + Index: simulator/plugins/pretreatmentstates/loader.py =================================================================== diff -u --- simulator/plugins/pretreatmentstates/loader.py (revision 0) +++ simulator/plugins/pretreatmentstates/loader.py (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -0,0 +1,107 @@ +""" + The Ultrafiltration ui loader +""" +# Python +import os +# Qt +from PySide2 import QtWidgets +from PySide2.QtCore import Slot +# parent +from simulator.dynamicloader import DynamicLoader +# hd Simulator +from dialin.ui.hd_simulator import HDSimulator +# plugin specific +from dialin.common.hd_defs import * + + +class Loader(DynamicLoader): + """ + The Ultrafiltration ui loader + """ + tbReset: QtWidgets.QToolButton + + tblSubMode: QtWidgets.QTableWidget + tblWaterSampleStates: QtWidgets.QTableWidget + tblNoCartridgeSelfTestStates: QtWidgets.QTableWidget + tblInstallationStates: QtWidgets.QTableWidget + tblDrySelfTestStates: QtWidgets.QTableWidget + tblPrimeStates: QtWidgets.QTableWidget + tblRecirculateStates: QtWidgets.QTableWidget + tblPatientConnectionStates: QtWidgets.QTableWidget + + def __init__(self, hd_simulator: HDSimulator): + super().__init__(os.path.dirname(__file__), hd_simulator) + + def _init_loader(self): + """ + finds and creates widgets + :return: none + """ + self.tbReset = self.find_tool_button('tbReset') + + self.tblSubMode = self.find_table_widget('tblSubMode') + self.tblWaterSampleStates = self.find_table_widget('tblWaterSampleStates') + self.tblNoCartridgeSelfTestStates = self.find_table_widget('tblNoCartridgeSelfTestStates') + self.tblInstallationStates = self.find_table_widget('tblInstallationStates') + self.tblDrySelfTestStates = self.find_table_widget('tblDrySelfTestStates') + self.tblPrimeStates = self.find_table_widget('tblPrimeStates') + self.tblRecirculateStates = self.find_table_widget('tblRecirculateStates') + self.tblPatientConnectionStates = self.find_table_widget('tblPatientConnectionStates') + + self._init_widgets() + + def _init_connections(self): + """ + initializes the widgets connections + :return: none + """ + self.tbReset.clicked.connect(self._init_widgets) + + self.tblSubMode.cellClicked.connect(self.do_treatment_states) + self.tblWaterSampleStates.cellClicked.connect(self.do_treatment_states) + self.tblNoCartridgeSelfTestStates.cellClicked.connect(self.do_treatment_states) + self.tblInstallationStates.cellClicked.connect(self.do_treatment_states) + self.tblDrySelfTestStates.cellClicked.connect(self.do_treatment_states) + self.tblPrimeStates.cellClicked.connect(self.do_treatment_states) + self.tblRecirculateStates.cellClicked.connect(self.do_treatment_states) + self.tblPatientConnectionStates.cellClicked.connect(self.do_treatment_states) + + @Slot() + def _init_widgets(self): + """ + initializes the widgets' properties + :return: none + """ + self.tblSubMode.setCurrentCell(HD_Pre_Treatment_Mode_States.HD_PRE_TREATMENT_START_STATE.value, 0) + self.tblWaterSampleStates.setCurrentCell(HD_Pre_Treatment_Sample_Water_States.SAMPLE_WATER_SETUP_STATE.value, 0) + self.tblNoCartridgeSelfTestStates.setCurrentCell(HD_Pre_Treatment_No_Cart_Self_Tests_States.NO_CART_SELF_TESTS_START_STATE.value, 0) + self.tblInstallationStates.setCurrentCell(HD_Pre_Treatment_Cartridge_Install_States.CARTRIDGE_INSTALL_STATE.value, 0) + self.tblDrySelfTestStates.setCurrentCell(HD_Pre_Treatment_Dry_Self_Tests_States.DRY_SELF_TESTS_START_STATE.value, 0) + self.tblPrimeStates.setCurrentCell(HD_Pre_Treatment_Prime_States.HD_PRIME_START_STATE.value, 0) + self.tblRecirculateStates.setCurrentCell(HD_Pre_Treatment_Recirc_States.PRE_TREATMENT_RECIRC_STATE.value, 0) + self.tblPatientConnectionStates.setCurrentCell(HD_Pre_Treatment_Patient_Connection_States.PATIENT_CONNECTION_STATE.value, 0) + + @Slot() + def do_treatment_states(self): + """ + the slot for saline bolus state change + :return: none + """ + sub_mode = int(self.tblSubMode.verticalHeaderItem(self.tblSubMode.currentRow()).text()) + water_sample = int(self.tblWaterSampleStates.verticalHeaderItem(self.tblWaterSampleStates.currentRow()).text()) + no_cartridge_self_test = int(self.tblNoCartridgeSelfTestStates.verticalHeaderItem(self.tblNoCartridgeSelfTestStates.currentRow()).text()) + installation = int(self.tblInstallationStates.verticalHeaderItem(self.tblInstallationStates.currentRow()).text()) + dry_self_test = int(self.tblDrySelfTestStates.verticalHeaderItem(self.tblDrySelfTestStates.currentRow()).text()) + prime = int(self.tblPrimeStates.verticalHeaderItem(self.tblPrimeStates.currentRow()).text()) + recirculate = int(self.tblRecirculateStates.verticalHeaderItem(self.tblRecirculateStates.currentRow()).text()) + patient_connection = int(self.tblPatientConnectionStates.verticalHeaderItem(self.tblPatientConnectionStates.currentRow()).text()) + self.hd_simulator.cmd_send_pre_treatment_state_data( + sub_mode, + water_sample, + no_cartridge_self_test, + installation, + dry_self_test, + prime, + recirculate, + patient_connection + ) Index: simulator/plugins/recirculate/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/recirculate/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/recirculate/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -30,7 +30,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) self.requested_state = TXStates.RINSEBACK_STOP_INIT_STATE def _init_loader(self): Index: simulator/plugins/rinseback/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/rinseback/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/rinseback/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -33,7 +33,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) self.requested_state = TXStates.RINSEBACK_STOP_INIT_STATE def _init_loader(self): Index: simulator/plugins/salinebolus/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/salinebolus/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/salinebolus/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -32,7 +32,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) self.saline_requested_state = TXStates.SALINE_BOLUS_STATE_IDLE def _init_loader(self): Index: simulator/plugins/treatmentend/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/treatmentend/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/treatmentend/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -26,7 +26,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/treatmentranges/loader.py =================================================================== diff -u -rdb6abd41ec9e5a31e858ac8a286cb59520a93ff2 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/treatmentranges/loader.py (.../loader.py) (revision db6abd41ec9e5a31e858ac8a286cb59520a93ff2) +++ simulator/plugins/treatmentranges/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -32,7 +32,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/treatmentstates/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/treatmentstates/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/treatmentstates/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -32,7 +32,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/ultrafiltration/loader.py =================================================================== diff -u -rf4523ffcaff0d27f7392c943f0a487fcb01a7d34 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/ultrafiltration/loader.py (.../loader.py) (revision f4523ffcaff0d27f7392c943f0a487fcb01a7d34) +++ simulator/plugins/ultrafiltration/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -38,7 +38,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: simulator/plugins/version/loader.py =================================================================== diff -u -rb84c3a9b1d50790944ee40a68d2013ace7302f82 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- simulator/plugins/version/loader.py (.../loader.py) (revision b84c3a9b1d50790944ee40a68d2013ace7302f82) +++ simulator/plugins/version/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -39,7 +39,6 @@ def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) - print(" ---------- ", self.hd_simulator) def _init_loader(self): """ Index: tst_ServiceShutdown/test.py =================================================================== diff -u -r2cebcfa1c6995bc48c71bcf7367e2695a8d1cb24 -red2d7cb5c8c2059444fd17cd4e1c0975461a903c --- tst_ServiceShutdown/test.py (.../test.py) (revision 2cebcfa1c6995bc48c71bcf7367e2695a8d1cb24) +++ tst_ServiceShutdown/test.py (.../test.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) @@ -13,8 +13,10 @@ # import names -from dialin.squish import utils, denaliMessages +from dialin.ui.hd_simulator import HDSimulator +from dialin.ui import utils +hd_simulator = HDSimulator() ################################################################################ # This test need to be changed when the Service screen has been implemented # @@ -38,16 +40,16 @@ test.compare(waitForObjectExists(names.o_treatmentHome).visible, True, utils.SRSUI(vSRSUI)) def showNtest_PowerOffDialog(vSRSUI=""): - denaliMessages.show_PowerOffDialog() + hd_simulator.cmd_show_poweroff_dialog() test_PowerOffDialog(vSRSUI) def hideNtest_PowerOffDialog(vSRSUI=""): - denaliMessages.hide_PowerOffDialog() + hd_simulator.cmd_hide_poweroff_dialog() test_PowerOffButton(vSRSUI) def showNtest_PowerOffNotificationDialog(vSRSUI=""): mSRSUI = utils.SRSUI(vSRSUI) - denaliMessages.show_PowerOffNotificationDialog() + hd_simulator.cmd_show_poweroff_notification_dialog() test.compare(str(waitForObjectExists(names.o_poweroff_notification).baseUrl.path), "/dialogs/AutoHideInfo.qml", mSRSUI + " - Dialog") constantPartOfTheMessage = "System is shutting down" test.compare(str(waitForObjectExists(names.o_poweroff_notification).text)[0:len(constantPartOfTheMessage)], constantPartOfTheMessage, mSRSUI + " - Message Text") @@ -56,7 +58,7 @@ def showNtest_PowerOffRejectionDialog(vSRSUI=""): mSRSUI = utils.SRSUI(vSRSUI) - denaliMessages.show_PowerOffRejectionDialog() + hd_simulator.cmd_show_poweroff_rejection_dialog() test.compare(str(waitForObjectExists(names.o_poweroff_rejection).baseUrl.path), "/dialogs/AutoHideInfo.qml", mSRSUI + " - Dialog") constantPartOfTheMessage = "Cannot shutdown during " # there might be the reason, concatenated at the end of the string. test.compare(str(waitForObjectExists(names.o_poweroff_rejection).text)[0:len(constantPartOfTheMessage)], constantPartOfTheMessage, mSRSUI + " - Message Text")