Implement the default Matplotlib key bindings for the canvas and toolbar described at :ref:`key-event-handling`. Parameters ---------- event : `KeyEvent` A key press/release event. canvas : `FigureCanvasBase`, default: ``event.canvas`` The backend-specific c
(event, canvas=None, toolbar=None)
| 2473 | |
| 2474 | |
| 2475 | def key_press_handler(event, canvas=None, toolbar=None): |
| 2476 | """ |
| 2477 | Implement the default Matplotlib key bindings for the canvas and toolbar |
| 2478 | described at :ref:`key-event-handling`. |
| 2479 | |
| 2480 | Parameters |
| 2481 | ---------- |
| 2482 | event : `KeyEvent` |
| 2483 | A key press/release event. |
| 2484 | canvas : `FigureCanvasBase`, default: ``event.canvas`` |
| 2485 | The backend-specific canvas instance. This parameter is kept for |
| 2486 | back-compatibility, but, if set, should always be equal to |
| 2487 | ``event.canvas``. |
| 2488 | toolbar : `NavigationToolbar2`, default: ``event.canvas.toolbar`` |
| 2489 | The navigation cursor toolbar. This parameter is kept for |
| 2490 | back-compatibility, but, if set, should always be equal to |
| 2491 | ``event.canvas.toolbar``. |
| 2492 | """ |
| 2493 | if event.key is None: |
| 2494 | return |
| 2495 | if canvas is None: |
| 2496 | canvas = event.canvas |
| 2497 | if toolbar is None: |
| 2498 | toolbar = canvas.toolbar |
| 2499 | |
| 2500 | # toggle fullscreen mode (default key 'f', 'ctrl + f') |
| 2501 | if event.key in rcParams['keymap.fullscreen']: |
| 2502 | try: |
| 2503 | canvas.manager.full_screen_toggle() |
| 2504 | except AttributeError: |
| 2505 | pass |
| 2506 | |
| 2507 | # quit the figure (default key 'ctrl+w') |
| 2508 | if event.key in rcParams['keymap.quit']: |
| 2509 | Gcf.destroy_fig(canvas.figure) |
| 2510 | if event.key in rcParams['keymap.quit_all']: |
| 2511 | Gcf.destroy_all() |
| 2512 | |
| 2513 | if toolbar is not None: |
| 2514 | # home or reset mnemonic (default key 'h', 'home' and 'r') |
| 2515 | if event.key in rcParams['keymap.home']: |
| 2516 | toolbar.home() |
| 2517 | # forward / backward keys to enable left handed quick navigation |
| 2518 | # (default key for backward: 'left', 'backspace' and 'c') |
| 2519 | elif event.key in rcParams['keymap.back']: |
| 2520 | toolbar.back() |
| 2521 | # (default key for forward: 'right' and 'v') |
| 2522 | elif event.key in rcParams['keymap.forward']: |
| 2523 | toolbar.forward() |
| 2524 | # pan mnemonic (default key 'p') |
| 2525 | elif event.key in rcParams['keymap.pan']: |
| 2526 | toolbar.pan() |
| 2527 | toolbar._update_cursor(event) |
| 2528 | # zoom mnemonic (default key 'o') |
| 2529 | elif event.key in rcParams['keymap.zoom']: |
| 2530 | toolbar.zoom() |
| 2531 | toolbar._update_cursor(event) |
| 2532 | # saving current figure (default key 's') |
nothing calls this directly
no test coverage detected
searching dependent graphs…