Announcement

Collapse
No announcement yet.

RRMouseTrap

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • RRMouseTrap

    NEW VERSION!
    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.
    /Start RideRunner
    /There are three commands and two indicators
    /COMMANDS:
    rrmousetrap_on
    rrmousetrap_off
    rrmousetrap_refresh
    /INDICATORS: T/F
    rrmousetrap
    rrmousetrap_active

    /The ini settings should be self explanatory.
    [SETTINGS]
    /This is obvious T/F
    Debug=False
    /Hook mouse on start of RR T/F
    Startup=True
    /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...
    MMouseDn=
    MMouseUp=MUTE
    RMouseDn=
    RMouseUp=BYIND;RRVoice_Listening;RRVCON<<RRVCOFF
    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=Vol+
    MouseWheelDn=Vol-

    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.
    Have Fun...
    ...JJG
    Attached Files

  • #2
    Updated!
    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.

    Comment


    • #3
      Very cool!

      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...
      Front End of Choice: Ride Runner (Is there anything else??? ) & Powered by the DFX5.1 Skin Available in the Mobile App Mart

      My Fiero Build Thread

      Comment


      • #4
        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...
        ...JJG

        Comment


        • #5
          Wow, Jebus, you're on a roll. I can't wait to try it out.

          Comment


          • #6
            Updated already, check first post...
            ...JJG

            Comment


            • #7
              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!

              Comment


              • #8
                Very good idea Jebus!

                Comment


                • #9
                  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.

                  Comment


                  • #10
                    kbreeden
                    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
                    Right Down
                    Right up
                    Left Down
                    Left Up
                    Middle Down
                    Middle Up
                    Mouse Wheel
                    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...
                    ...JJG

                    Comment


                    • #11
                      That sounds great, Jebus.

                      I should also report that I finally hooked everything to my carputer today and for some reason Mousetrap causes my touchscreen to become ineffective. I'll play with it more to see if I can give you some more information. I would be curious to know if anyone is successfully using this with a TS.

                      Comment


                      • #12
                        I had made a mousewheel "scroll" plugin in the past, but this seems like a better idea even.. you may want to make commands to execute when rotating the mousewheel UP and Down (separately, so you could use like VOL+ and VOL- for instance -- or anything else like scroll the lists).

                        The only other suggestion I'd have is an "option on/off" to check if RR is minimized and in that case let you use the mouse without sending commands to RR (i.e. you minimize RR and you can use the mouse normally if desired until you restore it).
                        Ride Runner RR's Myspace

                        "Being happy is not about having what you want, it's about wanting what you have."
                        "The best things in life are always free - but that doesn't mean money can't buy you good things."

                        Comment


                        • #13
                          I had made a mousewheel "scroll" plugin in the past, but this seems like a better idea even.. you may want to make commands to execute when rotating the mousewheel UP and Down (separately, so you could use like VOL+ and VOL- for instance -- or anything else like scroll the lists).

                          The only other suggestion I'd have is an "option on/off" to check if RR is minimized and in that case let you use the mouse without sending commands to RR (i.e. you minimize RR and you can use the mouse normally if desired until you restore it).
                          Done and Done...
                          ...JJG

                          Comment


                          • #14
                            A little bump,
                            I've been testing this newest version on both boxes, 2k and Xp.
                            It is functioning better than expected.
                            It integrates nicely with RideRunner.
                            Just leave LMouseDn, LMouseUp, and MouseMove blank in the RRMouseTrap.ini and RideRunner will function normally with the mouse when RRMouseTrap is running.
                            The reason being, is that Touch Screen Events are mouse events
                            The Touch Screen only hooks by default to Mouse Move and Left Button events,
                            Although you can change that in the touch screen software, or swap mouse buttons.
                            You can block out the mouse in RideRunner by putting commands in LMouseDn, LMouseUp, and MouseMove.
                            You can turn RRMouseTrap on and off from a skin.
                            You set which mouse buttons to use.
                            Using Down events match and cancel RR's on mouse down event
                            Using Up events do not cancel RR's on mouse down event
                            Scroll Wheel works for Middle Up, Middle Down, Scroll Up, and Scroll Down Events
                            Works on any skin or screen in RideRunner
                            Minimizing RideRunner gives back full mouse control
                            First click in RideRunner after restore switches control back to RRMouseTrap.

                            This, by far, is the easiest way to add external command input to RideRunner with an existing device...The Mouse....

                            After setting the ini I now have MouseWheel volume and mute, right click VR Attention, and normal Left Click Mouse in RideRunner...
                            With
                            Normal Desktop Mouse while RR is minimized...
                            Cheers...
                            ...JJG

                            Comment


                            • #15
                              This is working very well for me, Jebus. I've only found two issues so far, neither of which is significant. First, when I click "ShowRR Voice" the trigger function of the mouse becomes disabled. No big deal because I won't be using "ShowRR Voice" in the car. Second, there are some places where the trigger doesn't work, like on the Google Traffic map. That's no big deal, though, because it doesn't happen often and when it does it's just a matter of relocating the cursor somewhere off the map before hitting the trigger. This is a really nice plugin and makes setting up a trigger mechanism for RRVoice really cheap and easy.

                              Comment

                              Working...
                              X