From a1096ed10fc89805d4a701f95257d557604f3e8c Mon Sep 17 00:00:00 2001 From: Patrick Avery Date: Tue, 24 Feb 2026 16:57:13 -0600 Subject: [PATCH] Run black on codebase We needed to run black after all of the type annotation changes... Signed-off-by: Patrick Avery --- hexrdgui/azimuthal_overlay_manager.py | 9 ++++- hexrdgui/brightness_contrast_editor.py | 4 +- hexrdgui/cal_tree_view.py | 13 ++++++- .../calibration_dialog_callbacks.py | 4 +- hexrdgui/calibration/calibration_runner.py | 4 +- hexrdgui/calibration/polarview.py | 4 +- hexrdgui/calibration/structureless/runner.py | 4 +- hexrdgui/calibration/tree_item_models.py | 33 +++++++++++++--- hexrdgui/calibration/wppf_options_dialog.py | 12 ++++-- hexrdgui/dynamic_widget.py | 8 +++- hexrdgui/fiber_pick_utils.py | 4 +- hexrdgui/hand_picked_fibers_widget.py | 5 ++- hexrdgui/html_delegate.py | 4 +- hexrdgui/image_canvas.py | 11 +++--- hexrdgui/image_stack_dialog.py | 8 +++- .../indexing/fit_grains_results_dialog.py | 4 +- .../indexing/fit_grains_tolerances_model.py | 21 ++++++++-- hexrdgui/indexing/grains_table_model.py | 5 ++- hexrdgui/input_dialog.py | 4 +- hexrdgui/list_editor.py | 5 ++- hexrdgui/llnl_import_tool_dialog.py | 5 ++- hexrdgui/main_window.py | 12 ++++-- hexrdgui/masking/mask_manager.py | 8 +++- hexrdgui/masking/mask_manager_dialog.py | 15 ++++++-- hexrdgui/masking/mask_regions_dialog.py | 5 ++- hexrdgui/masking/threshold_mask_dialog.py | 4 +- hexrdgui/material_editor_widget.py | 5 ++- hexrdgui/material_site_editor.py | 17 +++++++-- hexrdgui/material_structure_editor.py | 5 ++- hexrdgui/messages_widget.py | 8 +++- hexrdgui/overlay_manager.py | 13 +++++-- hexrdgui/overlays/const_chi_overlay.py | 2 +- hexrdgui/overlays/laue_overlay.py | 8 +++- hexrdgui/overlays/overlay.py | 4 +- hexrdgui/periodic_table_dialog.py | 4 +- hexrdgui/point_picker_dialog.py | 4 +- hexrdgui/progress_dialog.py | 3 +- hexrdgui/pt_slider_dialog.py | 5 ++- hexrdgui/ranges_table_editor.py | 9 ++++- hexrdgui/reflections_table.py | 5 ++- hexrdgui/reorder_pairs_widget.py | 4 +- hexrdgui/resource_loader.py | 4 +- hexrdgui/select_grains_dialog.py | 5 ++- hexrdgui/select_items_dialog.py | 4 +- hexrdgui/simple_image_series_dialog.py | 8 +++- hexrdgui/state.py | 4 +- hexrdgui/table_selector_widget.py | 4 +- .../tree_views/base_dict_tree_item_model.py | 30 +++++++++++++-- hexrdgui/tree_views/base_tree_item_model.py | 38 +++++++++++++++---- .../tree_views/generic_picks_tree_view.py | 4 +- .../tree_views/multi_column_dict_tree_view.py | 6 ++- hexrdgui/utils/const_chi.py | 4 +- hexrdgui/utils/conversions.py | 8 +++- hexrdgui/waterfall_plot.py | 8 +++- hexrdgui/xray_energy_selection_dialog.py | 4 +- 55 files changed, 343 insertions(+), 99 deletions(-) diff --git a/hexrdgui/azimuthal_overlay_manager.py b/hexrdgui/azimuthal_overlay_manager.py index 50721f570..b3a64d02d 100644 --- a/hexrdgui/azimuthal_overlay_manager.py +++ b/hexrdgui/azimuthal_overlay_manager.py @@ -78,7 +78,9 @@ def create_materials_combo(self, v: str) -> QWidget: raise Exception(f'Unknown material: {v}') cb = QComboBox(self.ui.table) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) cb.setSizePolicy(size_policy) for mat in materials: cb.addItem(mat, mat) @@ -158,7 +160,10 @@ def select_row(self, i: int | None) -> None: selection_model.clearSelection() model_index = selection_model.model().index(i, 0) - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) selection_model.select(model_index, command) @property diff --git a/hexrdgui/brightness_contrast_editor.py b/hexrdgui/brightness_contrast_editor.py index ea4c7df27..98c51319e 100644 --- a/hexrdgui/brightness_contrast_editor.py +++ b/hexrdgui/brightness_contrast_editor.py @@ -400,7 +400,9 @@ def select_data_range(self) -> None: range_widget.max = self.data_range[1] layout.addWidget(range_widget.ui) - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) button_box = QDialogButtonBox(buttons, dialog) button_box.accepted.connect(dialog.accept) button_box.rejected.connect(dialog.reject) diff --git a/hexrdgui/cal_tree_view.py b/hexrdgui/cal_tree_view.py index 1053b6b75..68bc47162 100644 --- a/hexrdgui/cal_tree_view.py +++ b/hexrdgui/cal_tree_view.py @@ -32,7 +32,11 @@ def __init__(self, parent: QWidget | None = None) -> None: self.cfg = HexrdConfig() self.rebuild_tree() - def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDataRole.DisplayRole) -> Any: + def data( + self, + index: QModelIndex | QPersistentModelIndex, + role: int = Qt.ItemDataRole.DisplayRole, + ) -> Any: if not index.isValid(): return None @@ -49,7 +53,12 @@ def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDa return value - def setData(self, index: QModelIndex | QPersistentModelIndex, value: Any, role: int = Qt.ItemDataRole.EditRole) -> bool: + def setData( + self, + index: QModelIndex | QPersistentModelIndex, + value: Any, + role: int = Qt.ItemDataRole.EditRole, + ) -> bool: item = self.get_item(index) path = self.path_to_value(item, index.column()) diff --git a/hexrdgui/calibration/calibration_dialog_callbacks.py b/hexrdgui/calibration/calibration_dialog_callbacks.py index 8fb79c11d..bf6ec09df 100644 --- a/hexrdgui/calibration/calibration_dialog_callbacks.py +++ b/hexrdgui/calibration/calibration_dialog_callbacks.py @@ -228,7 +228,9 @@ def pop_undo_stack(self) -> None: def update_undo_enable_state(self) -> None: self.dialog.undo_enabled = bool(self.undo_stack) - def on_relative_constraints_changed(self, new_constraint: RelativeConstraintsType) -> None: + def on_relative_constraints_changed( + self, new_constraint: RelativeConstraintsType + ) -> None: self.calibrator.relative_constraints_type = new_constraint self.restore_constraint_params() # Reset the tilt center of rotation in the dialog diff --git a/hexrdgui/calibration/calibration_runner.py b/hexrdgui/calibration/calibration_runner.py index 0e42baf41..373e8b4df 100644 --- a/hexrdgui/calibration/calibration_runner.py +++ b/hexrdgui/calibration/calibration_runner.py @@ -1078,7 +1078,9 @@ def load_picks_from_file(self, selected_file: str) -> dict[str, Any]: @contextmanager -def zoom_canvas_disabled(line_picker: LinePickerDialog | None) -> Generator[None, None, None]: +def zoom_canvas_disabled( + line_picker: LinePickerDialog | None, +) -> Generator[None, None, None]: if line_picker: prev = line_picker.zoom_canvas.disabled line_picker.zoom_canvas.disabled = True diff --git a/hexrdgui/calibration/polarview.py b/hexrdgui/calibration/polarview.py index 0a00b54d9..073fc1bc8 100644 --- a/hexrdgui/calibration/polarview.py +++ b/hexrdgui/calibration/polarview.py @@ -305,7 +305,9 @@ def func_project_on_detector(self, detector: Detector) -> Callable[..., Any]: else: return _project_on_detector_plane - def args_project_on_detector(self, detector: Detector) -> tuple[tuple[Any, ...], dict[str, Any]]: + def args_project_on_detector( + self, detector: Detector + ) -> tuple[tuple[Any, ...], dict[str, Any]]: """ prepare the arguments to be passed for mapping to plane or cylinder diff --git a/hexrdgui/calibration/structureless/runner.py b/hexrdgui/calibration/structureless/runner.py index 77c324383..0e61e280d 100644 --- a/hexrdgui/calibration/structureless/runner.py +++ b/hexrdgui/calibration/structureless/runner.py @@ -267,7 +267,9 @@ def _hand_picking_finished(self) -> None: # will not be left in an invalid state. self.set_focus_mode(False) - def show_calibration_dialog(self, calibrator_lines: dict[str, Any]) -> CalibrationDialog: + def show_calibration_dialog( + self, calibrator_lines: dict[str, Any] + ) -> CalibrationDialog: self.previous_picks_data = calibrator_lines engineering_constraints = guess_engineering_constraints(self.instr) diff --git a/hexrdgui/calibration/tree_item_models.py b/hexrdgui/calibration/tree_item_models.py index 737ab02ba..97497e48a 100644 --- a/hexrdgui/calibration/tree_item_models.py +++ b/hexrdgui/calibration/tree_item_models.py @@ -106,7 +106,11 @@ def convert_if_needed(v: Any) -> Any: # Trigger the callback function param._on_vary_modified() - def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDataRole.DisplayRole) -> Any: + def data( + self, + index: QModelIndex | QPersistentModelIndex, + role: int = Qt.ItemDataRole.DisplayRole, + ) -> Any: if ( role in (Qt.ItemDataRole.BackgroundRole, Qt.ItemDataRole.ForegroundRole) and index.column() in (self.VALUE_IDX, self.VARY_IDX) @@ -117,7 +121,10 @@ def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDa uneditable_path = tuple(self.path_to_item(item) + [self.VALUE_IDX]) if uneditable_path in self.uneditable_paths: color = 'gray' - if index.column() == self.VALUE_IDX and role == Qt.ItemDataRole.ForegroundRole: + if ( + index.column() == self.VALUE_IDX + and role == Qt.ItemDataRole.ForegroundRole + ): color = 'white' return QColor(color) @@ -164,8 +171,15 @@ class DefaultCalibrationTreeItemModel(CalibrationTreeItemModel): MIN_IDX = COLUMN_INDICES['Minimum'] BOUND_INDICES = (VALUE_IDX, MAX_IDX, MIN_IDX) - def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDataRole.DisplayRole) -> Any: - if role == Qt.ItemDataRole.ForegroundRole and index.column() in self.BOUND_INDICES: + def data( + self, + index: QModelIndex | QPersistentModelIndex, + role: int = Qt.ItemDataRole.DisplayRole, + ) -> Any: + if ( + role == Qt.ItemDataRole.ForegroundRole + and index.column() in self.BOUND_INDICES + ): # If a value hit the boundary, color both the boundary and the # value red. item = self.get_item(index) @@ -205,8 +219,15 @@ class DeltaCalibrationTreeItemModel(CalibrationTreeItemModel): DELTA_IDX = COLUMN_INDICES['Delta'] BOUND_INDICES = (VALUE_IDX, DELTA_IDX) - def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDataRole.DisplayRole) -> Any: - if role == Qt.ItemDataRole.ForegroundRole and index.column() in self.BOUND_INDICES: + def data( + self, + index: QModelIndex | QPersistentModelIndex, + role: int = Qt.ItemDataRole.DisplayRole, + ) -> Any: + if ( + role == Qt.ItemDataRole.ForegroundRole + and index.column() in self.BOUND_INDICES + ): # If a delta is zero, color both the delta and the value red. item = self.get_item(index) if not item.child_items and item.data(self.VALUE_IDX) is not None: diff --git a/hexrdgui/calibration/wppf_options_dialog.py b/hexrdgui/calibration/wppf_options_dialog.py index 98fd0aa91..a6d5ae3ef 100644 --- a/hexrdgui/calibration/wppf_options_dialog.py +++ b/hexrdgui/calibration/wppf_options_dialog.py @@ -1588,7 +1588,9 @@ def tree_view_columns(self) -> dict: return self.tree_view_model_class.COLUMNS @property - def tree_view_model_class(self) -> type[DefaultWPPFTreeItemModel] | type[DeltaWPPFTreeItemModel]: + def tree_view_model_class( + self, + ) -> type[DefaultWPPFTreeItemModel] | type[DeltaWPPFTreeItemModel]: if self.delta_boundaries: return DeltaWPPFTreeItemModel else: @@ -1746,7 +1748,9 @@ def wppf_object(self) -> LeBail | Rietveld: return self._wppf_object - def create_wppf_object(self, reset_background_params: bool = False) -> LeBail | Rietveld: + def create_wppf_object( + self, reset_background_params: bool = False + ) -> LeBail | Rietveld: class_types = { 'LeBail': LeBail, 'Rietveld': Rietveld, @@ -2282,7 +2286,9 @@ def is_zero(v: float) -> bool: return False - def _copy_texture_figs(self, obj1: LeBail | Rietveld | None, obj2: LeBail | Rietveld | None) -> None: + def _copy_texture_figs( + self, obj1: LeBail | Rietveld | None, obj2: LeBail | Rietveld | None + ) -> None: # We need to keep the original texture figures, so copy those over. if obj1 is None or obj2 is None: return diff --git a/hexrdgui/dynamic_widget.py b/hexrdgui/dynamic_widget.py index 39c27bcc5..c9bc96096 100644 --- a/hexrdgui/dynamic_widget.py +++ b/hexrdgui/dynamic_widget.py @@ -18,7 +18,9 @@ class DynamicWidget(QObject): # Emitted when the value is changed value_changed = Signal() - def __init__(self, description: dict[str, Any], parent: QObject | None = None) -> None: + def __init__( + self, description: dict[str, Any], parent: QObject | None = None + ) -> None: super().__init__(parent) self.description = description @@ -60,7 +62,9 @@ def label_from_description(x: dict[str, Any]) -> QLabel | None: return QLabel(x['label']) -def widget_from_description(x: dict[str, Any], parent: QWidget | None = None) -> QWidget | None: +def widget_from_description( + x: dict[str, Any], parent: QWidget | None = None +) -> QWidget | None: """Dynamically create a widget from a description dict. Some of the keys currently accepted are 'type', 'min', 'max', and diff --git a/hexrdgui/fiber_pick_utils.py b/hexrdgui/fiber_pick_utils.py index 16dc8a87e..4efcb1d44 100644 --- a/hexrdgui/fiber_pick_utils.py +++ b/hexrdgui/fiber_pick_utils.py @@ -88,7 +88,9 @@ def _pick_to_fiber( return qfib.T # (4, ndiv) -def _angles_from_orientation(instr: HEDMInstrument, eta_ome_maps: Any, orientation: Any) -> list: +def _angles_from_orientation( + instr: HEDMInstrument, eta_ome_maps: Any, orientation: Any +) -> list: """ Return the (eta, omega) angles for a specified orientation consistent with input EtaOmeMaps. diff --git a/hexrdgui/hand_picked_fibers_widget.py b/hexrdgui/hand_picked_fibers_widget.py index b994b23dc..8b8b5e2a4 100644 --- a/hexrdgui/hand_picked_fibers_widget.py +++ b/hexrdgui/hand_picked_fibers_widget.py @@ -336,7 +336,10 @@ def select_rows(self, rows: list[int]) -> None: with block_signals(selection_model): selection_model.clearSelection() - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) for i in rows: if i is None or i >= table.rowCount(): diff --git a/hexrdgui/html_delegate.py b/hexrdgui/html_delegate.py index aa926d602..369dcb5b8 100644 --- a/hexrdgui/html_delegate.py +++ b/hexrdgui/html_delegate.py @@ -22,7 +22,9 @@ def _add_stylesheet(self, html_content: str) -> str: '' ) - def _get_display_string(self, index: QModelIndex | QPersistentModelIndex) -> str | None: + def _get_display_string( + self, index: QModelIndex | QPersistentModelIndex + ) -> str | None: data = index.data(Qt.ItemDataRole.DisplayRole) if data is not None and not isinstance(data, str): # Ensure it is a string diff --git a/hexrdgui/image_canvas.py b/hexrdgui/image_canvas.py index 11a02ee9e..a7c8a28cc 100644 --- a/hexrdgui/image_canvas.py +++ b/hexrdgui/image_canvas.py @@ -1818,9 +1818,7 @@ def save_azimuthal_plot(self) -> None: assert self.azimuthal_integral_axis is not None extent = self.azimuthal_integral_axis.get_window_extent().transformed(size) # The bbox does not include the axis so manually scale it up so it does - new_extent = extent.from_extents( - 0, 0, extent.xmax * 1.05, extent.ymax * 1.05 - ) + new_extent = extent.from_extents(0, 0, extent.xmax * 1.05, extent.ymax * 1.05) # Save the clipped region of the figure self.figure.savefig(selected_file, bbox_inches=new_extent) @@ -2154,7 +2152,8 @@ def create_waterfall_plot(self) -> None: # No close button in the corner flags = progress.windowFlags() progress.setWindowFlags( - (flags | Qt.WindowType.CustomizeWindowHint) & ~Qt.WindowType.WindowCloseButtonHint + (flags | Qt.WindowType.CustomizeWindowHint) + & ~Qt.WindowType.WindowCloseButtonHint ) self._create_waterfall_progress = progress @@ -2591,7 +2590,9 @@ def transform_from_plain_cartesian_func(mode: str) -> Callable: def to_pixels(xys: np.ndarray, panel: Detector, iviewer: IViewer) -> np.ndarray: return cart_to_pixels(xys, panel) - def transform_cart(xys: np.ndarray, panel: Detector, iviewer: IViewer) -> np.ndarray: + def transform_cart( + xys: np.ndarray, panel: Detector, iviewer: IViewer + ) -> np.ndarray: dplane = iviewer.dplane # type: ignore[union-attr] return panel.map_to_plane(xys, dplane.rmat, dplane.tvec) diff --git a/hexrdgui/image_stack_dialog.py b/hexrdgui/image_stack_dialog.py index c8ca991b3..d863a1f10 100644 --- a/hexrdgui/image_stack_dialog.py +++ b/hexrdgui/image_stack_dialog.py @@ -201,9 +201,13 @@ def load_omega_from_file(self, checked: bool) -> None: self.ui.load_omega_file.setEnabled(checked) self.ui.omega_file.setEnabled(checked) if checked: - self.ui.omega_wedges.setEditTriggers(QAbstractItemView.EditTrigger.NoEditTriggers) + self.ui.omega_wedges.setEditTriggers( + QAbstractItemView.EditTrigger.NoEditTriggers + ) else: - self.ui.omega_wedges.setEditTriggers(QAbstractItemView.EditTrigger.AllEditTriggers) + self.ui.omega_wedges.setEditTriggers( + QAbstractItemView.EditTrigger.AllEditTriggers + ) def detector_selection(self, checked: bool) -> None: self.state['all_detectors'] = checked diff --git a/hexrdgui/indexing/fit_grains_results_dialog.py b/hexrdgui/indexing/fit_grains_results_dialog.py index 3c13035a9..1dc5a90d0 100644 --- a/hexrdgui/indexing/fit_grains_results_dialog.py +++ b/hexrdgui/indexing/fit_grains_results_dialog.py @@ -701,9 +701,7 @@ def load_cmaps(self) -> None: def update_cmap(self) -> None: # Get the Colormap object from the name - self.cmap = matplotlib.colormaps.get_cmap( - self.ui.color_maps.currentText() - ) + self.cmap = matplotlib.colormaps.get_cmap(self.ui.color_maps.currentText()) self.update_plot() def reset_glyph_size(self, update_plot: bool = True) -> None: diff --git a/hexrdgui/indexing/fit_grains_tolerances_model.py b/hexrdgui/indexing/fit_grains_tolerances_model.py index 385321a5a..d660c2eea 100644 --- a/hexrdgui/indexing/fit_grains_tolerances_model.py +++ b/hexrdgui/indexing/fit_grains_tolerances_model.py @@ -2,7 +2,13 @@ from typing import Any -from PySide6.QtCore import QAbstractTableModel, QModelIndex, QPersistentModelIndex, Qt, Signal +from PySide6.QtCore import ( + QAbstractTableModel, + QModelIndex, + QPersistentModelIndex, + Qt, + Signal, +) from PySide6.QtWidgets import QWidget @@ -22,7 +28,9 @@ def __init__(self, parent: QWidget | None = None) -> None: # Override methods: - def columnCount(self, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> int: + def columnCount( + self, parent: QModelIndex | QPersistentModelIndex = QModelIndex() + ) -> int: return 3 def data( @@ -72,13 +80,18 @@ def headerData( orientation: Qt.Orientation, role: int = Qt.ItemDataRole.DisplayRole, ) -> Any: - if role == Qt.ItemDataRole.DisplayRole and orientation == Qt.Orientation.Horizontal: + if ( + role == Qt.ItemDataRole.DisplayRole + and orientation == Qt.Orientation.Horizontal + ): headers = ['tth', 'eta', 'omega'] return headers[section] # (else) return super().headerData(section, orientation, role) - def rowCount(self, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> int: + def rowCount( + self, parent: QModelIndex | QPersistentModelIndex = QModelIndex() + ) -> int: if parent.isValid(): return 0 return len(self.tth_tolerances) diff --git a/hexrdgui/indexing/grains_table_model.py b/hexrdgui/indexing/grains_table_model.py index d6324b9e0..0203fcdfd 100644 --- a/hexrdgui/indexing/grains_table_model.py +++ b/hexrdgui/indexing/grains_table_model.py @@ -85,7 +85,10 @@ def headerData( orientation: Qt.Orientation, role: int = Qt.ItemDataRole.DisplayRole, ) -> Any: - if role == Qt.ItemDataRole.DisplayRole and orientation == Qt.Orientation.Horizontal: + if ( + role == Qt.ItemDataRole.DisplayRole + and orientation == Qt.Orientation.Horizontal + ): return self.headers[section] return super().headerData(section, orientation, role) diff --git a/hexrdgui/input_dialog.py b/hexrdgui/input_dialog.py index f58b99214..806efc211 100644 --- a/hexrdgui/input_dialog.py +++ b/hexrdgui/input_dialog.py @@ -41,7 +41,9 @@ def getItem( combo_box.setEditable(editable) layout.addWidget(combo_box) - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) button_box = QDialogButtonBox(buttons) button_box.accepted.connect(dialog.accept) button_box.rejected.connect(dialog.reject) diff --git a/hexrdgui/list_editor.py b/hexrdgui/list_editor.py index 47074f867..b105a1294 100644 --- a/hexrdgui/list_editor.py +++ b/hexrdgui/list_editor.py @@ -108,7 +108,10 @@ def clear_selection(self) -> None: def select_row(self, i: int) -> None: model_index = self.selection_model.model().index(i, 0) - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) self.selection_model.select(model_index, command) def selection_changed(self) -> None: diff --git a/hexrdgui/llnl_import_tool_dialog.py b/hexrdgui/llnl_import_tool_dialog.py index b8258397e..de61be670 100644 --- a/hexrdgui/llnl_import_tool_dialog.py +++ b/hexrdgui/llnl_import_tool_dialog.py @@ -1090,7 +1090,10 @@ def check_for_unsaved_changes(self) -> None: + ' been accepted. Keep changes?' ) response = QMessageBox.question( - self.ui, 'HEXRD', msg, (QMessageBox.StandardButton.Cancel | QMessageBox.StandardButton.Save) + self.ui, + 'HEXRD', + msg, + (QMessageBox.StandardButton.Cancel | QMessageBox.StandardButton.Save), ) if response == QMessageBox.StandardButton.Save: self.complete_current_selection() diff --git a/hexrdgui/main_window.py b/hexrdgui/main_window.py index a587c8312..7386ac978 100644 --- a/hexrdgui/main_window.py +++ b/hexrdgui/main_window.py @@ -128,11 +128,15 @@ def __init__( self.messages_widget = MessagesWidget(self.ui) dock_widget_contents = self.ui.messages_dock_widget_contents dock_widget_contents.layout().addWidget(self.messages_widget.ui) - self.ui.resizeDocks([self.ui.messages_dock_widget], [80], Qt.Orientation.Vertical) + self.ui.resizeDocks( + [self.ui.messages_dock_widget], [80], Qt.Orientation.Vertical + ) # Let the left dock widget take up the whole left side self.ui.setCorner(Qt.Corner.TopLeftCorner, Qt.DockWidgetArea.LeftDockWidgetArea) - self.ui.setCorner(Qt.Corner.BottomLeftCorner, Qt.DockWidgetArea.LeftDockWidgetArea) + self.ui.setCorner( + Qt.Corner.BottomLeftCorner, Qt.DockWidgetArea.LeftDockWidgetArea + ) self.color_map_editor = ColorMapEditor( self.ui.image_tab_widget, self.ui.central_widget @@ -897,7 +901,9 @@ def on_action_edit_apply_hand_drawn_mask_triggered(self) -> None: self.run_apply_hand_drawn_mask ) - def run_apply_hand_drawn_mask(self, dets: list[str | None], line_data: list[np.ndarray]) -> None: + def run_apply_hand_drawn_mask( + self, dets: list[str | None], line_data: list[np.ndarray] + ) -> None: if self.image_mode == ViewType.polar: for line in line_data: raw_line = convert_polar_to_raw([line]) diff --git a/hexrdgui/masking/mask_manager.py b/hexrdgui/masking/mask_manager.py index cf73b3040..5df0362d8 100644 --- a/hexrdgui/masking/mask_manager.py +++ b/hexrdgui/masking/mask_manager.py @@ -162,7 +162,9 @@ def highlight(self, value: bool) -> None: return self._highlight = value - def update_masked_arrays(self, view: str = ViewType.raw, instr: HEDMInstrument | None = None) -> None: + def update_masked_arrays( + self, view: str = ViewType.raw, instr: HEDMInstrument | None = None + ) -> None: self.masked_arrays_view_mode = view assert self._raw is not None if view == ViewType.raw: @@ -432,7 +434,9 @@ def remove_mask(self, name: str) -> Mask: self.mask_mgr_dialog_update.emit() return removed_mask - def write_masks_to_group(self, data: dict[str, Any], h5py_group: h5py.Group) -> None: + def write_masks_to_group( + self, data: dict[str, Any], h5py_group: h5py.Group + ) -> None: h5py_group.attrs['_version'] = CURRENT_MASK_VERSION unwrap_dict_to_h5(h5py_group, data, asattr=False) diff --git a/hexrdgui/masking/mask_manager_dialog.py b/hexrdgui/masking/mask_manager_dialog.py index fbd6c9fbd..89eee9235 100644 --- a/hexrdgui/masking/mask_manager_dialog.py +++ b/hexrdgui/masking/mask_manager_dialog.py @@ -116,7 +116,9 @@ def create_mode_item(self, mode: str | None, source: str | None) -> QTreeWidgetI mode_item.setFont( 0, QFont( - mode_item.font(0).family(), mode_item.font(0).pointSize(), QFont.Weight.Bold + mode_item.font(0).family(), + mode_item.font(0).pointSize(), + QFont.Weight.Bold, ), ) self.ui.masks_tree.addTopLevelItem(mode_item) @@ -131,7 +133,11 @@ def create_mask_item( ) -> None: assert mask.name is not None mask_item = QTreeWidgetItem([mask.name]) - mask_item.setFlags(Qt.ItemFlag.ItemIsEnabled | Qt.ItemFlag.ItemIsSelectable | Qt.ItemFlag.ItemIsEditable) + mask_item.setFlags( + Qt.ItemFlag.ItemIsEnabled + | Qt.ItemFlag.ItemIsSelectable + | Qt.ItemFlag.ItemIsEditable + ) # Store the original mask name in the item's data mask_item.setData(0, Qt.ItemDataRole.UserRole, mask.name) parent_item.addChild(mask_item) @@ -352,7 +358,10 @@ def masks_to_panel_buffer(self) -> None: options.addItem('Intersection of panel buffer and current masks') layout.addWidget(options) - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok + | QDialogButtonBox.StandardButton.Cancel + ) button_box = QDialogButtonBox(buttons, dialog) button_box.accepted.connect(dialog.accept) button_box.rejected.connect(dialog.reject) diff --git a/hexrdgui/masking/mask_regions_dialog.py b/hexrdgui/masking/mask_regions_dialog.py index e1094362b..88b6533d6 100644 --- a/hexrdgui/masking/mask_regions_dialog.py +++ b/hexrdgui/masking/mask_regions_dialog.py @@ -217,7 +217,10 @@ def check_pick(self, event: MouseEvent) -> bool: and it.template.contains_point(transformed_click) and ( self.image_mode == ViewType.polar - or (event.inaxes is not None and event.inaxes.get_title() == it.detector) + or ( + event.inaxes is not None + and event.inaxes.get_title() == it.detector + ) ) ): if self.interactive_template: diff --git a/hexrdgui/masking/threshold_mask_dialog.py b/hexrdgui/masking/threshold_mask_dialog.py index b071567a3..10d939df4 100644 --- a/hexrdgui/masking/threshold_mask_dialog.py +++ b/hexrdgui/masking/threshold_mask_dialog.py @@ -56,7 +56,9 @@ def setup_gui(self, reset: bool = False) -> None: def setup_connections(self) -> None: apply_button = self.ui.button_box.button(QDialogButtonBox.StandardButton.Apply) apply_button.clicked.connect(self.accept) - reset_button = self.ui.button_box.button(QDialogButtonBox.StandardButton.RestoreDefaults) + reset_button = self.ui.button_box.button( + QDialogButtonBox.StandardButton.RestoreDefaults + ) reset_button.clicked.connect(functools.partial(self.setup_gui, reset=True)) def gather_input(self) -> None: diff --git a/hexrdgui/material_editor_widget.py b/hexrdgui/material_editor_widget.py index ff1d4bef8..e1b4ad514 100644 --- a/hexrdgui/material_editor_widget.py +++ b/hexrdgui/material_editor_widget.py @@ -242,7 +242,10 @@ def confirm_large_lattice_parameter(self) -> None: f'large value of "{value:.2f}" Å. This might use too ' 'many system resources. Proceed anyways?' ) - if QMessageBox.question(self.ui, 'HEXRD', msg) == QMessageBox.StandardButton.No: + if ( + QMessageBox.question(self.ui, 'HEXRD', msg) + == QMessageBox.StandardButton.No + ): # Reset the lattice parameter value. self.update_gui_from_material() diff --git a/hexrdgui/material_site_editor.py b/hexrdgui/material_site_editor.py index 40ef04fa0..0c506acb5 100644 --- a/hexrdgui/material_site_editor.py +++ b/hexrdgui/material_site_editor.py @@ -189,7 +189,10 @@ def select_row(self, i: int | None) -> None: selection_model.clearSelection() model_index = selection_model.model().index(i, 0) - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) selection_model.select(model_index, command) def selection_changed(self) -> None: @@ -221,7 +224,9 @@ def create_charge_combobox(self, charge: str, symbol: str) -> QComboBox: cb.setCurrentText(charge) cb.currentIndexChanged.connect(self.update_config) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) cb.setSizePolicy(size_policy) self.charge_comboboxes.append(cb) @@ -238,7 +243,9 @@ def create_occupancy_spinbox( sb.setValue(v) sb.valueChanged.connect(self.update_config) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) sb.setSizePolicy(size_policy) self.occupancy_spinboxes.append(sb) @@ -256,7 +263,9 @@ def create_thermal_factor_spinbox( sb.valueChanged.connect(self.update_config) sb.setToolTip('Double-click to open tensor editor') - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) sb.setSizePolicy(size_policy) self.thermal_factor_spinboxes.append(sb) diff --git a/hexrdgui/material_structure_editor.py b/hexrdgui/material_structure_editor.py index 3a8b67971..61bfb1019 100644 --- a/hexrdgui/material_structure_editor.py +++ b/hexrdgui/material_structure_editor.py @@ -139,7 +139,10 @@ def select_row(self, i: int | None) -> None: selection_model.clearSelection() model_index = selection_model.model().index(i, 0) - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) selection_model.select(model_index, command) @staticmethod diff --git a/hexrdgui/messages_widget.py b/hexrdgui/messages_widget.py index 1acd4af8c..b40acc3fe 100644 --- a/hexrdgui/messages_widget.py +++ b/hexrdgui/messages_widget.py @@ -116,7 +116,9 @@ def insert_text(self, text: str) -> None: ind = text.find('\r') first, rest = text[:ind], text[ind + 1 :] self.ui.text.insertPlainText(first) - self.ui.text.moveCursor(QTextCursor.MoveOperation.StartOfLine, QTextCursor.MoveMode.KeepAnchor) + self.ui.text.moveCursor( + QTextCursor.MoveOperation.StartOfLine, QTextCursor.MoveMode.KeepAnchor + ) text = rest self.ui.text.insertPlainText(text) @@ -210,7 +212,9 @@ def setup_connections(self) -> None: # Always do a queued connection so the messages are # printed in the order they are received (regardless of which # thread they are coming from) - self.text_received.connect(self.on_text_received, Qt.ConnectionType.QueuedConnection) + self.text_received.connect( + self.on_text_received, Qt.ConnectionType.QueuedConnection + ) def on_text_received(self, text: str) -> None: self.write_func(text) diff --git a/hexrdgui/overlay_manager.py b/hexrdgui/overlay_manager.py index fdba90fd4..69308e467 100644 --- a/hexrdgui/overlay_manager.py +++ b/hexrdgui/overlay_manager.py @@ -88,7 +88,9 @@ def create_materials_combo(self, v: str) -> QWidget: raise Exception(f'Unknown material: {v}') cb = QComboBox(self.ui.table) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) cb.setSizePolicy(size_policy) for mat in materials: cb.addItem(mat, mat) @@ -107,7 +109,9 @@ def create_type_combo(self, v: OverlayType) -> QWidget: raise Exception(f'Unknown type: {v}') cb = QComboBox(self.ui.table) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) cb.setSizePolicy(size_policy) for type in types: cb.addItem(self.format_type(type), type.value) @@ -192,7 +196,10 @@ def select_row(self, i: int | None) -> None: selection_model.clearSelection() model_index = selection_model.model().index(i, 0) - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) selection_model.select(model_index, command) @property diff --git a/hexrdgui/overlays/const_chi_overlay.py b/hexrdgui/overlays/const_chi_overlay.py index 49f368533..94a3b1f5e 100644 --- a/hexrdgui/overlays/const_chi_overlay.py +++ b/hexrdgui/overlays/const_chi_overlay.py @@ -28,7 +28,7 @@ def __init__( chi_values: list[Any] | None = None, tvec: np.ndarray | None = None, chi_values_serialized: list[Any] | None = None, - **overlay_kwargs: Any + **overlay_kwargs: Any, ) -> None: # chi_values_serialized is only used if chi_values is None. # It is used for state loading. diff --git a/hexrdgui/overlays/laue_overlay.py b/hexrdgui/overlays/laue_overlay.py index 0abfa60f9..719204b60 100644 --- a/hexrdgui/overlays/laue_overlay.py +++ b/hexrdgui/overlays/laue_overlay.py @@ -361,7 +361,9 @@ def range_data(self, spots: np.ndarray, display_mode: str, panel: Any) -> list: return data - def rectangular_range_data(self, spots: np.ndarray, display_mode: str, panel: Any) -> list: + def rectangular_range_data( + self, spots: np.ndarray, display_mode: str, panel: Any + ) -> list: range_corners = self.range_corners(spots) if display_mode == ViewType.polar: # All done... @@ -400,7 +402,9 @@ def rectangular_range_data(self, spots: np.ndarray, display_mode: str, panel: An return results - def ellipsoidal_range_data(self, spots: np.ndarray, display_mode: str, panel: Any) -> list: + def ellipsoidal_range_data( + self, spots: np.ndarray, display_mode: str, panel: Any + ) -> list: from hexrdgui.hexrd_config import HexrdConfig num_points = 300 diff --git a/hexrdgui/overlays/overlay.py b/hexrdgui/overlays/overlay.py index c3ddbfce6..a2962c96a 100644 --- a/hexrdgui/overlays/overlay.py +++ b/hexrdgui/overlays/overlay.py @@ -342,7 +342,9 @@ def has_highlights(self) -> bool: def clear_highlights(self) -> None: self._highlights.clear() - def path_to_hkl_data(self, detector_key: str, hkl: np.ndarray) -> tuple[str, str | None, int]: + def path_to_hkl_data( + self, detector_key: str, hkl: np.ndarray + ) -> tuple[str, str | None, int]: data_key = self.data_key detector_data = self.data[detector_key] ind = array_index_in_list(hkl, detector_data['hkls']) diff --git a/hexrdgui/periodic_table_dialog.py b/hexrdgui/periodic_table_dialog.py index b86c0cd7b..e4d77fb9e 100644 --- a/hexrdgui/periodic_table_dialog.py +++ b/hexrdgui/periodic_table_dialog.py @@ -31,7 +31,9 @@ def __init__( self.clear_selection_button = QPushButton('Clear Selection', self) layout.addWidget(self.clear_selection_button) - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) self.button_box = QDialogButtonBox(buttons, self) layout.addWidget(self.button_box) diff --git a/hexrdgui/point_picker_dialog.py b/hexrdgui/point_picker_dialog.py index 4cbbcc237..afe66085e 100644 --- a/hexrdgui/point_picker_dialog.py +++ b/hexrdgui/point_picker_dialog.py @@ -38,7 +38,9 @@ def __init__( layout.setAlignment(self.toolbar, Qt.AlignmentFlag.AlignHCenter) # Add a button box for accept/cancel - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) self.button_box = QDialogButtonBox(buttons, self) layout.addWidget(self.button_box) diff --git a/hexrdgui/progress_dialog.py b/hexrdgui/progress_dialog.py index dd971f119..8cc9b34e5 100644 --- a/hexrdgui/progress_dialog.py +++ b/hexrdgui/progress_dialog.py @@ -36,7 +36,8 @@ def __init__(self, parent: QObject | None = None) -> None: # No close button in the corner flags = self.ui.windowFlags() self.ui.setWindowFlags( - (flags | Qt.WindowType.CustomizeWindowHint) & ~Qt.WindowType.WindowCloseButtonHint + (flags | Qt.WindowType.CustomizeWindowHint) + & ~Qt.WindowType.WindowCloseButtonHint ) self.setup_connections() diff --git a/hexrdgui/pt_slider_dialog.py b/hexrdgui/pt_slider_dialog.py index d5bc79b73..d731553f8 100644 --- a/hexrdgui/pt_slider_dialog.py +++ b/hexrdgui/pt_slider_dialog.py @@ -288,7 +288,10 @@ def compare_jcpds_to_material(self, jcpds: JCPDS_extend) -> bool: f'material "{self.material.name}". Update the material ' 'parameters to match?' ) - if QMessageBox.question(self.ui, 'HEXRD', msg) == QMessageBox.StandardButton.Yes: + if ( + QMessageBox.question(self.ui, 'HEXRD', msg) + == QMessageBox.StandardButton.Yes + ): jcpds.write_lattice_params_to_material(self.material) self.rerender_overlays() diff --git a/hexrdgui/ranges_table_editor.py b/hexrdgui/ranges_table_editor.py index 10871f197..815eff9ee 100644 --- a/hexrdgui/ranges_table_editor.py +++ b/hexrdgui/ranges_table_editor.py @@ -102,7 +102,10 @@ def select_row(self, i: int) -> None: selection_model.clearSelection() model_index = selection_model.model().index(i, 0) - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) selection_model.select(model_index, command) @property @@ -138,7 +141,9 @@ def create_double_spin_box(self, v: float) -> ScientificDoubleSpinBox: sb.setValue(v) sb.valueChanged.connect(self.update_data) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) sb.setSizePolicy(size_policy) self.spin_boxes.append(sb) diff --git a/hexrdgui/reflections_table.py b/hexrdgui/reflections_table.py index b196f22e4..bddf21f12 100644 --- a/hexrdgui/reflections_table.py +++ b/hexrdgui/reflections_table.py @@ -281,7 +281,10 @@ def selected_rows(self, rows: list[int]) -> None: with block_signals(selection_model): selection_model.clear() - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) for i in rows: model_index = selection_model.model().index(i, 0) selection_model.select(model_index, command) diff --git a/hexrdgui/reorder_pairs_widget.py b/hexrdgui/reorder_pairs_widget.py index 320479d18..0cd31f883 100644 --- a/hexrdgui/reorder_pairs_widget.py +++ b/hexrdgui/reorder_pairs_widget.py @@ -67,7 +67,9 @@ def create_combo_box(self, i: int, j: int) -> QWidget: options = [x[j] for x in self.items] cb = QComboBox(self.ui.table) - size_policy = QSizePolicy(QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding) + size_policy = QSizePolicy( + QSizePolicy.Policy.Expanding, QSizePolicy.Policy.Expanding + ) cb.setSizePolicy(size_policy) cb.addItems(options) cb.setCurrentIndex(options.index(value)) diff --git a/hexrdgui/resource_loader.py b/hexrdgui/resource_loader.py index 28ffc5ca3..86c45aceb 100644 --- a/hexrdgui/resource_loader.py +++ b/hexrdgui/resource_loader.py @@ -11,7 +11,9 @@ import importlib_resources # type: ignore[no-redef] -def load_resource(module: types.ModuleType, name: str, binary: bool = False) -> str | bytes: +def load_resource( + module: types.ModuleType, name: str, binary: bool = False +) -> str | bytes: """This will return a string of a resource's contents""" if binary: return importlib_resources.read_binary(module, name) diff --git a/hexrdgui/select_grains_dialog.py b/hexrdgui/select_grains_dialog.py index 669894d7e..f90b98087 100644 --- a/hexrdgui/select_grains_dialog.py +++ b/hexrdgui/select_grains_dialog.py @@ -184,7 +184,10 @@ def grains_table(self, v: np.ndarray | None) -> None: and len(v) == self.num_requested_grains ): selection_model = view.selectionModel() - command = QItemSelectionModel.SelectionFlag.Select | QItemSelectionModel.SelectionFlag.Rows + command = ( + QItemSelectionModel.SelectionFlag.Select + | QItemSelectionModel.SelectionFlag.Rows + ) for i in range(len(v)): model_index = selection_model.model().index(i, 0) selection_model.select(model_index, command) diff --git a/hexrdgui/select_items_dialog.py b/hexrdgui/select_items_dialog.py index 7c513cfdc..58a2339b8 100644 --- a/hexrdgui/select_items_dialog.py +++ b/hexrdgui/select_items_dialog.py @@ -23,7 +23,9 @@ def __init__( self.select_items_widget = SelectItemsWidget(items, parent) layout.addWidget(self.select_items_widget.ui) - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) self.button_box = QDialogButtonBox(buttons, self) layout.addWidget(self.button_box) diff --git a/hexrdgui/simple_image_series_dialog.py b/hexrdgui/simple_image_series_dialog.py index a1775debe..a9ddae496 100644 --- a/hexrdgui/simple_image_series_dialog.py +++ b/hexrdgui/simple_image_series_dialog.py @@ -566,7 +566,13 @@ def omega_data_changed(self, row: int, column: int) -> None: 'metadata. Continue?' ) response = QMessageBox.question( - self.ui, 'HEXRD', msg, (QMessageBox.StandardButton.Yes | QMessageBox.StandardButton.No) + self.ui, + 'HEXRD', + msg, + ( + QMessageBox.StandardButton.Yes + | QMessageBox.StandardButton.No + ), ) if response == QMessageBox.StandardButton.No: self.ui.file_options.item(row, column).setText( diff --git a/hexrdgui/state.py b/hexrdgui/state.py index 6f2095b96..b895d4e5a 100644 --- a/hexrdgui/state.py +++ b/hexrdgui/state.py @@ -27,7 +27,9 @@ class H5StateLoader(yaml.SafeLoader): also whitelist a new python types. """ - def __init__(self, *pargs: Any, h5_file: h5py.File | None = None, **kwargs: Any) -> None: + def __init__( + self, *pargs: Any, h5_file: h5py.File | None = None, **kwargs: Any + ) -> None: super().__init__(*pargs, **kwargs) self.h5_file = h5_file diff --git a/hexrdgui/table_selector_widget.py b/hexrdgui/table_selector_widget.py index 7e2e306ca..49d774b6d 100644 --- a/hexrdgui/table_selector_widget.py +++ b/hexrdgui/table_selector_widget.py @@ -117,7 +117,9 @@ def __init__(self, parent: QWidget | None = None) -> None: self.set_options() - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) self.button_box = QDialogButtonBox(buttons, self) layout.addWidget(self.button_box) diff --git a/hexrdgui/tree_views/base_dict_tree_item_model.py b/hexrdgui/tree_views/base_dict_tree_item_model.py index 511ef1203..4ea8d8df5 100644 --- a/hexrdgui/tree_views/base_dict_tree_item_model.py +++ b/hexrdgui/tree_views/base_dict_tree_item_model.py @@ -4,7 +4,14 @@ from functools import partial from typing import Any -from PySide6.QtCore import QAbstractItemModel, QItemSelection, QModelIndex, QPersistentModelIndex, Qt, Signal +from PySide6.QtCore import ( + QAbstractItemModel, + QItemSelection, + QModelIndex, + QPersistentModelIndex, + Qt, + Signal, +) from PySide6.QtGui import QContextMenuEvent, QCursor from PySide6.QtWidgets import QAbstractItemView, QMenu, QMessageBox, QTreeView, QWidget @@ -59,7 +66,12 @@ def config_path(self, path: list[str | int]) -> Any: return config - def setData(self, index: QModelIndex | QPersistentModelIndex, value: Any, role: int = Qt.ItemDataRole.EditRole) -> bool: + def setData( + self, + index: QModelIndex | QPersistentModelIndex, + value: Any, + role: int = Qt.ItemDataRole.EditRole, + ) -> bool: item = self.get_item(index) # If they are identical, don't do anything @@ -88,7 +100,12 @@ def setData(self, index: QModelIndex | QPersistentModelIndex, value: Any, role: return True - def removeRows(self, row: int, count: int, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> bool: + def removeRows( + self, + row: int, + count: int, + parent: QModelIndex | QPersistentModelIndex = QModelIndex(), + ) -> bool: item = self.get_item(parent) for _ in range(count): if row >= len(item.child_items): @@ -109,7 +126,12 @@ def removeRows(self, row: int, count: int, parent: QModelIndex | QPersistentMode return True - def insertRows(self, row: int, count: int, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> bool: + def insertRows( + self, + row: int, + count: int, + parent: QModelIndex | QPersistentModelIndex = QModelIndex(), + ) -> bool: # This will not add data to the items. The data must be # added in a separate function. parent_item = self.get_item(parent) diff --git a/hexrdgui/tree_views/base_tree_item_model.py b/hexrdgui/tree_views/base_tree_item_model.py index ea424999e..d77ff2652 100644 --- a/hexrdgui/tree_views/base_tree_item_model.py +++ b/hexrdgui/tree_views/base_tree_item_model.py @@ -3,7 +3,13 @@ from collections.abc import Sequence from typing import Any, overload -from PySide6.QtCore import QAbstractItemModel, QModelIndex, QObject, QPersistentModelIndex, Qt +from PySide6.QtCore import ( + QAbstractItemModel, + QModelIndex, + QObject, + QPersistentModelIndex, + Qt, +) from hexrdgui.tree_views.tree_item import TreeItem @@ -17,7 +23,9 @@ class BaseTreeItemModel(QAbstractItemModel): # Subclasses must define root_item root_item: TreeItem - def columnCount(self, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> int: + def columnCount( + self, parent: QModelIndex | QPersistentModelIndex = QModelIndex() + ) -> int: return self.root_item.column_count() def headerData( @@ -26,12 +34,19 @@ def headerData( orientation: Qt.Orientation, role: int = Qt.ItemDataRole.DisplayRole, ) -> str | None: - if orientation == Qt.Orientation.Horizontal and role == Qt.ItemDataRole.DisplayRole: + if ( + orientation == Qt.Orientation.Horizontal + and role == Qt.ItemDataRole.DisplayRole + ): return self.root_item.data(section) return None - def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDataRole.DisplayRole) -> Any: + def data( + self, + index: QModelIndex | QPersistentModelIndex, + role: int = Qt.ItemDataRole.DisplayRole, + ) -> Any: if not index.isValid(): return @@ -41,7 +56,12 @@ def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDa item = self.get_item(index) return item.data(index.column()) - def index(self, row: int, column: int, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> QModelIndex: + def index( + self, + row: int, + column: int, + parent: QModelIndex | QPersistentModelIndex = QModelIndex(), + ) -> QModelIndex: if not self.hasIndex(row, column, parent): return QModelIndex() @@ -56,7 +76,9 @@ def index(self, row: int, column: int, parent: QModelIndex | QPersistentModelInd def parent(self) -> QObject: ... @overload def parent(self, index: QModelIndex | QPersistentModelIndex) -> QModelIndex: ... - def parent(self, index: QModelIndex | QPersistentModelIndex | None = None) -> QObject | QModelIndex: + def parent( + self, index: QModelIndex | QPersistentModelIndex | None = None + ) -> QObject | QModelIndex: if index is None: return super().parent() @@ -70,7 +92,9 @@ def parent(self, index: QModelIndex | QPersistentModelIndex | None = None) -> QO return self.createIndex(parent_item.row(), KEY_COL, parent_item) - def rowCount(self, parent: QModelIndex | QPersistentModelIndex = QModelIndex()) -> int: + def rowCount( + self, parent: QModelIndex | QPersistentModelIndex = QModelIndex() + ) -> int: parent_item = self.get_item(parent) return parent_item.child_count() diff --git a/hexrdgui/tree_views/generic_picks_tree_view.py b/hexrdgui/tree_views/generic_picks_tree_view.py index 966556dcc..a22134663 100644 --- a/hexrdgui/tree_views/generic_picks_tree_view.py +++ b/hexrdgui/tree_views/generic_picks_tree_view.py @@ -716,7 +716,9 @@ def __init__( layout.addWidget(cb) # Add a button box for accept/cancel - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) self.button_box = QDialogButtonBox(buttons, self) layout.addWidget(self.button_box) diff --git a/hexrdgui/tree_views/multi_column_dict_tree_view.py b/hexrdgui/tree_views/multi_column_dict_tree_view.py index c2b893f26..600ad912f 100644 --- a/hexrdgui/tree_views/multi_column_dict_tree_view.py +++ b/hexrdgui/tree_views/multi_column_dict_tree_view.py @@ -46,7 +46,11 @@ def __init__( self.root_item = TreeItem(['Key'] + self.column_labels) self.rebuild_tree() - def data(self, index: QModelIndex | QPersistentModelIndex, role: int = Qt.ItemDataRole.DisplayRole) -> Any: + def data( + self, + index: QModelIndex | QPersistentModelIndex, + role: int = Qt.ItemDataRole.DisplayRole, + ) -> Any: value = super().data(index, role) if isinstance(value, bool) and role == Qt.ItemDataRole.DisplayRole: diff --git a/hexrdgui/utils/const_chi.py b/hexrdgui/utils/const_chi.py index a978e163e..96a77bb89 100644 --- a/hexrdgui/utils/const_chi.py +++ b/hexrdgui/utils/const_chi.py @@ -124,7 +124,9 @@ def chi_to_angs( return angs -def calc_chi_map(sample_tilt: np.ndarray, instr: HEDMInstrument) -> dict[str, np.ndarray]: +def calc_chi_map( + sample_tilt: np.ndarray, instr: HEDMInstrument +) -> dict[str, np.ndarray]: chi = {} for det_name, panel in instr.detectors.items(): diff --git a/hexrdgui/utils/conversions.py b/hexrdgui/utils/conversions.py index 3f2ddcec1..2d9edc65a 100644 --- a/hexrdgui/utils/conversions.py +++ b/hexrdgui/utils/conversions.py @@ -95,7 +95,9 @@ def pixels_to_angles( ) -def stereo_to_angles(ij: np.ndarray, instr: HEDMInstrument, stereo_size: int) -> np.ndarray: +def stereo_to_angles( + ij: np.ndarray, instr: HEDMInstrument, stereo_size: int +) -> np.ndarray: # Returns radians return stereo_ij2ang( ij=ij, @@ -104,7 +106,9 @@ def stereo_to_angles(ij: np.ndarray, instr: HEDMInstrument, stereo_size: int) -> ) -def angles_to_stereo(angs: np.ndarray, instr: HEDMInstrument, stereo_size: int) -> np.ndarray: +def angles_to_stereo( + angs: np.ndarray, instr: HEDMInstrument, stereo_size: int +) -> np.ndarray: # angs is in radians return ang2stereo_ij( angs=angs, diff --git a/hexrdgui/waterfall_plot.py b/hexrdgui/waterfall_plot.py index 02104cd8d..ccfa5b80b 100644 --- a/hexrdgui/waterfall_plot.py +++ b/hexrdgui/waterfall_plot.py @@ -189,7 +189,9 @@ def disconnect(self) -> None: class WaterfallPlotDialog(QDialog): - def __init__(self, ax: Axes, line_data: LineData, parent: QWidget | None = None) -> None: + def __init__( + self, ax: Axes, line_data: LineData, parent: QWidget | None = None + ) -> None: super().__init__(parent) self.setWindowTitle('Waterfall Plot') @@ -229,7 +231,9 @@ def __init__(self, ax: Axes, line_data: LineData, parent: QWidget | None = None) # Add a navigation toolbar too self.toolbar = NavigationToolbar(canvas, self) - self.toolbar.setSizePolicy(QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Minimum) + self.toolbar.setSizePolicy( + QSizePolicy.Policy.Preferred, QSizePolicy.Policy.Minimum + ) layout.addWidget(self.toolbar) layout.setAlignment(self.toolbar, Qt.AlignmentFlag.AlignCenter) diff --git a/hexrdgui/xray_energy_selection_dialog.py b/hexrdgui/xray_energy_selection_dialog.py index f361d3551..84f3638ab 100644 --- a/hexrdgui/xray_energy_selection_dialog.py +++ b/hexrdgui/xray_energy_selection_dialog.py @@ -45,7 +45,9 @@ def __init__(self, parent: QWidget | None = None) -> None: self.setWindowTitle('X-Ray Energy Selection') # Add the dialog buttons - buttons = QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + buttons = ( + QDialogButtonBox.StandardButton.Ok | QDialogButtonBox.StandardButton.Cancel + ) button_box = QDialogButtonBox(buttons, self) button_box.accepted.connect(self.accept) button_box.rejected.connect(self.reject)