code: def __onMouseButtonEvent(self, event=None):
          
          if event is None:
              return
          button = event.button or 1
  
          handlers = {(1, 'button_press_event'):   self.onLeftDown,
                      (1, 'button_release_event'): self.onLeftUp,
                      (3, 'button_press_event'):   self.onRightDown,
                      }
          # (3,'button_release_event'): self.onRightUp}
  
          handle_event = handlers.get((button, event.name), None)
          if hasattr(handle_event, '__call__'):
              handle_event(event)
          event.guiEvent.Skip()
docs: general mouse press/release events. Here, event is
          a MplEvent from matplotlib.  This routine just dispatches
          to the appropriate onLeftDown, onLeftUp, onRightDown, onRightUp....
          methods.