I have five mouse buttons, as i can see in irrlicht i have access to
three of them.
Is this planed in future releases of irrlicht to add two more.
Five Mouse Buttons
I'm pretty sure the diffs would look something like this for windows. Of course the patch isn't very useful unless it behaves the same on all platforms...
Code: Select all
==================== IEventReceiver.h
45a46,51
> //! X button 1 was pressed down.
> EMIE_XBUTTON1_PRESSED_DOWN,
>
> //! X button 2 was pressed down.
> EMIE_XBUTTON2_PRESSED_DOWN,
>
54a61,66
> //! X button 1 was left up.
> EMIE_XBUTTON1_LEFT_UP,
>
> //! X button 2 was left up.
> EMIE_XBUTTON2_LEFT_UP,
>
===================== CIrrDeviceWin32.cpp
71d70
<
182a182,227
> #if (_WIN32_WINNT >= 0x0500)
> case WM_XBUTTONDOWN:
> event.EventType = irr::EET_MOUSE_INPUT_EVENT;
> event.MouseInput.X = LOWORD(lParam);
> event.MouseInput.Y = HIWORD(lParam);
>
> switch(GET_XBUTTON_WPARAM(wParam))
> {
> case XBUTTON1:
> event.MouseInput.Event = irr::EMIE_XBUTTON1_PRESSED_DOWN;
> break;
> case XBUTTON2:
> event.MouseInput.Event = irr::EMIE_XBUTTON2_PRESSED_DOWN;
> break;
> default:
> return FALSE;
> }
>
> dev = getDeviceFromHWnd(hWnd);
> if (dev)
> dev->postEventFromUser(event);
> return TRUE;
>
> case WM_XBUTTONUP:
> event.EventType = irr::EET_MOUSE_INPUT_EVENT;
> event.MouseInput.X = LOWORD(lParam);
> event.MouseInput.Y = HIWORD(lParam);
>
> switch(GET_XBUTTON_WPARAM(wParam))
> {
> case XBUTTON1:
> event.MouseInput.Event = irr::EMIE_XBUTTON1_LEFT_UP;
> break;
> case XBUTTON2:
> event.MouseInput.Event = irr::EMIE_XBUTTON2_LEFT_UP;
> break;
> default:
> return FALSE;
> }
>
> dev = getDeviceFromHWnd(hWnd);
> if (dev)
> dev->postEventFromUser(event);
> return TRUE;
> #endif
>