@@ -249,10 +249,13 @@ def leaveEvent(self, event):
249
249
QtWidgets .QApplication .restoreOverrideCursor ()
250
250
FigureCanvasBase .leave_notify_event (self ,guiEvent = event )
251
251
252
+ def mouseEventCoords (self ,pos ):
253
+ x ,y = self .mouseEventCoords (pos )
254
+ print (x ,y )
255
+ return x ,y
256
+
252
257
def mousePressEvent (self ,event ):
253
- x = event .pos ().x ()
254
- # flipy so y=0 is bottom of canvas
255
- y = self .figure .bbox .height - event .pos ().y ()
258
+ x ,y = self .mouseEventCoords (event .pos ())
256
259
button = self .buttond .get (event .button ())
257
260
if button is not None :
258
261
FigureCanvasBase .button_press_event (self ,x ,y ,button ,
@@ -261,9 +264,7 @@ def mousePressEvent(self, event):
261
264
print ('button pressed:' ,event .button ())
262
265
263
266
def mouseDoubleClickEvent (self ,event ):
264
- x = event .pos ().x ()
265
- # flipy so y=0 is bottom of canvas
266
- y = self .figure .bbox .height - event .pos ().y ()
267
+ x ,y = self .mouseEventCoords (event .pos ())
267
268
button = self .buttond .get (event .button ())
268
269
if button is not None :
269
270
FigureCanvasBase .button_press_event (self ,x ,y ,
@@ -273,16 +274,12 @@ def mouseDoubleClickEvent(self, event):
273
274
print ('button doubleclicked:' ,event .button ())
274
275
275
276
def mouseMoveEvent (self ,event ):
276
- x = event .x ()
277
- # flipy so y=0 is bottom of canvas
278
- y = self .figure .bbox .height - event .y ()
277
+ x ,y = self .mouseEventCoords (event )
279
278
FigureCanvasBase .motion_notify_event (self ,x ,y ,guiEvent = event )
280
279
# if DEBUG: print('mouse move')
281
280
282
281
def mouseReleaseEvent (self ,event ):
283
- x = event .x ()
284
- # flipy so y=0 is bottom of canvas
285
- y = self .figure .bbox .height - event .y ()
282
+ x ,y = self .mouseEventCoords (event )
286
283
button = self .buttond .get (event .button ())
287
284
if button is not None :
288
285
FigureCanvasBase .button_release_event (self ,x ,y ,button ,
@@ -291,9 +288,7 @@ def mouseReleaseEvent(self, event):
291
288
print ('button released' )
292
289
293
290
def wheelEvent (self ,event ):
294
- x = event .x ()
295
- # flipy so y=0 is bottom of canvas
296
- y = self .figure .bbox .height - event .y ()
291
+ x ,y = self .mouseEventCoords (event )
297
292
# from QWheelEvent::delta doc
298
293
if event .pixelDelta ().x ()== 0 and event .pixelDelta ().y ()== 0 :
299
294
steps = event .angleDelta ().y ()/ 120