wglEventHandler.h
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018 #ifndef EQ_WGLEVENTHANDLER_H
00019 #define EQ_WGLEVENTHANDLER_H
00020
00021 #include <eq/client/eventHandler.h>
00022
00023 namespace eq
00024 {
00025 class WGLWindowIF;
00026
00034 class WGLEventHandler : public EventHandler
00035 {
00036 public:
00038 EQ_EXPORT WGLEventHandler( WGLWindowIF* window );
00039
00041 EQ_EXPORT virtual ~WGLEventHandler();
00042
00047 WNDPROC getPreviousWndProc() { return _prevWndProc; }
00048
00049 private:
00050 WGLWindowIF* _window;
00051 HWND _hWnd;
00052 WNDPROC _prevWndProc;
00053 uint32_t _buttonState;
00054
00055 union
00056 {
00057 char dummy[64];
00058 };
00059
00060 static LRESULT CALLBACK wndProc( HWND hWnd, UINT uMsg, WPARAM wParam,
00061 LPARAM lParam );
00062 LRESULT CALLBACK _wndProc( HWND hWnd, UINT uMsg, WPARAM wParam,
00063 LPARAM lParam );
00064
00065 void _syncButtonState( WPARAM wParam );
00066 uint32_t _getKey( LPARAM lParam, WPARAM wParam );
00067 };
00068 }
00069
00070 #endif // EQ_WGLEVENTHANDLER_H
00071