Index: simulator/plugins/GeneralResponseMessage/interface.ui =================================================================== diff -u -r26b852b6e979e73cf806699b050401065b5f8fb2 -r7f0678d0f61fa99a35a1f34fac6c36e12ba93f20 --- simulator/plugins/GeneralResponseMessage/interface.ui (.../interface.ui) (revision 26b852b6e979e73cf806699b050401065b5f8fb2) +++ simulator/plugins/GeneralResponseMessage/interface.ui (.../interface.ui) (revision 7f0678d0f61fa99a35a1f34fac6c36e12ba93f20) @@ -6,14 +6,14 @@ 0 0 - 299 - 178 + 1234 + 312 &9 General/&2 Response Message - + @@ -186,6 +186,226 @@ + + + 2 + + + 0 + + + + + P0 + + + + + + + P1 + + + + + + + P2 + + + + + + + P3 + + + + + + + P4 + + + + + + + P5 + + + + + + + P6 + + + + + + + P7 + + + + + + + P8 + + + + + + + P9 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + 2147483647 + + + + + + + F0 + + + + + + + F1 + + + + + + + F2 + + + + + + + F3 + + + + + + + F4 + + + + + + + F5 + + + + + + + F6 + + + + + + + F7 + + + + + + + F8 + + + + + + + F9 + + + + + + Qt::Vertical @@ -201,10 +421,178 @@ + rbHD + rbDG + leMessageID btnAccept btnReject spnReason + chkP0 + spnP0 + chkP1 + spnP1 + chkP2 + spnP2 + chkP3 + spnP3 + chkP4 + spnP4 + chkP5 + spnP5 + chkP6 + spnP6 + chkP7 + spnP7 + chkP8 + spnP8 + chkP9 + spnP9 - + + + chkP9 + toggled(bool) + chkP8 + setChecked(bool) + + + 633 + 183 + + + 570 + 183 + + + + + chkP8 + toggled(bool) + chkP7 + setChecked(bool) + + + 570 + 174 + + + 507 + 175 + + + + + chkP7 + toggled(bool) + chkP6 + setChecked(bool) + + + 507 + 189 + + + 444 + 188 + + + + + chkP6 + toggled(bool) + chkP5 + setChecked(bool) + + + 444 + 176 + + + 381 + 178 + + + + + chkP5 + toggled(bool) + chkP4 + setChecked(bool) + + + 381 + 190 + + + 318 + 189 + + + + + chkP4 + toggled(bool) + chkP3 + setChecked(bool) + + + 318 + 177 + + + 255 + 176 + + + + + chkP3 + toggled(bool) + chkP2 + setChecked(bool) + + + 255 + 190 + + + 192 + 191 + + + + + chkP2 + toggled(bool) + chkP1 + setChecked(bool) + + + 192 + 172 + + + 129 + 175 + + + + + chkP1 + toggled(bool) + chkP0 + setChecked(bool) + + + 115 + 190 + + + 48 + 188 + + + + Index: simulator/plugins/GeneralResponseMessage/loader.py =================================================================== diff -u -r26b852b6e979e73cf806699b050401065b5f8fb2 -r7f0678d0f61fa99a35a1f34fac6c36e12ba93f20 --- simulator/plugins/GeneralResponseMessage/loader.py (.../loader.py) (revision 26b852b6e979e73cf806699b050401065b5f8fb2) +++ simulator/plugins/GeneralResponseMessage/loader.py (.../loader.py) (revision 7f0678d0f61fa99a35a1f34fac6c36e12ba93f20) @@ -11,7 +11,8 @@ from simulator.dynamicloader import DynamicLoader # hd Simulator from dialin.ui.hd_simulator import HDSimulator -from dialin.ui.hd_simulator import RequestRejectReasons +from dialin.utils.conversions import integer_to_bytearray, float_to_bytearray + # plugin specific # -- None -- @@ -27,6 +28,36 @@ btnReject: QtWidgets.QPushButton lblAction: QtWidgets.QLabel spnReason: QtWidgets.QSpinBox + spnP0: QtWidgets.QSpinBox + spnP1: QtWidgets.QSpinBox + spnP2: QtWidgets.QSpinBox + spnP3: QtWidgets.QSpinBox + spnP4: QtWidgets.QSpinBox + spnP5: QtWidgets.QSpinBox + spnP6: QtWidgets.QSpinBox + spnP7: QtWidgets.QSpinBox + spnP8: QtWidgets.QSpinBox + spnP9: QtWidgets.QSpinBox + chkP0: QtWidgets.QCheckBox + chkP1: QtWidgets.QCheckBox + chkP2: QtWidgets.QCheckBox + chkP3: QtWidgets.QCheckBox + chkP4: QtWidgets.QCheckBox + chkP5: QtWidgets.QCheckBox + chkP6: QtWidgets.QCheckBox + chkP7: QtWidgets.QCheckBox + chkP8: QtWidgets.QCheckBox + chkP9: QtWidgets.QCheckBox + chkF0: QtWidgets.QCheckBox + chkF1: QtWidgets.QCheckBox + chkF2: QtWidgets.QCheckBox + chkF3: QtWidgets.QCheckBox + chkF4: QtWidgets.QCheckBox + chkF5: QtWidgets.QCheckBox + chkF6: QtWidgets.QCheckBox + chkF7: QtWidgets.QCheckBox + chkF8: QtWidgets.QCheckBox + chkF9: QtWidgets.QCheckBox def __init__(self, hd_simulator: HDSimulator): super().__init__(os.path.dirname(__file__), hd_simulator) @@ -43,6 +74,36 @@ self.btnReject = self.find_button('btnReject') self.lblAction = self.find_label('lblAction') self.spnReason = self.find_spinbox('spnReason') + self.spnP0 = self.find_spinbox('spnP0') + self.spnP1 = self.find_spinbox('spnP1') + self.spnP2 = self.find_spinbox('spnP2') + self.spnP3 = self.find_spinbox('spnP3') + self.spnP4 = self.find_spinbox('spnP4') + self.spnP5 = self.find_spinbox('spnP5') + self.spnP6 = self.find_spinbox('spnP6') + self.spnP7 = self.find_spinbox('spnP7') + self.spnP8 = self.find_spinbox('spnP8') + self.spnP9 = self.find_spinbox('spnP9') + self.chkP0 = self.find_checkbox('chkP0') + self.chkP1 = self.find_checkbox('chkP1') + self.chkP2 = self.find_checkbox('chkP2') + self.chkP3 = self.find_checkbox('chkP3') + self.chkP4 = self.find_checkbox('chkP4') + self.chkP5 = self.find_checkbox('chkP5') + self.chkP6 = self.find_checkbox('chkP6') + self.chkP7 = self.find_checkbox('chkP7') + self.chkP8 = self.find_checkbox('chkP8') + self.chkP9 = self.find_checkbox('chkP9') + self.chkF0 = self.find_checkbox('chkF0') + self.chkF1 = self.find_checkbox('chkF1') + self.chkF2 = self.find_checkbox('chkF2') + self.chkF3 = self.find_checkbox('chkF3') + self.chkF4 = self.find_checkbox('chkF4') + self.chkF5 = self.find_checkbox('chkF5') + self.chkF6 = self.find_checkbox('chkF6') + self.chkF7 = self.find_checkbox('chkF7') + self.chkF8 = self.find_checkbox('chkF8') + self.chkF9 = self.find_checkbox('chkF9') def _init_widgets(self): """ @@ -59,14 +120,80 @@ self.btnAccept.clicked.connect(self.do_accept) self.btnReject.clicked.connect(self.do_reject) + def _make_parameters_payload(self): + self.parameters_payload_len = 0 + self.parameters_payload = 0x00 + if self.chkP0.isChecked(): + if self.chkF0.isChecked(): + self.parameters_payload = float_to_bytearray(self.spnP0.value()) + else: + self.parameters_payload = integer_to_bytearray(self.spnP0.value()) + self.parameters_payload_len = 1 + if self.chkP1.isChecked(): + if self.chkF1.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP1.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP1.value()) + self.parameters_payload_len = 2 + if self.chkP2.isChecked(): + if self.chkF2.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP2.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP2.value()) + self.parameters_payload_len = 3 + if self.chkP3.isChecked(): + if self.chkF3.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP3.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP3.value()) + self.parameters_payload_len = 4 + if self.chkP4.isChecked(): + if self.chkF4.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP4.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP4.value()) + self.parameters_payload_len = 5 + if self.chkP5.isChecked(): + if self.chkF5.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP5.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP5.value()) + self.parameters_payload_len = 6 + if self.chkP6.isChecked(): + if self.chkF6.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP6.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP6.value()) + self.parameters_payload_len = 7 + if self.chkP7.isChecked(): + if self.chkF7.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP7.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP7.value()) + self.parameters_payload_len = 8 + if self.chkP8.isChecked(): + if self.chkF8.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP8.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP8.value()) + self.parameters_payload_len = 9 + if self.chkP9.isChecked(): + if self.chkF9.isChecked(): + self.parameters_payload += float_to_bytearray(self.spnP9.value()) + else: + self.parameters_payload += integer_to_bytearray(self.spnP9.value()) + self.parameters_payload_len = 10 + @Slot() def do_accept(self): """ the slot for accept button :return: none """ message_id = self.leMessageID.text() - self.hd_simulator.cmd_send_general_response(int(message_id), True, 0, self.rbHD.isChecked()) + self._make_parameters_payload() + self.hd_simulator.cmd_send_general_response(int(message_id), True, 0, self.rbHD.isChecked(), + self.parameters_payload_len > 0, self.parameters_payload) self.lblAction.setText('Accepted ') @Slot() @@ -77,5 +204,7 @@ """ message_id = self.leMessageID.text() reason = self.spnReason.value() - self.hd_simulator.cmd_send_general_response(int(message_id), False, reason, self.rbHD.isChecked()) + self._make_parameters_payload() + self.hd_simulator.cmd_send_general_response(int(message_id), False, reason, self.rbHD.isChecked(), + self.parameters_payload_len > 0, self.parameters_payload) self.lblAction.setText('Rejected ' + "{}".format(reason)) Index: simulator/plugins/rinseback/interface.ui =================================================================== diff -u -reb6acf9c1a4748852875c350568192999be9d3dd -r7f0678d0f61fa99a35a1f34fac6c36e12ba93f20 --- simulator/plugins/rinseback/interface.ui (.../interface.ui) (revision eb6acf9c1a4748852875c350568192999be9d3dd) +++ simulator/plugins/rinseback/interface.ui (.../interface.ui) (revision 7f0678d0f61fa99a35a1f34fac6c36e12ba93f20) @@ -280,7 +280,7 @@ background-color: rgb(174, 64, 194); - Rinseback Data + Rinseback Additional Qt::AlignCenter Index: simulator/plugins/treatmentranges/interface.ui =================================================================== diff -u -reb6acf9c1a4748852875c350568192999be9d3dd -r7f0678d0f61fa99a35a1f34fac6c36e12ba93f20 --- simulator/plugins/treatmentranges/interface.ui (.../interface.ui) (revision eb6acf9c1a4748852875c350568192999be9d3dd) +++ simulator/plugins/treatmentranges/interface.ui (.../interface.ui) (revision 7f0678d0f61fa99a35a1f34fac6c36e12ba93f20) @@ -26,7 +26,7 @@ Turn Treatment ranges broadcast message Automatic send Off/On - Broad cast + Broadcast Index: simulator/plugins/treatmentranges/loader.py =================================================================== diff -u -red2d7cb5c8c2059444fd17cd4e1c0975461a903c -r7f0678d0f61fa99a35a1f34fac6c36e12ba93f20 --- simulator/plugins/treatmentranges/loader.py (.../loader.py) (revision ed2d7cb5c8c2059444fd17cd4e1c0975461a903c) +++ simulator/plugins/treatmentranges/loader.py (.../loader.py) (revision 7f0678d0f61fa99a35a1f34fac6c36e12ba93f20) @@ -53,7 +53,8 @@ :return: none """ self.timer.timeout.connect(self.do_ranges_data) - # self.timer.timeout.connect(self.do_duration_data) + + self.timer.timeout.connect(self.do_duration_data) self.sldDurationValue.valueChanged.connect(self.do_duration_data) def _init_widgets(self): @@ -70,10 +71,11 @@ sends the duration message :return: none """ - value = self.sldDurationValue.value() - self.hd_simulator.cmd_set_treatment_time( - self.spnDurationMax.value() * 60, value - ) + if self.chkRangesBroadcast.isChecked(): + value = self.sldDurationValue.value() + self.hd_simulator.cmd_set_treatment_time( + self.spnDurationMax.value() * 60, value + ) @Slot() def do_ranges_data(self):