@@ -153,7 +153,6 @@ def initialize(self):
153
153
self .update_camera_device_related_setting ()
154
154
155
155
# Camera Mode
156
- self .mode_widgets ["Sensor" ].widget ["values" ] = ["Normal" , "Light-Sheet" ]
157
156
self .mode_widgets ["Sensor" ].widget ["state" ] = "readonly"
158
157
self .mode_widgets ["Sensor" ].widget .selection_clear ()
159
158
@@ -219,8 +218,7 @@ def populate_experiment_values(self):
219
218
][microscope_name ]
220
219
221
220
# Readout Settings
222
- self .mode_widgets ["Sensor" ].set (self .camera_setting_dict ["sensor_mode" ])
223
- self .update_sensor_mode ()
221
+ self .update_sensor_mode (self .camera_setting_dict ["sensor_mode" ])
224
222
225
223
# ROI Settings
226
224
if self .camera_setting_dict .get ("is_centered" , True ):
@@ -337,6 +335,11 @@ def update_experiment_values(self, *args):
337
335
]
338
336
img_width = x_pixels // binning [0 ]
339
337
img_height = y_pixels // binning [1 ]
338
+ img_width = img_width - img_width % self .step_width
339
+ img_height = img_height - img_height % self .step_height
340
+
341
+ x_pixels = img_width * binning [0 ]
342
+ y_pixels = img_height * binning [1 ]
340
343
341
344
self .camera_setting_dict ["x_pixels" ] = x_pixels
342
345
self .camera_setting_dict ["y_pixels" ] = y_pixels
@@ -372,6 +375,8 @@ def update_sensor_mode(self, *args):
372
375
# Camera Mode
373
376
if len (args ) > 0 and type (args [0 ]) is str :
374
377
sensor_value = args [0 ]
378
+ if sensor_value not in self .mode_widgets ["Sensor" ].widget ["values" ]:
379
+ sensor_value = self .mode_widgets ["Sensor" ].widget ["values" ][0 ]
375
380
self .mode_widgets ["Sensor" ].widget .set (sensor_value )
376
381
else :
377
382
sensor_value = self .mode_widgets ["Sensor" ].widget .get ()
@@ -706,6 +711,10 @@ def update_camera_device_related_setting(self):
706
711
"CameraParameters"
707
712
][microscope_name ]
708
713
714
+ self .mode_widgets ["Sensor" ].widget ["values" ] = camera_config_dict .get ("supported_sensor_modes" , ["Normal" ])
715
+ if self .mode_widgets ["Sensor" ].get () not in self .mode_widgets ["Sensor" ].widget ["values" ]:
716
+ self .update_sensor_mode (self .mode_widgets ["Sensor" ].widget ["values" ][0 ])
717
+
709
718
def update_camera_parameters_silent (self , value ):
710
719
"""Update GUI camera parameters
711
720
0 commit comments