@@ -2385,64 +2385,47 @@ def key_press_handler(event, canvas=None, toolbar=None):
23852385 back-compatibility, but, if set, should always be equal to
23862386 ``event.canvas.toolbar``.
23872387 """
2388- # these bindings happen whether you are over an Axes or not
2389-
23902388 if event .key is None :
23912389 return
23922390 if canvas is None :
23932391 canvas = event .canvas
23942392 if toolbar is None :
23952393 toolbar = canvas .toolbar
23962394
2397- # Load key-mappings from rcParams.
2398- fullscreen_keys = rcParams ['keymap.fullscreen' ]
2399- home_keys = rcParams ['keymap.home' ]
2400- back_keys = rcParams ['keymap.back' ]
2401- forward_keys = rcParams ['keymap.forward' ]
2402- pan_keys = rcParams ['keymap.pan' ]
2403- zoom_keys = rcParams ['keymap.zoom' ]
2404- save_keys = rcParams ['keymap.save' ]
2405- quit_keys = rcParams ['keymap.quit' ]
2406- quit_all_keys = rcParams ['keymap.quit_all' ]
2407- grid_keys = rcParams ['keymap.grid' ]
2408- grid_minor_keys = rcParams ['keymap.grid_minor' ]
2409- toggle_yscale_keys = rcParams ['keymap.yscale' ]
2410- toggle_xscale_keys = rcParams ['keymap.xscale' ]
2411-
2412- # toggle fullscreen mode ('f', 'ctrl + f')
2413- if event .key in fullscreen_keys :
2395+ # toggle fullscreen mode (default key 'f', 'ctrl + f')
2396+ if event .key in rcParams ['keymap.fullscreen' ]:
24142397 try :
24152398 canvas .manager .full_screen_toggle ()
24162399 except AttributeError :
24172400 pass
24182401
24192402 # quit the figure (default key 'ctrl+w')
2420- if event .key in quit_keys :
2403+ if event .key in rcParams [ 'keymap.quit' ] :
24212404 Gcf .destroy_fig (canvas .figure )
2422- if event .key in quit_all_keys :
2405+ if event .key in rcParams [ 'keymap.quit_all' ] :
24232406 Gcf .destroy_all ()
24242407
24252408 if toolbar is not None :
24262409 # home or reset mnemonic (default key 'h', 'home' and 'r')
2427- if event .key in home_keys :
2410+ if event .key in rcParams [ 'keymap.home' ] :
24282411 toolbar .home ()
24292412 # forward / backward keys to enable left handed quick navigation
24302413 # (default key for backward: 'left', 'backspace' and 'c')
2431- elif event .key in back_keys :
2414+ elif event .key in rcParams [ 'keymap.back' ] :
24322415 toolbar .back ()
24332416 # (default key for forward: 'right' and 'v')
2434- elif event .key in forward_keys :
2417+ elif event .key in rcParams [ 'keymap.forward' ] :
24352418 toolbar .forward ()
24362419 # pan mnemonic (default key 'p')
2437- elif event .key in pan_keys :
2420+ elif event .key in rcParams [ 'keymap.pan' ] :
24382421 toolbar .pan ()
24392422 toolbar ._update_cursor (event )
24402423 # zoom mnemonic (default key 'o')
2441- elif event .key in zoom_keys :
2424+ elif event .key in rcParams [ 'keymap.zoom' ] :
24422425 toolbar .zoom ()
24432426 toolbar ._update_cursor (event )
24442427 # saving current figure (default key 's')
2445- elif event .key in save_keys :
2428+ elif event .key in rcParams [ 'keymap.save' ] :
24462429 toolbar .save_figure ()
24472430
24482431 if event .inaxes is None :
@@ -2452,19 +2435,16 @@ def key_press_handler(event, canvas=None, toolbar=None):
24522435 def _get_uniform_gridstate (ticks ):
24532436 # Return True/False if all grid lines are on or off, None if they are
24542437 # not all in the same state.
2455- if all (tick .gridline .get_visible () for tick in ticks ):
2456- return True
2457- elif not any (tick .gridline .get_visible () for tick in ticks ):
2458- return False
2459- else :
2460- return None
2438+ return (True if all (tick .gridline .get_visible () for tick in ticks ) else
2439+ False if not any (tick .gridline .get_visible () for tick in ticks ) else
2440+ None )
24612441
24622442 ax = event .inaxes
24632443 # toggle major grids in current Axes (default key 'g')
24642444 # Both here and below (for 'G'), we do nothing if *any* grid (major or
24652445 # minor, x or y) is not in a uniform state, to avoid messing up user
24662446 # customization.
2467- if (event .key in grid_keys
2447+ if (event .key in rcParams [ 'keymap.grid' ]
24682448 # Exclude minor grids not in a uniform state.
24692449 and None not in [_get_uniform_gridstate (ax .xaxis .minorTicks ),
24702450 _get_uniform_gridstate (ax .yaxis .minorTicks )]):
@@ -2483,7 +2463,7 @@ def _get_uniform_gridstate(ticks):
24832463 ax .grid (y_state , which = "major" if y_state else "both" , axis = "y" )
24842464 canvas .draw_idle ()
24852465 # toggle major and minor grids in current Axes (default key 'G')
2486- if (event .key in grid_minor_keys
2466+ if (event .key in rcParams [ 'keymap.grid_minor' ]
24872467 # Exclude major grids not in a uniform state.
24882468 and None not in [_get_uniform_gridstate (ax .xaxis .majorTicks ),
24892469 _get_uniform_gridstate (ax .yaxis .majorTicks )]):
@@ -2501,7 +2481,7 @@ def _get_uniform_gridstate(ticks):
25012481 ax .grid (y_state , which = "both" , axis = "y" )
25022482 canvas .draw_idle ()
25032483 # toggle scaling of y-axes between 'log and 'linear' (default key 'l')
2504- elif event .key in toggle_yscale_keys :
2484+ elif event .key in rcParams [ 'keymap.yscale' ] :
25052485 scale = ax .get_yscale ()
25062486 if scale == 'log' :
25072487 ax .set_yscale ('linear' )
@@ -2514,7 +2494,7 @@ def _get_uniform_gridstate(ticks):
25142494 ax .set_yscale ('linear' )
25152495 ax .figure .canvas .draw_idle ()
25162496 # toggle scaling of x-axes between 'log and 'linear' (default key 'k')
2517- elif event .key in toggle_xscale_keys :
2497+ elif event .key in rcParams [ 'keymap.xscale' ] :
25182498 scalex = ax .get_xscale ()
25192499 if scalex == 'log' :
25202500 ax .set_xscale ('linear' )
0 commit comments