@@ -1418,17 +1418,6 @@ def __init__(self, name, canvas, x, y, button=None, key=None,
1418
1418
self .step = step
1419
1419
self .dblclick = dblclick
1420
1420
1421
- def _process (self ):
1422
- if self .name == "button_press_event" :
1423
- self .canvas ._button = self .button
1424
- elif self .name == "button_release_event" :
1425
- self .canvas ._button = None
1426
- elif self .name == "motion_notify_event" and self .button is None :
1427
- self .button = self .canvas ._button
1428
- if self .key is None :
1429
- self .key = self .canvas ._key
1430
- super ()._process ()
1431
-
1432
1421
def __str__ (self ):
1433
1422
return (f"{ self .name } : "
1434
1423
f"xy=({ self .x } , { self .y } ) xydata=({ self .xdata } , { self .ydata } ) "
@@ -1521,28 +1510,41 @@ def __init__(self, name, canvas, key, x=0, y=0, guiEvent=None):
1521
1510
super ().__init__ (name , canvas , x , y , guiEvent = guiEvent )
1522
1511
self .key = key
1523
1512
1524
- def _process (self ):
1525
- if self .name == "key_press_event" :
1526
- self .canvas ._key = self .key
1527
- elif self .name == "key_release_event" :
1528
- self .canvas ._key = None
1529
- super ()._process ()
1530
1513
1531
-
1532
- def _axes_enter_leave_emitter (event ):
1533
- last = LocationEvent .lastevent
1534
- last_axes = last .inaxes if last is not None else None
1535
- if last_axes != event .inaxes :
1536
- if last_axes is not None :
1537
- try :
1538
- last .canvas .callbacks .process ("axes_leave_event" , last )
1539
- except Exception :
1540
- # The last canvas may already have been torn down.
1541
- pass
1542
- if event .inaxes is not None :
1543
- event .canvas .callbacks .process ("axes_enter_event" , event )
1544
- LocationEvent .lastevent = (
1545
- None if event .name == "figure_leave_event" else event )
1514
+ # Default callback for key events.
1515
+ def _key_handler (event ):
1516
+ # Dead reckoning of key.
1517
+ if event .name == "key_press_event" :
1518
+ event .canvas ._key = event .key
1519
+ elif event .name == "key_release_event" :
1520
+ event .canvas ._key = None
1521
+
1522
+
1523
+ # Default callback for mouse events.
1524
+ def _mouse_handler (event ):
1525
+ # Dead-reckoning of button and key.
1526
+ if event .name == "button_press_event" :
1527
+ event .canvas ._button = event .button
1528
+ elif event .name == "button_release_event" :
1529
+ event .canvas ._button = None
1530
+ elif event .name == "motion_notify_event" and event .button is None :
1531
+ event .button = event .canvas ._button
1532
+ if event .key is None :
1533
+ event .key = event .canvas ._key
1534
+ # Emit axes_enter/axes_leave.
1535
+ if event .name == "motion_notify_event" :
1536
+ last = LocationEvent .lastevent
1537
+ last_axes = last .inaxes if last is not None else None
1538
+ if last_axes != event .inaxes :
1539
+ if last_axes is not None :
1540
+ try :
1541
+ last .canvas .callbacks .process ("axes_leave_event" , last )
1542
+ except Exception :
1543
+ pass # The last canvas may already have been torn down.
1544
+ if event .inaxes is not None :
1545
+ event .canvas .callbacks .process ("axes_enter_event" , event )
1546
+ LocationEvent .lastevent = (
1547
+ None if event .name == "figure_leave_event" else event )
1546
1548
1547
1549
1548
1550
def _get_renderer (figure , print_method = None ):
0 commit comments