@@ -2391,64 +2391,47 @@ def key_press_handler(event, canvas=None, toolbar=None):
23912391 back-compatibility, but, if set, should always be equal to
23922392 ``event.canvas.toolbar``.
23932393 """
2394- # these bindings happen whether you are over an Axes or not
2395-
23962394 if event .key is None :
23972395 return
23982396 if canvas is None :
23992397 canvas = event .canvas
24002398 if toolbar is None :
24012399 toolbar = canvas .toolbar
24022400
2403- # Load key-mappings from rcParams.
2404- fullscreen_keys = rcParams ['keymap.fullscreen' ]
2405- home_keys = rcParams ['keymap.home' ]
2406- back_keys = rcParams ['keymap.back' ]
2407- forward_keys = rcParams ['keymap.forward' ]
2408- pan_keys = rcParams ['keymap.pan' ]
2409- zoom_keys = rcParams ['keymap.zoom' ]
2410- save_keys = rcParams ['keymap.save' ]
2411- quit_keys = rcParams ['keymap.quit' ]
2412- quit_all_keys = rcParams ['keymap.quit_all' ]
2413- grid_keys = rcParams ['keymap.grid' ]
2414- grid_minor_keys = rcParams ['keymap.grid_minor' ]
2415- toggle_yscale_keys = rcParams ['keymap.yscale' ]
2416- toggle_xscale_keys = rcParams ['keymap.xscale' ]
2417-
2418- # toggle fullscreen mode ('f', 'ctrl + f')
2419- if event .key in fullscreen_keys :
2401+ # toggle fullscreen mode (default key 'f', 'ctrl + f')
2402+ if event .key in rcParams ['keymap.fullscreen' ]:
24202403 try :
24212404 canvas .manager .full_screen_toggle ()
24222405 except AttributeError :
24232406 pass
24242407
24252408 # quit the figure (default key 'ctrl+w')
2426- if event .key in quit_keys :
2409+ if event .key in rcParams [ 'keymap.quit' ] :
24272410 Gcf .destroy_fig (canvas .figure )
2428- if event .key in quit_all_keys :
2411+ if event .key in rcParams [ 'keymap.quit_all' ] :
24292412 Gcf .destroy_all ()
24302413
24312414 if toolbar is not None :
24322415 # home or reset mnemonic (default key 'h', 'home' and 'r')
2433- if event .key in home_keys :
2416+ if event .key in rcParams [ 'keymap.home' ] :
24342417 toolbar .home ()
24352418 # forward / backward keys to enable left handed quick navigation
24362419 # (default key for backward: 'left', 'backspace' and 'c')
2437- elif event .key in back_keys :
2420+ elif event .key in rcParams [ 'keymap.back' ] :
24382421 toolbar .back ()
24392422 # (default key for forward: 'right' and 'v')
2440- elif event .key in forward_keys :
2423+ elif event .key in rcParams [ 'keymap.forward' ] :
24412424 toolbar .forward ()
24422425 # pan mnemonic (default key 'p')
2443- elif event .key in pan_keys :
2426+ elif event .key in rcParams [ 'keymap.pan' ] :
24442427 toolbar .pan ()
24452428 toolbar ._update_cursor (event )
24462429 # zoom mnemonic (default key 'o')
2447- elif event .key in zoom_keys :
2430+ elif event .key in rcParams [ 'keymap.zoom' ] :
24482431 toolbar .zoom ()
24492432 toolbar ._update_cursor (event )
24502433 # saving current figure (default key 's')
2451- elif event .key in save_keys :
2434+ elif event .key in rcParams [ 'keymap.save' ] :
24522435 toolbar .save_figure ()
24532436
24542437 if event .inaxes is None :
@@ -2458,19 +2441,16 @@ def key_press_handler(event, canvas=None, toolbar=None):
24582441 def _get_uniform_gridstate (ticks ):
24592442 # Return True/False if all grid lines are on or off, None if they are
24602443 # not all in the same state.
2461- if all (tick .gridline .get_visible () for tick in ticks ):
2462- return True
2463- elif not any (tick .gridline .get_visible () for tick in ticks ):
2464- return False
2465- else :
2466- return None
2444+ return (True if all (tick .gridline .get_visible () for tick in ticks ) else
2445+ False if not any (tick .gridline .get_visible () for tick in ticks ) else
2446+ None )
24672447
24682448 ax = event .inaxes
24692449 # toggle major grids in current Axes (default key 'g')
24702450 # Both here and below (for 'G'), we do nothing if *any* grid (major or
24712451 # minor, x or y) is not in a uniform state, to avoid messing up user
24722452 # customization.
2473- if (event .key in grid_keys
2453+ if (event .key in rcParams [ 'keymap.grid' ]
24742454 # Exclude minor grids not in a uniform state.
24752455 and None not in [_get_uniform_gridstate (ax .xaxis .minorTicks ),
24762456 _get_uniform_gridstate (ax .yaxis .minorTicks )]):
@@ -2489,7 +2469,7 @@ def _get_uniform_gridstate(ticks):
24892469 ax .grid (y_state , which = "major" if y_state else "both" , axis = "y" )
24902470 canvas .draw_idle ()
24912471 # toggle major and minor grids in current Axes (default key 'G')
2492- if (event .key in grid_minor_keys
2472+ if (event .key in rcParams [ 'keymap.grid_minor' ]
24932473 # Exclude major grids not in a uniform state.
24942474 and None not in [_get_uniform_gridstate (ax .xaxis .majorTicks ),
24952475 _get_uniform_gridstate (ax .yaxis .majorTicks )]):
@@ -2507,7 +2487,7 @@ def _get_uniform_gridstate(ticks):
25072487 ax .grid (y_state , which = "both" , axis = "y" )
25082488 canvas .draw_idle ()
25092489 # toggle scaling of y-axes between 'log and 'linear' (default key 'l')
2510- elif event .key in toggle_yscale_keys :
2490+ elif event .key in rcParams [ 'keymap.yscale' ] :
25112491 scale = ax .get_yscale ()
25122492 if scale == 'log' :
25132493 ax .set_yscale ('linear' )
@@ -2520,7 +2500,7 @@ def _get_uniform_gridstate(ticks):
25202500 ax .set_yscale ('linear' )
25212501 ax .figure .canvas .draw_idle ()
25222502 # toggle scaling of x-axes between 'log and 'linear' (default key 'k')
2523- elif event .key in toggle_xscale_keys :
2503+ elif event .key in rcParams [ 'keymap.xscale' ] :
25242504 scalex = ax .get_xscale ()
25252505 if scalex == 'log' :
25262506 ax .set_xscale ('linear' )
0 commit comments