Skip to content

Commit 00fbcd1

Browse files
committed
docstrings
1 parent a270c83 commit 00fbcd1

1 file changed

Lines changed: 28 additions & 11 deletions

File tree

plotpy/events.py

Lines changed: 28 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -449,7 +449,10 @@ def gesture(self, kind, state):
449449
)
450450

451451
def wheel(self, modifiers=QC.Qt.KeyboardModifier.NoModifier):
452-
"""Création d'un filtre pour l'événement molette"""
452+
"""Create a filter for wheel events
453+
454+
Args:
455+
modifiers: keyboard modifiers to use with the wheel event"""
453456
return self.events.setdefault(("wheel", modifiers), WheelEventMatch(modifiers))
454457

455458
def nothing(self, filter, event):
@@ -866,6 +869,15 @@ def click(self, filter, event):
866869

867870

868871
class WheelHandler(QC.QObject):
872+
"""Base class for handling mouse wheel events.
873+
874+
Args:
875+
filter: event filter into which to add the handler instance.
876+
mods: Keyboard modifier that can be used at the same time as the wheel to
877+
trigger the event. Defaults to QC.Qt.KeyboardModifier.NoModifier.
878+
start_state: start state to use in the event filter state machine.
879+
Defaults to 0."""
880+
869881
def __init__(
870882
self,
871883
filter: StatefulEventFilter,
@@ -878,15 +890,17 @@ def __init__(
878890
)
879891

880892
def wheel(self, filter: StatefulEventFilter, event: QG.QWheelEvent):
881-
"""
893+
"""Handles the wheel event.
882894
883-
:param filter:
884-
:param event:
885-
"""
895+
Args:
896+
filter: event filter that contains the BasePlot instance
897+
event: the wheel event that triggered the action."""
886898
raise NotImplementedError()
887899

888900

889901
class WheelZoomHandler(WheelHandler):
902+
"""Class to handle zooming with the mouse wheel."""
903+
890904
def get_zoom_param(
891905
self, plot: BasePlot, pos: QPoint, factor: float
892906
) -> tuple[tuple[float, float, float, float], tuple[float, float, float, float]]:
@@ -917,18 +931,21 @@ def get_zoom_param(
917931
return dx, dy
918932

919933
def wheel(self, filter: StatefulEventFilter, event: QG.QWheelEvent):
920-
"""
934+
"""Overrides the WheelHandler.wheel method to handle the zooming with the mouse
935+
wheel.
921936
922-
:param filter:
923-
:param event:
937+
Args:
938+
filter: event filter that contains the BasePlot instance
939+
event: the wheel event that triggered the zooming. Use to get zoom factor
940+
and position
924941
"""
925942
plot = filter.plot
926-
delta = event.angleDelta().y() / 360
943+
zoom_factor = 1 + (event.angleDelta().y() / 360)
927944

928945
center_point = event.globalPos()
929-
center_point = filter.plot.canvas().mapFromGlobal(center_point)
946+
center_point = filter.plot.canvas().mapFromGlobal(center_point) # type: ignore
930947

931-
dx, dy = self.get_zoom_param(plot, center_point, 1 + delta)
948+
dx, dy = self.get_zoom_param(plot, center_point, zoom_factor)
932949
plot.do_zoom_view(dx, dy)
933950

934951

0 commit comments

Comments
 (0)