
#ifndef PLATFORM_UNIX_X11_WINDOW_EVENT_HANDLER_H
#define PLATFORM_UNIX_X11_WINDOW_EVENT_HANDLER_H

#include <X11/Xutil.h>
#include <X11/Xlib.h>

namespace sp {

class X11Display;

class X11WindowEventHandler
{
public:

	static void registerHandler(::Display* disp, ::Window window, X11Display *ptr);

	static void unregisterHandler(::Display* disp, ::Window window);

	static void process(::Display* disp, const ::XEvent& event);

protected :

	static ::XContext win_context;
};

} // namespace sp

#endif /* PLATFORM_UNIX_WINDOW_EVENT_HANDLER_H */
