I am using a cursor widget in an interactive Matplotlib plot like so:
cursor = Cursor(ax1, useblit=True, color='red', linewidth=1)
cid = fig.canvas.mpl_connect('button_press_event', on_click)
Works well. The on_click function takes the x,y click locations and does some supplemental plotting. Basic stuff.
When I activate the zoom tool I am also capturing the click. Is it necessary to bind an activate and deactivate key stroke to the widget a la the RectangleSelector example or does a method exist that knows the state of the toolbar items?
Example of the selector on/off from the RectangleSelector example:
def toggle_selector(event):
if event.key in ['Q','q'] and toggle_selector.RS.active:
toggle_selector.RS.set_active(False)
if event.key in ['A', 'a'] and not toggle_selector.RS.active:
toggle_selector.RS.set_active(True)