@@ -1517,6 +1517,9 @@ class MouseEvent(LocationEvent):
1517
1517
*step*
1518
1518
number of scroll steps (positive for 'up', negative for 'down')
1519
1519
1520
+ *modifiers*
1521
+ modifier keys depressed when mouse event triggered
1522
+
1520
1523
1521
1524
Example usage::
1522
1525
@@ -1534,9 +1537,10 @@ def on_press(event):
1534
1537
xdata = None # x coord of mouse in data coords
1535
1538
ydata = None # y coord of mouse in data coords
1536
1539
step = None # scroll steps for scroll events
1540
+ modifiers = None # depressed modifier keys
1537
1541
1538
1542
def __init__ (self , name , canvas , x , y , button = None , key = None ,
1539
- step = 0 , dblclick = False , guiEvent = None ):
1543
+ step = 0 , dblclick = False , guiEvent = None , modifiers = None ):
1540
1544
"""
1541
1545
x, y in figure coords, 0,0 = bottom, left
1542
1546
button pressed None, 1, 2, 3, 'up', 'down'
@@ -1546,6 +1550,7 @@ def __init__(self, name, canvas, x, y, button=None, key=None,
1546
1550
self .key = key
1547
1551
self .step = step
1548
1552
self .dblclick = dblclick
1553
+ self .modifiers = modifiers
1549
1554
1550
1555
def __str__ (self ):
1551
1556
return ("MPL MouseEvent: xy=(%d,%d) xydata=(%s,%s) button=%s " +
@@ -1886,7 +1891,7 @@ def scroll_event(self, x, y, step, guiEvent=None):
1886
1891
step = step , guiEvent = guiEvent )
1887
1892
self .callbacks .process (s , mouseevent )
1888
1893
1889
- def button_press_event (self , x , y , button , dblclick = False , guiEvent = None ):
1894
+ def button_press_event (self , x , y , button , dblclick = False , modifiers = None , guiEvent = None ):
1890
1895
"""
1891
1896
Backend derived classes should call this function on any mouse
1892
1897
button press. x,y are the canvas coords: 0,0 is lower, left.
@@ -1898,8 +1903,9 @@ def button_press_event(self, x, y, button, dblclick=False, guiEvent=None):
1898
1903
"""
1899
1904
self ._button = button
1900
1905
s = 'button_press_event'
1906
+
1901
1907
mouseevent = MouseEvent (s , self , x , y , button , self ._key ,
1902
- dblclick = dblclick , guiEvent = guiEvent )
1908
+ dblclick = dblclick , modifiers = modifiers , guiEvent = guiEvent )
1903
1909
self .callbacks .process (s , mouseevent )
1904
1910
1905
1911
def button_release_event (self , x , y , button , guiEvent = None ):
0 commit comments