diff --git a/gui/src/aaregui/main_window.py b/gui/src/aaregui/main_window.py index 180d4491..3a41dce7 100644 --- a/gui/src/aaregui/main_window.py +++ b/gui/src/aaregui/main_window.py @@ -150,7 +150,6 @@ class MainWindow(QMainWindow): # ) # - self.camera_image.run_raster.connect(self.daq.raster_scan) self.data_collection.standard_data_collection.connect(self.daq.standard_scan) self.data_collection.helical.show_helical_start.connect(self.camera_image.show_helical_start) @@ -160,6 +159,13 @@ class MainWindow(QMainWindow): self.camera_image.set_helical_start.connect(self.data_collection.helical.set_start_point) self.camera_image.set_helical_end.connect(self.data_collection.helical.set_end_point) + + self.camera_image.evaluate_grid.connect(self.raster.run_grid_scan) + self.data_collection.evaluate_grid.connect(self.raster.run_grid_scan) + + self.camera_image.clear_grid.connect(self.raster.clear_active_grid) + self.daq.run_number_incremented.connect(self.data_collection.file_path_panel.increment_run_number) + self.job_list_panel.auto_scan.connect(self.daq.automated_scan) self.daq.automated_scan_done.connect(self.job_list_panel.automated_scan_done) self.job_list_panel.unmount.connect(self.daq.unmount) diff --git a/gui/src/aaregui/panels/data_collection_settings.py b/gui/src/aaregui/panels/data_collection_settings.py index 8631f284..b0b4500e 100644 --- a/gui/src/aaregui/panels/data_collection_settings.py +++ b/gui/src/aaregui/panels/data_collection_settings.py @@ -21,6 +21,7 @@ from aaregui.widgets.title_label import TitleLabel class DataCollectionSettings(QFrame): standard_data_collection = Signal(RotationScanRequest) + evaluate_grid = Signal() def __init__(self, s: SampleGeometryModel, raster_mgr: RasterGridManager, parent=None): @@ -70,8 +71,7 @@ class DataCollectionSettings(QFrame): current_tab = self.tab_widget.currentWidget() if current_tab == self.raster: - print("Raster tab is active.") - # Add specific action for Raster tab here + self.evaluate_grid.emit() elif current_tab == self.screening: data = self.screening.screening_type.itemData( self.screening.screening_type.currentIndex() diff --git a/gui/src/aaregui/scan_logic/raster_grid_manager.py b/gui/src/aaregui/scan_logic/raster_grid_manager.py index 34e8085d..505b7173 100644 --- a/gui/src/aaregui/scan_logic/raster_grid_manager.py +++ b/gui/src/aaregui/scan_logic/raster_grid_manager.py @@ -143,11 +143,13 @@ class RasterGridManager(QObject): chi_deg=self.__geom.smargon.chi_deg, ) + @Slot() def clear_active_grid(self): self.__active_grid.n_x = 0 self.__active_grid.n_y = 0 self.grid_scan_size_changed.emit(self.__active_grid.n_x, self.__active_grid.n_y) + @Slot() def clear_completed_grids(self): self.__completed_grids.clear() diff --git a/gui/src/aaregui/threads/daq_worker.py b/gui/src/aaregui/threads/daq_worker.py index 492d5ea5..1529e6ee 100644 --- a/gui/src/aaregui/threads/daq_worker.py +++ b/gui/src/aaregui/threads/daq_worker.py @@ -16,6 +16,7 @@ class DAQWorker(QObject): http_error = Signal(str) auth_error = Signal() automated_scan_done = Signal(int, bool) # sample ID, success + run_number_incremented = Signal() def __init__(self, base_url: str | None, token: str, parent=None): super().__init__(parent) @@ -186,6 +187,7 @@ class DAQWorker(QObject): @Slot(RasterGridRequest) def raster_scan(self, r: RasterGridRequest): + self.run_number_incremented.emit() self.generic_post("scan/raster", r.model_dump_json()) @Slot() diff --git a/gui/src/aaregui/widgets/camera_image.py b/gui/src/aaregui/widgets/camera_image.py index 4d2e1bdf..b05e992a 100644 --- a/gui/src/aaregui/widgets/camera_image.py +++ b/gui/src/aaregui/widgets/camera_image.py @@ -38,7 +38,10 @@ class SampleCameraImageState(Enum): class SampleCameraImageLabel(QGraphicsView): smargon = Signal(SmargonCoordinate) - run_raster = Signal(RasterGridRequest) + + evaluate_grid = Signal() + clear_grid = Signal() + zoom_change = Signal(int) set_omega = Signal(float) set_helical_start = Signal(SmargonCoordinate) @@ -108,7 +111,6 @@ class SampleCameraImageLabel(QGraphicsView): def mousePressEvent(self, event): self.start_point = self.mapToScene(event.pos()) - print(self.__state) match self.__state: case SampleCameraImageState.BEAM_MARKING: @@ -207,9 +209,9 @@ class SampleCameraImageLabel(QGraphicsView): self.__autoscale = not self.__autoscale self.__scaling() elif action == delete_action: - self.__raster_mgr.clear_active_grid() + self.clear_grid.emit() elif action == evaluate_action: - self.__raster_mgr.run_grid_scan() + self.evaluate_grid.emit() elif action == grab_action: self.__screenshot_with_dialog(overlay=False) elif action == grab_with_overlay_action: