def model(self, model: FluorophoreSettings) -> None: # Disconnect old model event handling try: self._model.response_added.disconnect(self._onResponseAdded) self._model.response_removed.disconnect(self._onResponseRemoved) disconnectModelFromSignal(self.model, self._modifiedFlagSlotFunc) except AttributeError: pass # Set model self._hasHandledNewModelRowChange = self._selectedResponse is None self._model = model # Trigger model change event handlers self.widget.clearResponseList() for response in model.responses: self.widget.addResponseToList(response, select=False) self._uiResponseSelectionChange(None) # Prepare model events model.response_added.connect(self._onResponseAdded) model.response_removed.connect(self._onResponseRemoved) self._modifiedFlagSlotFunc = connectModelToSignal( self.model, self.widget.modifiedFlagSet)
def model(self, model: IlluminationResponse) -> None: # Disconnect old model event handling try: self._model.basic_field_changed.disconnect(self._onBasicFieldChange) disconnectModelFromSignal(self.model, self._modifiedFlagSlotFunc) except AttributeError: pass # Set model self._model = model # Trigger model change event handlers self._onBasicFieldChange(model) # Connect new model events model.basic_field_changed.connect(self._onBasicFieldChange) self._modifiedFlagSlotFunc = connectModelToSignal(self.model, self.widget.modifiedFlagSet)
def model(self, model: DetectorProperties) -> None: # Disconnect old model event handling try: self._model.basic_field_changed.disconnect( self._onBasicFieldChange) disconnectModelFromSignal(self.model, self._modifiedFlagSlotFunc) except AttributeError: pass # Set model self._model = model # Trigger model change event handlers self._onBasicFieldChange(model) # Prepare model events model.basic_field_changed.connect(self._onBasicFieldChange) self._modifiedFlagSlotFunc = connectModelToSignal( self.model, self.widget.modifiedFlagSet)
def model(self, model: ImagingSystemSettings) -> None: # Disconnect old model event handling try: self._model.basic_field_changed.disconnect( self._onBasicFieldChange) disconnectModelFromSignal(self.model, self._modifiedFlagSlotFunc) except AttributeError: pass # Set model self._model = model # Trigger model change event handlers self.widget.updateOpticalPsf(model.optical_psf) self.widget.updatePinholeFunction(model.pinhole_function) self._onBasicFieldChange(model) # Prepare model events model.basic_field_changed.connect(self._onBasicFieldChange) self._modifiedFlagSlotFunc = connectModelToSignal( self.model, self.widget.modifiedFlagSet)
def model(self, model: PulseScheme) -> None: # Disconnect old model event handling try: self._model.pulse_added.disconnect(self._onPulseAdded) self._model.pulse_moved.disconnect(self._onPulseMoved) self._model.pulse_removed.disconnect(self._onPulseRemoved) disconnectModelFromSignal(self.model, self._modifiedFlagSlotFunc) except AttributeError: pass # Set model self._model = model # Trigger model change event handlers self.widget.updatePlot(model) # Prepare model events model.pulse_added.connect(self._onPulseAdded) model.pulse_moved.connect(self._onPulseMoved) model.pulse_removed.connect(self._onPulseRemoved) self._modifiedFlagSlotFunc = connectModelToSignal( self.model, self.widget.modifiedFlagSet)