MCPcopy Index your code
hub / github.com/matplotlib/matplotlib / _press

Method _press

lib/matplotlib/backend_tools.py:724–756  ·  view source on GitHub ↗

Callback for mouse button presses in zoom-to-rectangle mode.

(self, event)

Source from the content-addressed store, hash-verified

722 return
723
724 def _press(self, event):
725 """Callback for mouse button presses in zoom-to-rectangle mode."""
726
727 # If we're already in the middle of a zoom, pressing another
728 # button works to "cancel"
729 if self._ids_zoom:
730 self._cancel_action()
731
732 if event.button == 1:
733 self._button_pressed = 1
734 elif event.button == 3:
735 self._button_pressed = 3
736 else:
737 self._cancel_action()
738 return
739
740 x, y = event.x, event.y
741
742 self._xypress = []
743 for i, a in enumerate(self.figure.get_axes()):
744 if (x is not None and y is not None and a.in_axes(event) and
745 a.get_navigate() and a.can_zoom()):
746 self._xypress.append((x, y, a, i, a._get_view()))
747
748 id1 = self.figure.canvas.mpl_connect(
749 'motion_notify_event', self._mouse_move)
750 id2 = self.figure.canvas.mpl_connect(
751 'key_press_event', self._switch_on_zoom_mode)
752 id3 = self.figure.canvas.mpl_connect(
753 'key_release_event', self._switch_off_zoom_mode)
754
755 self._ids_zoom = id1, id2, id3
756 self._zoom_mode = event.key
757
758 def _switch_on_zoom_mode(self, event):
759 self._zoom_mode = event.key

Callers

nothing calls this directly

Calls 6

_cancel_actionMethod · 0.95
in_axesMethod · 0.80
get_navigateMethod · 0.80
mpl_connectMethod · 0.80
can_zoomMethod · 0.45
_get_viewMethod · 0.45

Tested by

no test coverage detected