class CBEvent(QEvent): # allocate an event ID# EVENT_TYPE = QEvent.Type(QEvent.registerEventType()) def __init__(self, result): QEvent.__init__(self, self.EVENT_TYPE) self.result = result
class InvokeEvent(QEvent): """ Generic callable containing QEvent """ EVENT_TYPE = QEvent.Type(QEvent.registerEventType()) def __init__(self, fn, *args, **kwargs): QEvent.__init__(self, InvokeEvent.EVENT_TYPE) self.fn = fn self.args = args self.kwargs = kwargs
class CallEvent(QEvent): """An event containing a request for a function call.""" EVENT_TYPE = QEvent.Type(QEvent.registerEventType()) def __init__(self, queue, exceptions_in_main, fn, *args, **kwargs): QEvent.__init__(self, self.EVENT_TYPE) self.fn = fn self.args = args self.kwargs = kwargs self._returnval = queue # Whether to raise exceptions in the main thread or store them # for raising in the calling thread: self._exceptions_in_main = exceptions_in_main
from .app import qtApp from .event import CallbackEvent from .event import EventSpy from qtpy.QtCore import QEvent from .rxtool import QtUiScheduler QEvent.registerEventType(CallbackEvent.typeid)