]> git.saurik.com Git - wxWidgets.git/blobdiff - include/wx/private/fdiodispatcher.h
Have wxPGTextCtrlEditor::UpdateControl() update wxTextCtrl font boldness based on...
[wxWidgets.git] / include / wx / private / fdiodispatcher.h
index 40e9982e23499b7cba0ac4805b8307dab558d23f..e7f367c1ffa42acc05d5231743abb203482bfa57 100644 (file)
@@ -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() { }
 };