]> Dogcows Code - chaz/openbox/blobdiff - otk/eventdispatcher.hh
show desktop mode works!
[chaz/openbox] / otk / eventdispatcher.hh
index b56445a4bbda18d3da599ebcabf09f505254d606..03f362993628cd7ed4367b68d1248b358d251e8b 100644 (file)
@@ -1,3 +1,4 @@
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
 #ifndef __eventdispatcher
 #define __eventdispatcher
 
@@ -7,36 +8,43 @@
 
 namespace otk {
 
-typedef std::map<unsigned int, OtkEventHandler *> OtkEventMap;
+typedef std::map<unsigned int, EventHandler *> EventMap;
 
-class OtkEventDispatcher {
+class EventDispatcher {
 public:
 
-  OtkEventDispatcher();
-  virtual ~OtkEventDispatcher();
+  EventDispatcher();
+  virtual ~EventDispatcher();
 
   virtual void clearAllHandlers(void);
-  virtual void registerHandler(Window id, OtkEventHandler *handler);
+  virtual void registerHandler(Window id, EventHandler *handler);
   virtual void clearHandler(Window id);
   virtual void dispatchEvents(void);
 
-  inline void setFallbackHandler(OtkEventHandler *fallback)
+  inline void setFallbackHandler(EventHandler *fallback)
   { _fallback = fallback; }
-  OtkEventHandler *getFallbackHandler(void) const { return _fallback; }
+  EventHandler *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(OtkEventHandler *master)
+  inline void setMasterHandler(EventHandler *master)
   { _master = master; }
-  OtkEventHandler *getMasterHandler(void) const { return _master; }
+  EventHandler *getMasterHandler(void) const { return _master; }
+
+  EventHandler *findHandler(Window win);
+
+  inline Time lastTime() const { return _lasttime; }
   
 private:
-  OtkEventMap _map;
-  OtkEventHandler *_fallback;
-  OtkEventHandler *_master;
+  EventMap _map;
+  EventHandler *_fallback;
+  EventHandler *_master;
 
   //! The time at which the last XEvent with a time was received
-  Time _lasttime; // XXX: store this! also provide an accessor!
+  Time _lasttime;
+
+  void dispatch(Window win, const XEvent &e);
+  void dispatchFocus(const XEvent &e);
 };
 
 }
This page took 0.025627 seconds and 4 git commands to generate.