Hello,

After some code searching (Use the Source Luke), I determined how to 
finally hook in my own kepressevent handlers for the body pane in a 
reliable fashion.  But I had to put in a hack in the EventFilter system, to 
pass on every key press event to global dispatcher that I created. 
 Otherwise, no matter what I did, I would not get consistently called event 
handlers.

Sure it works, but I am not sure if there is a way for me to reliably 
capture keypress events in the body pane without this hack?

Here is what I did:

In the eventFilter method, of the LeoQtEventFilter class:


        if self.keyIsActive:
            #2017-07-04: change made by me under this comment
            try:
                g.user_dict['my_key_dispatcher'](event)
            except Exception as e:
                g.red(e)
                g.red("My Key Dispatcher has not been instantiated, 
qt_events.py")
            #--

g.user_dict['my_key_dispatcher'] is a function defined at startup in 
myLeoSettings.  It runs through a list of handlers I can add or remove at 
anytime.

Yes, it works, but ugly.

Is there a non-hack way to get all key press events from the body pane?

Thanks,
Adrian

-- 
You received this message because you are subscribed to the Google Groups 
"leo-editor" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/leo-editor.
For more options, visit https://groups.google.com/d/optout.

Reply via email to