mantidimaging.gui.windows.main.view module#
- class mantidimaging.gui.windows.main.view.MainWindowView(open_dialogs: bool = True)[source]#
Bases:
BaseMainWindowView- LOAD_PROJECTION_ANGLES_DIALOG_MESSAGE = 'Which stack are the projection angles in DEGREES being loaded for?'#
- LOAD_PROJECTION_ANGLES_FILE_DIALOG_CAPTION = 'File with projection angles in DEGREES'#
- NOT_THE_LATEST_VERSION = 'This is not the latest version'#
- actionCompareImages: QAction#
- actionExit: QAction#
- actionExportGIF: QAction#
- actionFilters: QAction#
- actionGeometry: QAction#
- actionLiveViewer: QAction#
- actionLoadDataset: QAction#
- actionLoadImages: QAction#
- actionLoadNeXusFile: QAction#
- actionLoadProjectionAngles: QAction#
- actionRecon: QAction#
- actionSampleLoadLog: QAction#
- actionSaveImages: QAction#
- actionSaveNeXusFile: QAction#
- actionSettings: QAction#
- actionShutterCounts: QAction#
- actionSpectrumViewer: QAction#
- actionViewer3d: QAction#
- add_item_to_dataset_tree_widget(title: str, id: UUID, parent_item: QTreeDatasetWidgetItem) QTreeDatasetWidgetItem[source]#
- static add_recon_group(dataset_item: QTreeDatasetWidgetItem, recon_id: UUID) QTreeDatasetWidgetItem[source]#
Adds a recon group to a dataset item in the tree view. :param dataset_item: The dataset item. :return: The recon group that was added.
- add_recon_to_dataset(recon_data: ImageStack, stack_id: UUID) None[source]#
- add_to_dataset_dialog: AddImagesToDatasetDialog | None = None#
- add_toplevel_item_to_dataset_tree_widget(title: str, id: UUID) QTreeDatasetWidgetItem[source]#
- ask_to_use_closest_to_180(diff_rad: float) bool[source]#
Asks the user if they want to use the projection that is closest to 180 degrees as the 180deg. :param diff_rad: The difference from the closest projection to 180 in radians. :return: True if the answer wants to use the closest projection, False otherwise.
- backend_message#
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- create_new_stack(images: ImageStack) None[source]#
- create_stack_window(stack: ImageStack, position: DockWidgetArea = 2, floating: bool = False) StackVisualiserView[source]#
- current_showing_stack() StackVisualiserView | None[source]#
- execute_move_stack(origin_dataset_id: UUID, stack_id: UUID, destination_stack_type: str, destination_dataset_id: UUID) None[source]#
- export_gif_from_active_stack() None[source]#
Export the currently displayed stack as an animated GIF. Displays warning if no stack is currently visible.
- filters: FiltersWindowView | None = None#
- geometry: GeometryWindowView | None = None#
- get_all_180_projections() list[ImageStack][source]#
- get_all_stacks() list[ImageStack][source]#
- get_dataset_tree_view_item(dataset_id: UUID) QTreeDatasetWidgetItem[source]#
Looks for the dataset tree view item matching a given ID. :param dataset_id: The dataset ID. :return: The tree view item if found.
- get_gif_output_path(image_stack: ImageStack) str[source]#
Show file save dialog to get GIF output path from user
- Parameters:
image_stack – The image stack to create the GIF from (used for default filename/directory)
- Returns:
The selected output file path, or empty string if user cancelled
- static get_recon_group(dataset_item: QTreeDatasetWidgetItem) QTreeDatasetWidgetItem | None[source]#
Looks for an existing recon group in a dataset tree view item. :param dataset_item: The dataset item to look for the recon group in. :return: The recon group if found.
- static get_sinograms_item(parent: QTreeDatasetWidgetItem) QTreeDatasetWidgetItem | None[source]#
Tries to look for a sinograms entry in a dataset tree view item. :return: The sinograms entry if found, None otherwise.
- get_stack(stack_uuid: UUID) ImageStack | None[source]#
- get_stack_visualiser(stack_uuid) StackVisualiserView[source]#
- get_stack_with_images(images: ImageStack) StackVisualiserView[source]#
- image_load_dialog: ImageLoadDialog | None = None#
- image_save_dialog: ImageSaveDialog | None = None#
- live_viewer_list: list[LiveViewerWindowView] = []#
- model_changed#
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- move_stack_dialog: MoveStackDialog | None = None#
- static new_dataset_tree_widget_item(title: str, id: UUID, parent_item: QTreeDatasetWidgetItem | QTreeWidget) QTreeDatasetWidgetItem[source]#
- nexus_load_dialog: NexusLoadDialog | None = None#
- nexus_save_dialog: NexusSaveDialog | None = None#
- recon: ReconstructWindowView | None = None#
- refresh_welcome_links()[source]#
Called when the theme changes, so we can rebuild or re-color the welcome screen’s links if it’s still visible.
- reset_layout()[source]#
Close and reopen all stacks, showing critical GUI errors for unsuccessful actions.
- settings_window: SettingsWindowView | None = None#
- show_add_stack_to_existing_dataset_dialog(dataset_id: UUID) None[source]#
Displays the dialog for adding an image stack to an existing dataset. :param dataset_id: The ID of the dataset to update.
- show_gif_parameters_dialog(image_stack: ImageStack, optimal_skip: int) tuple[int, float, bool][source]#
Show GIF parameters dialog and return user selections
- Parameters:
image_stack – The image stack to create the GIF from
optimal_skip – The optimal frame skip step value calculated for the image stack
- Returns:
A tuple containing (frame_skip, rotation_duration, accepted) where: - frame_skip: The selected frame skip value - rotation_duration: Total animation duration in seconds - accepted: Whether the user clicked OK (True) or Cancel (False)
- show_image_load_dialog_with_path(file_path: Path) bool[source]#
Open the dataset loading dialog with a given file_path preset as the sample
- show_move_stack_dialog(origin_dataset_id: UUID, stack_id: UUID, origin_dataset_name: str, stack_data_type: str) None[source]#
- show_stack_properties_dialog(stack_id: uuid.UUID, origin_dataset: Dataset, stack_data_type: str) None[source]#
- show_stack_select_dialog() StackComparePresenter | None[source]#
- spectrum_viewer: SpectrumViewerWindowView | None = None#
- stack_modified#
pyqtSignal(*types, name: str = …, revision: int = …, arguments: Sequence = …) -> PYQT_SIGNAL
types is normally a sequence of individual types. Each type is either a type object or a string that is the name of a C++ type. Alternatively each type could itself be a sequence of types each describing a different overloaded signal. name is the optional C++ name of the signal. If it is not specified then the name of the class attribute that is bound to the signal is used. revision is the optional revision of the signal that is exported to QML. If it is not specified then 0 is used. arguments is the optional sequence of the names of the signal’s arguments.
- viewer3d: MI3DViewerWindowView | None = None#
- welcome_presenter: WelcomeScreenPresenter | None = None#
- wizard: WizardPresenter | None = None#