]> Dogcows Code - chaz/openbox/blobdiff - otk/eventdispatcher.hh
lets make it compile at least
[chaz/openbox] / otk / eventdispatcher.hh
index 5e7a1fe484fff6400aa84a7005879c64d567cb07..a55b5b82824666573249b0cbd5302ea47ae10941 100644 (file)
@@ -16,18 +16,34 @@ public:
   virtual ~OtkEventDispatcher();
 
   virtual void clearAllHandlers(void);
-  virtual void registerHandler(Window id, OtkEventHandler *handler);
+  virtual void registerHandler(Window id, otk::OtkEventHandler *handler);
   virtual void clearHandler(Window id);
   virtual void dispatchEvents(void);
 
-  inline void setFallbackHandler(OtkEventHandler *fallback)
+  inline void setFallbackHandler(otk::OtkEventHandler *fallback)
   { _fallback = fallback; }
-  OtkEventHandler *getFallbackHandler(void) const { return _fallback; }
+  otk::OtkEventHandler *getFallbackHandler(void) const { return _fallback; }
 
+  //! Sets an event handler that gets all events for all handlers after
+  //! any specific handlers have received them
+  inline void setMasterHandler(otk::OtkEventHandler *master)
+  { _master = master; }
+  otk::OtkEventHandler *getMasterHandler(void) const { return _master; }
+
+  otk::OtkEventHandler *findHandler(Window win);
+  
 private:
   OtkEventMap _map;
   OtkEventHandler *_fallback;
+  OtkEventHandler *_master;
+  Window _focus;
+  XEvent _focus_e;
+  XEvent _crossing_e;
+
+  //! The time at which the last XEvent with a time was received
+  Time _lasttime; // XXX: store this! also provide an accessor!
 
+  void dispatch(const XEvent &e);
 };
 
 }
This page took 0.024634 seconds and 4 git commands to generate.