Thanks so much guys!

This finally worked!

f=gcf()
for i in f.canvas.callbacks.callbacks:
    if i=='key_press_event':
        f.canvas.mpl_disconnect(f.canvas.callbacks.callbacks[i].keys()[0])

Thanks!
-David




Aha!  I thought you were using 1.0.  For 1.0, these things are rc 
settings; I had no idea they even existed back in 0.99.0.  I only 
tripped over "f" very recently.

The key bindings are coded in the key_press() method of 
FigureManagerBase.  The callback is connected to the canvas in the 
__init__ method.  The trick is to disconnect the callback:

fig = figure()
fig.canvas.mpl_disconnect(3)
plot([1,2,3])

Now key presses have no effect in that figure.  The bad thing here is 
that I used the cid 3, a seemingly random number.  I suspect, though, 
that once you find out what it is in your version of mpl (and it may 
still be 3), you will be able to rely on it for your purposes.  To find 
it, print out fig.canvas.callbacks.callbacks and look for 
key_press_event.  You could have your program use this dictionary to 
look it up.


Eric


------------------------------------------------------------------------------
The Palm PDK Hot Apps Program offers developers who use the
Plug-In Development Kit to bring their C/C++ apps to Palm for a share
of $1 Million in cash or HP Products. Visit us here for more details:
http://p.sf.net/sfu/dev2dev-palm
_______________________________________________
Matplotlib-users mailing list
Matplotlib-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/matplotlib-users

Reply via email to