Skip to content

Commit 011d12f

Browse files
authored
Merge pull request #30349 from anntzer/no-axes-set_navigate_mode
Axes can't set navigate_mode.
2 parents b2e8b93 + 8355ee7 commit 011d12f

File tree

4 files changed

+11
-15
lines changed

4 files changed

+11
-15
lines changed
Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,3 @@
1+
``Axes.set_navigate_mode`` is deprecated
2+
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
3+
... with no replacement.

lib/matplotlib/axes/_base.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -724,7 +724,6 @@ def __init__(self, fig,
724724
self.fmt_ydata = None
725725

726726
self.set_navigate(True)
727-
self.set_navigate_mode(None)
728727

729728
if xscale:
730729
self.set_xscale(xscale)
@@ -4187,17 +4186,22 @@ def get_navigate_mode(self):
41874186
"""
41884187
Get the navigation toolbar button status: 'PAN', 'ZOOM', or None.
41894188
"""
4190-
return self._navigate_mode
4189+
toolbar = self.figure.canvas.toolbar
4190+
if toolbar:
4191+
return None if toolbar.mode.name == "NONE" else toolbar.mode.name
4192+
manager = self.figure.canvas.manager
4193+
if manager and manager.toolmanager:
4194+
mode = manager.toolmanager.active_toggle.get("default")
4195+
return None if mode is None else mode.upper()
41914196

4197+
@_api.deprecated("3.11")
41924198
def set_navigate_mode(self, b):
41934199
"""
41944200
Set the navigation toolbar button status.
41954201
41964202
.. warning::
41974203
This is not a user-API function.
4198-
41994204
"""
4200-
self._navigate_mode = b
42014205

42024206
def _get_view(self):
42034207
"""

lib/matplotlib/backend_bases.py

Lines changed: 0 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -2763,10 +2763,6 @@ class _Mode(str, Enum):
27632763
def __str__(self):
27642764
return self.value
27652765

2766-
@property
2767-
def _navigate_mode(self):
2768-
return self.name if self is not _Mode.NONE else None
2769-
27702766

27712767
class NavigationToolbar2:
27722768
"""
@@ -3037,8 +3033,6 @@ def pan(self, *args):
30373033
else:
30383034
self.mode = _Mode.PAN
30393035
self.canvas.widgetlock(self)
3040-
for a in self.canvas.figure.get_axes():
3041-
a.set_navigate_mode(self.mode._navigate_mode)
30423036

30433037
_PanInfo = namedtuple("_PanInfo", "button axes cid")
30443038

@@ -3099,8 +3093,6 @@ def zoom(self, *args):
30993093
else:
31003094
self.mode = _Mode.ZOOM
31013095
self.canvas.widgetlock(self)
3102-
for a in self.canvas.figure.get_axes():
3103-
a.set_navigate_mode(self.mode._navigate_mode)
31043096

31053097
_ZoomInfo = namedtuple("_ZoomInfo", "button start_xy axes cid cbar")
31063098

lib/matplotlib/backend_tools.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -668,9 +668,6 @@ def disable(self, event=None):
668668
def trigger(self, sender, event, data=None):
669669
self.toolmanager.get_tool(_views_positions).add_figure(self.figure)
670670
super().trigger(sender, event, data)
671-
new_navigate_mode = self.name.upper() if self.toggled else None
672-
for ax in self.figure.axes:
673-
ax.set_navigate_mode(new_navigate_mode)
674671

675672
def scroll_zoom(self, event):
676673
# https://gist.github.com/tacaswell/3144287

0 commit comments

Comments
 (0)
pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy