Index: MainTreatmentData/loader.py =================================================================== diff -u -r03501309d607343ba120663e0abce74faeb34f59 -r6abfeedac6306e951ed3259a92cd3966b488664a --- MainTreatmentData/loader.py (.../loader.py) (revision 03501309d607343ba120663e0abce74faeb34f59) +++ MainTreatmentData/loader.py (.../loader.py) (revision 6abfeedac6306e951ed3259a92cd3966b488664a) @@ -46,6 +46,7 @@ self.UF_tgt_rate = self.find_widget(QtWidgets.QSlider , 'UFRateSlider' ) self.UF_vol_del = self.find_widget(QtWidgets.QSlider , 'UFVolDelSlider' ) self.UF_State = self.find_widget(QtWidgets.QSpinBox , 'UFStatespinBox' ) + self.UF_Max = self.find_widget(QtWidgets.QDoubleSpinBox , 'UFMaxDoubleSpinBox' ) # Value only to configure UF slider self.tx_duration = self.find_widget(QtWidgets.QSlider , 'DurationSlider' ) self.tx_elapsed = self.find_widget(QtWidgets.QSlider , 'ElapsedSlider' ) @@ -54,11 +55,17 @@ self.dial_flow_st_pt = self.find_widget(QtWidgets.QSpinBox , 'DialFlowDpinBox' ) self.dial_temp_st_pt = self.find_widget(QtWidgets.QDoubleSpinBox , 'DialTempDoubleSpinBox' ) + self.uf_scaling = 100.00 # UF Scaling factor to be 2 decimal places + + self.UF_tgt_rate_label = self.find_widget(QtWidgets.QLabel , 'targetufLabel' ) + self.UF_vol_del_label = self.find_widget(QtWidgets.QLabel , 'ufvolumeDeliveredlabel' ) + def _init_connections(self): """ initializes the widgets connections :return: none """ + self.tbReset.clicked.connect(self._init_widgets) self.tbSend.clicked.connect(self.do_all_tx_data) @@ -71,6 +78,7 @@ self.UF_tgt_rate .valueChanged.connect(self.do_uf_data) self.UF_vol_del .valueChanged.connect(self.do_uf_data) self.UF_State .valueChanged.connect(self.do_uf_data) + self.UF_Max .valueChanged.connect(self.do_uf_max) self.tx_duration .valueChanged.connect(self.do_tx_time_data) self.tx_elapsed .valueChanged.connect(self.do_tx_time_data) @@ -100,6 +108,20 @@ self.tx_elapsed .setValue(0) @Slot() + def do_uf_max(self): + """ + initializes the widgets' properties + :return: none + """ + new_max_uf = self.UF_Max.value() * self.uf_scaling + if self.UF_vol_del.value() > new_max_uf: + self.UF_vol_del .setValue(new_max_uf) + self.UF_vol_del_label .setText(str(self.UF_vol_del.value() / self.uf_scaling)) + + self.UF_vol_del.setMaximum( self.UF_Max.value() * self.uf_scaling ) + + + @Slot() def do_saline_data(self): """ the slot for Saline Data @@ -123,11 +145,15 @@ the slot for UF Data :return: none """ - set_volume = self.UF_set_vol .value() - target_rate = self.UF_tgt_rate .value() - volume_delivered = self.UF_vol_del .value() - state = self.UF_State .value() + set_volume = self.UF_set_vol .value() + target_rate = self.UF_tgt_rate .value() + volume_delivered = self.UF_vol_del .value() + state = self.UF_State .value() + self.UF_tgt_rate_label.setText(str(self.UF_tgt_rate.value() / self.uf_scaling)) + self.UF_vol_del_label .setText(str(self.UF_vol_del .value() / self.uf_scaling)) + + self.td_interface.td_ultrafiltration( set_volume , target_rate ,