This Version only captures the RideRunner Window
Leaving the desktop alone!
/RRMouseTrap Version 1.5 Beta
/This is a mouse capture utility for RideRunner.
/This means it captures the mouse events in RideRunner and translates them to RR commands.
/Sends RR Commands on each event.
/Middle button works best for VR Attention with RRVoice.
/It can be translated in RRMouseTrap.ini to any RR command for other uses.
/Unregister your existing RRMouseTrap.dll if present...unregister.bat
/Copy all files in zip to RRPLUGINSPATH\RRMouseTrap\
/Run the register.bat file.
/There are three commands and two indicators
/The ini settings should be self explanatory.
/This is obvious T/F
/Hook mouse on start of RR T/F
/Mouse Events to capture,
/Don't put a command in either LMouseUp/Dn event and it will function normally in RideRunner
/Middle and Right Buttons are rarely used in RideRunner.
/Use these two first, So you won't be clicking something when you enable VR....
/They will accept any RR Command, such as Mute, Play, Pause, ect...
/Leave them blank if not using...
LMouseDn= ###Leave empty to allow Left Mouse Button in RideRunner###
LMouseUp= ###Leave empty to allow Left Mouse Button in RideRunner###
MouseMove= ######## Use caution with this one, Best to leave Empty #######
MouseWheelUp/Dn (MouseWheelScrollUp/Dn) can be volume control and MMiddleUp/Dn (MouseWheelUp/Dn) can be MUTE
There are no pics, it uses no timers. It is completly hidden.
Tested on Win2k and XP Home
Report any bugs please.
Added more mouse events...
Better handling of all events...
Added RRMouseTrap_Refresh for after an ini value change.
Complete New Version! 1.5
Now only captures mouse in RideRunner
The mouse functions normally on the desktop.
This will make it real easy to take a el'cheapo mouse and use it to trigger the voice recognition to listen.
You could use any old mouse as is, or one could easily take apart a cheap mouse, and solder to wires to the contacts for either the center or right mouse buttons. Then extend that wire to anywhere they want to hook them to a momentary switch.
Dang I was gonna grab that second post slot, You are fast John...
Yes, Taking apart a mouse would be good, as you will not be moving the mouse around the screen then, just hitting buttons when needed.
The reason I say this is that the dll is hooking into the low level mouse api. All mouse events are looked at. So, moving the mouse around on the screen causes some extra CPU "moments", as you will see. Not very much but enough on slower processors to be noticed. Thats why you can turn it off and on again...
Wow, Jebus, you're on a roll. I can't wait to try it out.
Updated already, check first post...
Jebus, this is fantastic! It sends the signal every time. I have seen no issues with CPU change when the mouse moves around. And the left and right mouse buttons seem to be disabled so clicking them, accidentally or otherwise, has no impact on RR.
This will make it so much easier for people who want to use RRVoice. As John said, you can get any old crappy mouse, lay it on the console or in your lap and clickety-click away. And with a bluetooth mouse, there are no additional wires to mess with. And the name is great too!
It's not really a bug because it doesn't appear to affect anything, but if you set the ini to Startup=False, RRMousetrap will throw the following error upon closing down RR:
"RunTime error 91 Object variable or With block variable not set"
So it looks like some portion of MT is loading with RR even if the ini is set to false and whatever it is doesn't like RR being closed down. I don't get any error messages when closing down RR if Startup=true.
As I said, this doesn't appear to have any negative impact; it's just a bit of a nuisance.
No, It's a bug...
Can't kill an object if it's not created...
It will be fixed, and I have a completely new version I'm testing now.
More robust to handle all possible scenarios...
Also you will have
I'm working on the direction of wheel movement, Up/Dn right now.
Each one of these will send an RR Command...
And I've managed to trap the mouse so well, that I need to pass thru the left button and mouse move events to allow the touch screen to function as required...It's getting there...