On 06/19/2012 10:03 AM, Lang Hurst wrote:
I wrote a little app awhile ago which used a bunch of hotkeys
(shortcuts, whatever they are called) like CTRL-G, ALT-N, etc. I used
something very similar to this code:
if event.state & gtk.gdk.CONTROL_MASK | gtk.gdk.MOD2_MASK:
and so on. I'm trying to re-write my old application using pyGObject
and am getting errors referencing no gdk module. Is there a quick way
of just doing:
if CTRL-B is pressed:
do_something()
Thanks.
_______________________________________________
pygtk mailing list [email protected]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/
OK, figured it out. Added this to the top of my script:
from gi.repository import Gtk, Gdk
Have this in my class init:
self.window.connect("key_press_event", self.combo_catcher)
And then have my code set up like this:
def combo_catcher(self, widget, event):
keyname = Gdk.keyval_name(event.keyval)
ctrl = event.state & Gdk.ModifierType.CONTROL_MASK
if ctrl:
print 'Control was pushed with ', keyname
got most of that from a stackoverflow post here:
http://stackoverflow.com/questions/10978447/python-gtk3-evince-viewer-how-to-reload-document
I can get to sleep now.
_______________________________________________
pygtk mailing list [email protected]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://faq.pygtk.org/