As seen in this thread, I have patched "my" Irrlicht to be able to use double click.
I want to complete my double click changes and post it on the SVN.
Can anyone guide me a little on how to go about this?
CuteAlien" wrote:
The part with "case WM_LBUTTONDOWN" does no longer exist in the engine, that stuff was rewritten in current trunk. So have to see how that must be added in current Irrlicht.
BTW, I noticed the changes to the CIrrDevice classes. The mouse events have been changed. I can easily incorporate it into those changes. It looks much nicer now how those events are handled (referring to the Windows version at least).
I have already downloaded the latest version from the SVN.
So do I start from there? Should I edit those files?
And how does it work?
Do I just change the file by deleting anything no longer needed, and adding what is needed?
Or do I need to put tags in there to indicate the changes?
And then how do I upload it for checking?
I wanted to add extra mouse buttons, but I noticed it's already done. Well, it's done for 2 extra mouse buttons in Windows only.
Doesn't Linux and Mac have possibility of more mouse buttons? Or we just don't know yet?
Also, isn't Windows capable of having more than 2 extra mouse buttons? I thought it had up to 5 more! It's not documented in the API but I thought there were Mice with more than 5 buttons.
I figured that you just need to keep doubling the value of the extra mouse button e.g. EMBSM_EXTRA2 = 0x10, so EMBSM_EXTRA3 = 0x20. But I haven't been able to test it yet until I get a Mouse with all those buttons!
**EDIT**
Just thought about something. You guys were sort of arguing on the side of using operating system parameters etc..
But the appropriate changes haven't been made yet.
WM_LBUTTONDBLCLK (and the other 2) hasn't been added to:
Code: Select all
static messageMap mouseMap[] =
{
{0, WM_LBUTTONDOWN, irr::EMIE_LMOUSE_PRESSED_DOWN},
{1, WM_LBUTTONUP, irr::EMIE_LMOUSE_LEFT_UP},
{0, WM_RBUTTONDOWN, irr::EMIE_RMOUSE_PRESSED_DOWN},
{1, WM_RBUTTONUP, irr::EMIE_RMOUSE_LEFT_UP},
{0, WM_MBUTTONDOWN, irr::EMIE_MMOUSE_PRESSED_DOWN},
{1, WM_MBUTTONUP, irr::EMIE_MMOUSE_LEFT_UP},
{2, WM_MOUSEMOVE, irr::EMIE_MOUSE_MOVED},
{3, WM_MOUSEWHEEL, irr::EMIE_MOUSE_WHEEL},
{-1, 0, 0}
};
Also, the Extra Mouse Buttons are not there either.
No point having them if they're not used is there? We'll all have to implement it ourselves.
bitplane wrote:
Also people expect their double-click speeds to be the same as their operating system, any deviation from this makes it feel awkward
I'm still wondering what people want in this case?
Same for allowable mouse movement for double click?
And do we want a triple click or just double click?
Cause I'll do it!
Best as I can anyway.