X-Git-Url: https://git.saurik.com/wxWidgets.git/blobdiff_plain/af57c51ab758ad9810ea5bbb3703341cd5f367b1..80cc5fc7ad102221a1ce9e160eac3c29a0586664:/include/wx/private/fdiodispatcher.h?ds=sidebyside diff --git a/include/wx/private/fdiodispatcher.h b/include/wx/private/fdiodispatcher.h index 40e9982e23..e7f367c1ff 100644 --- a/include/wx/private/fdiodispatcher.h +++ b/include/wx/private/fdiodispatcher.h @@ -45,6 +45,18 @@ class WXDLLIMPEXP_BASE wxFDIODispatcher public: enum { TIMEOUT_INFINITE = -1 }; + // return the global dispatcher to be used for IO events, can be NULL only + // if wxSelectDispatcher wasn't compiled into the library at all as + // creating it never fails + // + // don't delete the returned pointer + static wxFDIODispatcher *Get(); + + // if we have any registered handlers, check for any pending events to them + // and dispatch them -- this is used from wxX11 and wxDFB event loops + // implementation + static void DispatchPending(); + // register handler for the given descriptor with the dispatcher, return // true on success or false on error virtual bool RegisterFD(int fd, wxFDIOHandler *handler, int flags) = 0; @@ -55,8 +67,10 @@ public: // unregister descriptor previously registered with RegisterFD() virtual bool UnregisterFD(int fd) = 0; - // loops waiting for an event to happen on any of the descriptors - virtual void RunLoop(int timeout) = 0; + // wait for an event for at most timeout milliseconds and process it; + // return true if we processed any events or false if timeout expired + // without anything happening + virtual bool Dispatch(int timeout = TIMEOUT_INFINITE) = 0; virtual ~wxFDIODispatcher() { } };