Skip to content

Commit

Permalink
style(pre-commit.ci): auto fixes [...]
Browse files Browse the repository at this point in the history
  • Loading branch information
pre-commit-ci[bot] committed Jan 21, 2025
1 parent 725b0d7 commit 9c6f9c2
Show file tree
Hide file tree
Showing 9 changed files with 65 additions and 24 deletions.
40 changes: 27 additions & 13 deletions src/ndv/controllers/_array_viewer.py
Original file line number Diff line number Diff line change
Expand Up @@ -9,10 +9,8 @@
from ndv.controllers._channel_controller import ChannelController
from ndv.models import ArrayDisplayModel, ChannelMode, DataWrapper, LUTModel
from ndv.models._data_display_model import DataResponse, _ArrayDataDisplayModel
from ndv.models._roi_model import RectangularROIModel
from ndv.models._viewer_model import ArrayViewerModel, InteractionMode
from ndv.views import _app
from ndv.views.bases._graphics._canvas_elements import RectangularROI

if TYPE_CHECKING:
from concurrent.futures import Future
Expand All @@ -22,7 +20,9 @@

from ndv._types import MouseMoveEvent
from ndv.models._array_display_model import ArrayDisplayModelKwargs
from ndv.models._roi_model import RectangularROIModel
from ndv.views.bases import HistogramCanvas
from ndv.views.bases._graphics._canvas_elements import RectangularROI

LutKey: TypeAlias = int | None

Expand Down Expand Up @@ -72,7 +72,9 @@ def __init__(
data_wrapper=data, display=display_model or ArrayDisplayModel(**kwargs)
)
self._viewer_model = ArrayViewerModel()
self._viewer_model.events.interaction_mode.connect(self._on_interaction_mode_changed)
self._viewer_model.events.interaction_mode.connect(
self._on_interaction_mode_changed
)
self._roi_model: RectangularROIModel | None = None

