if and only with hw codes it works, use those
On 12/22/05, spike grobstein <[EMAIL PROTECTED]> wrote:
> >perhaps you need tab and not up arrow
>
> I'm actually using Left and Right. When I set a hw code in addition to the
> keyval, it works fine.
>
> what I'm doing (to give you a better idea of what's happening):
>
> def spoof_key_press(self, keyval, hardware_keycode):
> print "Soofing: %d" % keyval
> if self.main_window != None:
> e = gtk.gdk.Event(gtk.gdk.KEY_PRESS)
> e.state = 0
> e.keyval = keyval
> e.hardware_keycode = hardware_keycode
> e.window = self.main_window.window
> e.time = 0
> self.main_window.emit("key-press-event", e)
>
> Then I call it like:
>
> main_controller.spoof_key_press(gtk.keysyms.Right, 102)
>
> I don't have any connections defined to handle the key-press-event or
> anything, I want the system to handle it on its own. In this example, I've
> got main_controller which contains a reference to my window (main_window).
> main_window has several layout boxes in it to lay out the widgets; namely an
> HBox containing a row of buttons, then an EventBox which I'm using as a
> dynamic region, like (gets updated with different contents depending on
> what's going on... it's got a plugin-system to define this stuff).
>
> so, I want to be able to move the focus left and right in the HBox (spoofing
> the key-press-events to the HBox and its children), but then I'd like the
> ability to switch and send the spoofed key-press-events to the EventBox
> (which will trickle down to its children, or whatever) and have the plugin
> handle the events.
>
> this is strictly for when I control everything with the joystick. it's not
> really necessary when the user has keyboard/mouse control since they'll have
> a lot more control over the behavior, anyway.
>
> is this possible? (sorry for this overly-long explanation. maybe I'm just
> going about this all wrong)
>
> thanks!
>
>
>
> ...spike
>
>
> >> also, is there any way of specifying where in the widget hierarchy to
> >> start the key-pressed-event? I'd rather have some control over where the
> >> spoofed keypresses go so I can possibly do some filtering of them.
>
> >not sure what u mean, but in most cases it's from inside to outside
> >and with keypress this is the thing
>
>
>
>
>
>
> ...spike
>
--
Nikos Kouremenos | Jabber ID: [EMAIL PROTECTED] | http://members.hellug.gr/nkour
_______________________________________________
pygtk mailing list [email protected]
http://www.daa.com.au/mailman/listinfo/pygtk
Read the PyGTK FAQ: http://www.async.com.br/faq/pygtk/