]> Dogcows Code - chaz/openbox/blobdiff - otk/eventhandler.cc
add actions for key/mouse bindings etc
[chaz/openbox] / otk / eventhandler.cc
index 9d37bcff25204e2d911f2788307f4120017f1366..6539d58790d435afca95de406ba0cd2f33549c50 100644 (file)
@@ -1,19 +1,23 @@
+// -*- mode: C++; indent-tabs-mode: nil; c-basic-offset: 2; -*-
+
+#include "config.h"
+
+#include "display.hh"
 #include "eventhandler.hh"
-#include <iostream>
 
 namespace otk {
 
-OtkEventHandler::OtkEventHandler()
+EventHandler::EventHandler()
 {
 }
 
 
-OtkEventHandler::~OtkEventHandler()
+EventHandler::~EventHandler()
 {
 }
 
 
-void OtkEventHandler::handle(const XEvent &e)
+void EventHandler::handle(const XEvent &e)
 {
   switch(e.type){
   case KeyPress:
@@ -24,6 +28,8 @@ void OtkEventHandler::handle(const XEvent &e)
     return buttonPressHandler(e.xbutton);
   case ButtonRelease:
     return buttonReleaseHandler(e.xbutton);
+  case MotionNotify:
+    return motionHandler(e.xmotion);
   case EnterNotify:
     return enterHandler(e.xcrossing);
   case LeaveNotify:
@@ -78,7 +84,23 @@ void OtkEventHandler::handle(const XEvent &e)
     return selectionHandler(e.xselection);
   case SelectionRequest:
     return selectionRequestHandler(e.xselectionrequest);
-  };
+  default:
+#ifdef    SHAPE
+    if (e.type == display->shapeEventBase())
+      return shapeHandler((*(XShapeEvent*)&e));
+#endif // SHAPE
+#ifdef    XKB
+    if (e.type == display->xkbEventBase())
+      return xkbHandler((*(XkbEvent*)&e));
+#endif // XKB
+    ;
+  }
+}
+
+
+void EventHandler::clientMessageHandler(const XClientMessageEvent &)
+{
+  
 }
 
 }
This page took 0.022562 seconds and 4 git commands to generate.