app = _app.gui_frontend()
Expand All @@ -96,7 +98,9 @@ def __init__(
self._canvas = canvas_cls(self._viewer_model)

self._histogram: HistogramCanvas | None = None
self._view = frontend_cls(self._canvas.frontend_widget(), self._data_model, self._viewer_model)
self._view = frontend_cls(
self._canvas.frontend_widget(), self._data_model, self._viewer_model
)

self._roi_view: RectangularROI | None = None

Expand Down Expand Up @@ -169,7 +173,7 @@ def data(self, data: Any) -> None:
else:
self._data_model.data_wrapper = DataWrapper.create(data)
self._fully_synchronize_view()

@property
def roi(self) -> RectangularROIModel | None:
return self._roi_model
Expand Down Expand Up @@ -327,31 +331,39 @@ def _on_model_channel_mode_changed(self, mode: ChannelMode) -> None:
# redraw
self._clear_canvas()
self._request_data()

def _on_roi_model_bounding_box_changed(self, bb: tuple[tuple[float, float], tuple[float, float]]) -> None:

def _on_roi_model_bounding_box_changed(
self, bb: tuple[tuple[float, float], tuple[float, float]]
) -> None:
if self._roi_view is None:
self._roi_view = self._canvas.add_bounding_box()
# HACK
self._roi_view.set_visible(True)
self._roi_view.boundingBoxChanged.connect(self._on_roi_view_bounding_box_changed)
self._roi_view.boundingBoxChanged.connect(
self._on_roi_view_bounding_box_changed
)
self._roi_view.set_bounding_box(*bb)

def _on_roi_model_visible_changed(self, visible: bool) -> None:
if self._roi_view is None:
self._roi_view = self._canvas.add_bounding_box()

Check warning on line 349 in src/ndv/controllers/_array_viewer.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/controllers/_array_viewer.py#L349

Added line #L349 was not covered by tests
# HACK
self._roi_view.set_visible(True)
self._roi_view.boundingBoxChanged.connect(self._on_roi_view_bounding_box_changed)
self._roi_view.boundingBoxChanged.connect(

Check warning on line 352 in src/ndv/controllers/_array_viewer.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/controllers/_array_viewer.py#L351-L352

Added lines #L351 - L352 were not covered by tests
self._on_roi_view_bounding_box_changed
)
self._roi_view.set_visible(visible)

def _on_interaction_mode_changed(self, mode: InteractionMode) -> None:
# TODO: Unify with _on_roi_model_bounding_box_changed
if mode == InteractionMode.CREATE_ROI:
if self._roi_view:
self._roi_view.remove()
self._roi_view = self._canvas.add_bounding_box()

Check warning on line 362 in src/ndv/controllers/_array_viewer.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/controllers/_array_viewer.py#L359-L362

Added lines #L359 - L362 were not covered by tests
# HACK
self._roi_view.boundingBoxChanged.connect(self._on_roi_view_bounding_box_changed)
self._roi_view.boundingBoxChanged.connect(

Check warning on line 364 in src/ndv/controllers/_array_viewer.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/controllers/_array_viewer.py#L364

Added line #L364 was not covered by tests
self._on_roi_view_bounding_box_changed
)

def _clear_canvas(self) -> None:
for lut_ctrl in self._lut_controllers.values():
Expand All @@ -373,8 +385,10 @@ def _on_view_visible_axes_changed(self) -> None:
def _on_view_reset_zoom_clicked(self) -> None:
"""Reset the zoom level of the canvas."""
self._canvas.set_range()

def _on_roi_view_bounding_box_changed(self, bb: tuple[tuple[float, float], tuple[float, float]]) -> None:

def _on_roi_view_bounding_box_changed(
self, bb: tuple[tuple[float, float], tuple[float, float]]
) -> None:
if self._roi_model:
self._roi_model.bounding_box = bb

Check warning on line 393 in src/ndv/controllers/_array_viewer.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/controllers/_array_viewer.py#L392-L393

Added lines #L392 - L393 were not covered by tests

Expand Down
7 changes: 6 additions & 1 deletion src/ndv/views/_jupyter/_array_view.py
Original file line number Diff line number Diff line change
Expand Up @@ -211,7 +211,12 @@ def __init__(
width = "604px"

btns = widgets.HBox(
[self._channel_mode_combo, self._ndims_btn, self._add_roi_btn, self._reset_zoom_btn],
[
self._channel_mode_combo,
self._ndims_btn,
self._add_roi_btn,
self._reset_zoom_btn,
],
layout=widgets.Layout(justify_content="flex-end"),
)
self.layout = widgets.VBox(
Expand Down
10 changes: 8 additions & 2 deletions src/ndv/views/_pygfx/_array_canvas.py
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,17 @@
import pygfx
import pylinalg as la

from ndv._types import CursorType, MouseButton, MouseMoveEvent, MousePressEvent, MouseReleaseEvent
from ndv._types import (
CursorType,
MouseButton,
MouseMoveEvent,
MousePressEvent,
MouseReleaseEvent,
)
from ndv.models._viewer_model import ArrayViewerModel, InteractionMode
from ndv.views._app import filter_mouse_events
from ndv.views.bases import ArrayCanvas, CanvasElement, ImageHandle
from ndv.views.bases._graphics._canvas_elements import ROIMoveMode, RectangularROI
from ndv.views.bases._graphics._canvas_elements import RectangularROI, ROIMoveMode

if TYPE_CHECKING:
from collections.abc import Sequence
Expand Down
6 changes: 4 additions & 2 deletions src/ndv/views/_qt/_app.py
Original file line number Diff line number Diff line change
Expand Up @@ -82,7 +82,7 @@ def __init__(self, canvas: QObject, receiver: Mouseable):
self.receiver = receiver
self.active_button = MouseButton.NONE

def mouse_btn(self, btn : Any) -> MouseButton:
def mouse_btn(self, btn: Any) -> MouseButton:
from qtpy.QtCore import Qt

Check warning on line 86 in src/ndv/views/_qt/_app.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/views/_qt/_app.py#L86

Added line #L86 was not covered by tests

if btn == Qt.MouseButton.LeftButton:
Expand Down Expand Up @@ -128,7 +128,9 @@ def eventFilter(self, obj: QObject | None, qevent: QEvent | None) -> bool:
intercept |= receiver.on_mouse_press(mpe)
receiver.mousePressed.emit(mpe)
elif etype == QEvent.Type.MouseButtonRelease:
mre = MouseReleaseEvent(x=pos.x(), y=pos.y(), btn=self.active_button)
mre = MouseReleaseEvent(

Check warning on line 131 in src/ndv/views/_qt/_app.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/views/_qt/_app.py#L131

Added line #L131 was not covered by tests
x=pos.x(), y=pos.y(), btn=self.active_button
)
self.active_button = MouseButton.NONE

Check warning on line 134 in src/ndv/views/_qt/_app.py

View check run for this annotation

Codecov / codecov/patch

src/ndv/views/_qt/_app.py#L134

Added line #L134 was not covered by tests
intercept |= receiver.on_mouse_release(mre)
receiver.mouseReleased.emit(mre)
Expand Down
7 changes: 5 additions & 2 deletions src/ndv/views/_qt/_array_view.py
Original file line number Diff line number Diff line change
Expand Up @@ -29,7 +29,6 @@
from ndv.models._array_display_model import ChannelMode
from ndv.models._viewer_model import ArrayViewerModel, InteractionMode
from ndv.views.bases import ArrayView, LutView
from ndv.views.bases._graphics._canvas_elements import CanvasElement, RectangularROI

if TYPE_CHECKING:
from collections.abc import Container, Hashable, Mapping, Sequence
Expand All @@ -39,6 +38,7 @@

from ndv._types import AxisKey
from ndv.models._data_display_model import _ArrayDataDisplayModel
from ndv.views.bases._graphics._canvas_elements import CanvasElement, RectangularROI

SLIDER_STYLE = """
QSlider::groove:horizontal {
Expand Down Expand Up @@ -411,7 +411,10 @@ def closeEvent(self, a0: Any) -> None:

class QtArrayView(ArrayView):
def __init__(
self, canvas_widget: QWidget, data_model: _ArrayDataDisplayModel, viewer_model: ArrayViewerModel
self,
canvas_widget: QWidget,
data_model: _ArrayDataDisplayModel,
viewer_model: ArrayViewerModel,
) -> None:
self._data_model = data_model
self._viewer_model = viewer_model
Expand Down
8 changes: 7 additions & 1 deletion src/ndv/views/_vispy/_array_canvas.py
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,13 @@
from vispy import scene
from vispy.util.quaternion import Quaternion

from ndv._types import CursorType, MouseButton, MouseMoveEvent, MousePressEvent, MouseReleaseEvent
from ndv._types import (
CursorType,
MouseButton,
MouseMoveEvent,
MousePressEvent,
MouseReleaseEvent,
)
from ndv.models._viewer_model import ArrayViewerModel, InteractionMode
from ndv.views._app import filter_mouse_events
from ndv.views.bases import ArrayCanvas
Expand Down
6 changes: 5 additions & 1 deletion src/ndv/views/bases/_array_view.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,7 +36,11 @@ class ArrayView(Viewable):
# model: _ArrayDataDisplayModel is likely a temporary parameter
@abstractmethod
def __init__(
self, canvas_widget: Any, model: _ArrayDataDisplayModel, viewer_model: ArrayViewerModel, **kwargs: Any
self,
canvas_widget: Any,
model: _ArrayDataDisplayModel,
viewer_model: ArrayViewerModel,
**kwargs: Any,
) -> None: ...
@abstractmethod
def create_sliders(self, coords: Mapping[int, Sequence]) -> None: ...
Expand Down
3 changes: 2 additions & 1 deletion src/ndv/views/bases/_graphics/_canvas.py
Original file line number Diff line number Diff line change
Expand Up @@ -13,9 +13,10 @@
if TYPE_CHECKING:
import numpy as np

from ._canvas_elements import CanvasElement, ImageHandle, RectangularROI
from ndv.models._viewer_model import ArrayViewerModel

from ._canvas_elements import CanvasElement, ImageHandle, RectangularROI


class GraphicsCanvas(Viewable, Mouseable):
"""ABC for graphics canvas providers."""
Expand Down
2 changes: 1 addition & 1 deletion src/ndv/views/bases/_graphics/_canvas_elements.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

from abc import abstractmethod
from enum import Enum, auto
from typing import TYPE_CHECKING, Any
from typing import TYPE_CHECKING

from psygnal import Signal

Expand Down

0 comments on commit 9c6f9c2

Please sign in to comment.