upload tizen2.0 source
[framework/uifw/xorg/xcb/xcb-util.git] / src / event.c
similarity index 71%
rename from event/event.c
rename to src/event.c
index 7faac1c..de8899a 100644 (file)
 #include <string.h>
 
 #include "xcb_event.h"
-#include "../xcb-util-common.h"
 
-void
-xcb_event_handlers_init(xcb_connection_t *c, xcb_event_handlers_t *evenths)
-{
-    memset(evenths, 0, sizeof(xcb_event_handlers_t));
-    evenths->c = c;
-}
-
-xcb_connection_t *
-xcb_event_get_xcb_connection(xcb_event_handlers_t *evenths)
-{
-    return evenths->c;
-}
-
-static xcb_event_handler_t *
-get_event_handler(xcb_event_handlers_t *evenths, int event)
-{
-    assert(event < 256);
-    event &= XCB_EVENT_RESPONSE_TYPE_MASK;
-    assert(event >= 2);
-    return &evenths->event[event - 2];
-}
-
-static xcb_event_handler_t *
-get_error_handler(xcb_event_handlers_t *evenths, int error)
-{
-    assert(error >= 0 && error < 256);
-    return &evenths->error[error];
-}
-
-int
-xcb_event_handle(xcb_event_handlers_t *evenths, xcb_generic_event_t *event)
-{
-    xcb_event_handler_t *eventh = 0;
-    assert(event->response_type != 1);
-
-    if(event->response_type == 0)
-        eventh = get_error_handler(evenths, ((xcb_generic_error_t *) event)->error_code);
-    else
-        eventh = get_event_handler(evenths, event->response_type);
-
-    if(eventh->handler)
-        return eventh->handler(eventh->data, evenths->c, event);
-    return 0;
-}
-
-void
-xcb_event_wait_for_event_loop(xcb_event_handlers_t *evenths)
-{
-    xcb_generic_event_t *event;
-    while((event = xcb_wait_for_event(evenths->c)))
-    {
-        xcb_event_handle(evenths, event);
-        free(event);
-    }
-}
+#ifdef HAVE_SYS_TYPES_H
+# include <sys/types.h>
+#endif
 
-void
-xcb_event_poll_for_event_loop(xcb_event_handlers_t *evenths)
-{
-    xcb_generic_event_t *event;
-    while ((event = xcb_poll_for_event(evenths->c)))
-    {
-        xcb_event_handle(evenths, event);
-        free(event);
-    }
-}
-
-static void
-set_handler(xcb_generic_event_handler_t handler, void *data, xcb_event_handler_t *place)
-{
-    xcb_event_handler_t eventh = { handler, data };
-    *place = eventh;
-}
-
-void
-xcb_event_set_handler(xcb_event_handlers_t *evenths, int event, xcb_generic_event_handler_t handler, void *data)
-{
-    set_handler(handler, data, get_event_handler(evenths, event));
-}
-
-void
-xcb_event_set_error_handler(xcb_event_handlers_t *evenths, int error, xcb_generic_error_handler_t handler, void *data)
-{
-    set_handler((xcb_generic_event_handler_t) handler, data, get_error_handler(evenths, error));
-}
+#define ssizeof(foo)            (ssize_t)sizeof(foo)
+#define countof(foo)            (ssizeof(foo) / ssizeof(foo[0]))
 
 static const char *labelError[] =
 {